Files
AC707N/SDK/apps/watch/log_config/lib_net_config.c
T
huxi dc11ee3fc4 1、添加virfat备份与恢复;
2、修复sensorhub低功耗越界问题;
3、修复rcsp传输相关问题;
4、更新flash_params_v3.bin;
5、修复摄像头、科大讯飞相关问题;
2025-12-26 15:26:30 +08:00

351 lines
7.0 KiB
C

#ifdef SUPPORT_MS_EXTENSIONS
#pragma bss_seg(".lib_net_config.data.bss")
#pragma data_seg(".lib_net_config.data")
#pragma const_seg(".lib_net_config.text.const")
#pragma code_seg(".lib_net_config.text")
#endif
#include "app_config.h"
//================================================//
// lwip btnet 支持
//================================================//
#if USER_SUPPORT_PROFILE_PAN
const int CONFIG_LWIP_NET_ENABLE = 1;
/*
* @brief 以下接口为各网络模块动态内存申请
以帮助划分内存消耗和相关内存策略
在各对应库内均有相关弱函数实现
* @note
set 1-----use psram mem
set 0-----use ram mem
*/
/*注意:libmpeg、net_audio、net_down的分配介质需保持一致*/
#define JL_LWIP_USE_PSRAM 0 //lwip使用psram
#define JL_HTTP_USE_PSRAM 0 //http使用psram
#define JL_HTTPS_USE_PSRAM 0 //https使用psram
#define JL_NET_AUDIO_USE_PSRAM 0 //net_audio使用psram
#define JL_MBEDTLS_USE_PSRAM 0 //mbedtls库使用psram
#define JL_WEBSOCKET_USE_PSRAM 0 //websocket使用psram
#define JL_MPEG_USE_PSRAM 0 //libmpeg使用psram
#define JL_NET_DOWN_USE_PSRAM 0 //net_download使用psram
#if JL_LWIP_USE_PSRAM
#define LWIP_ALLOC(size) malloc_psram(size)
#define LWIP_FREE(ptr) free_psram(ptr)
#else
#define LWIP_ALLOC(size) malloc(size)
#define LWIP_FREE(ptr) free(ptr)
#endif
void *lwip_malloc(size_t size)
{
return LWIP_ALLOC(size);
}
void *lwip_calloc(size_t count, size_t size)
{
size_t total_size = count * size;
void *p = LWIP_ALLOC(total_size);
if (p) {
memset(p, 0, total_size);
}
return p;
}
void lwip_free(void *pv)
{
if (pv != NULL) {
LWIP_FREE(pv);
}
}
#if JL_HTTP_USE_PSRAM
#define HTTP_MALLOC(size) malloc_psram(size)
#define HTTP_REALLOC(ptr,size) realloc_psram(ptr,size)
#define HTTP_FREE(ptr) free_psram(ptr)
#else
#define HTTP_MALLOC(size) malloc(size)
#define HTTP_REALLOC(ptr,size) realloc(ptr,size)
#define HTTP_FREE(ptr) free(ptr)
#endif
void *jl_http_malloc(size_t size)
{
return HTTP_MALLOC(size);
}
void *jl_http_realloc(void *ptr, size_t size)
{
return HTTP_REALLOC(ptr, size);
}
void jl_http_free(void *pv)
{
if (pv != NULL) {
HTTP_FREE(pv);
}
}
#if JL_HTTPS_USE_PSRAM
#define HTTPS_ALLOC(size) malloc_psram(size)
#define HTTPS_FREE(ptr) free_psram(ptr)
#else
#define HTTPS_ALLOC(size) malloc(size)
#define HTTPS_FREE(ptr) free(ptr)
#endif
void *jl_https_malloc(size_t size)
{
return HTTPS_ALLOC(size);
}
void *jl_https_calloc(unsigned long count, unsigned long size)
{
size_t total_size = count * size;
void *p = HTTPS_ALLOC(total_size);
if (p) {
memset(p, 0, count * size);
}
return p;
}
void jl_https_free(void *pv)
{
if (pv != NULL) {
HTTPS_FREE(pv);
}
}
#if JL_NET_AUDIO_USE_PSRAM
#define NET_AUDIO_ALLOC(size) malloc_psram(size)
#define NET_AUDIO_FREE(ptr) free_psram(ptr)
#else
#define NET_AUDIO_ALLOC(size) malloc(size)
#define NET_AUDIO_FREE(ptr) free(ptr)
#endif
void *jl_net_audio_malloc(size_t size)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
void *p = NET_AUDIO_ALLOC(size);
return p;
}
void jl_net_audio_free(void *pv)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
if (pv != NULL) {
NET_AUDIO_FREE(pv);
}
}
void *jl_net_audio_calloc(unsigned long count, unsigned long size)
{
printf(">>>zwz info: %s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
size_t total = count * size;
void *p = NET_AUDIO_ALLOC(total);
if (p) {
memset(p, 0, total);
}
return p;
}
#if JL_MBEDTLS_USE_PSRAM
#define MBEDTLS_MALLOC(size) malloc_psram(size)
#define MBEDTLS_FREE(ptr) free_psram(ptr)
#else
#define MBEDTLS_MALLOC(size) malloc(size)
#define MBEDTLS_FREE(ptr) free(ptr)
#endif
void jl_mbedtls_free(void *pv)
{
if (pv != NULL) {
MBEDTLS_FREE(pv);
}
}
void *jl_mbedtls_calloc(unsigned long count, unsigned long size)
{
size_t total = count * size;
void *p = MBEDTLS_MALLOC(total);
if (p) {
memset(p, 0, total);
}
return p;
}
#if JL_WEBSOCKET_USE_PSRAM
#define WEBSOCKET_API_MALLOC(size) malloc_psram(size)
#define WEBSOCKET_API_REALLOC(ptr,size) realloc_psram(ptr,size)
#define WEBSOCKET_API_FREE(ptr) free_psram(ptr)
#else
#define WEBSOCKET_API_MALLOC(size) malloc(size)
#define WEBSOCKET_API_REALLOC(ptr,size) realloc(ptr,size)
#define WEBSOCKET_API_FREE(ptr) free(ptr)
#endif
void jl_websocket_api_free(void *pv)
{
if (pv != NULL) {
WEBSOCKET_API_FREE(pv);
}
}
void *jl_websocket_api_malloc(size_t size)
{
void *p = WEBSOCKET_API_MALLOC(size);
if (p) {
memset(p, 0, size);
}
return p;
}
void *jl_websocket_api_zalloc(size_t size)
{
void *ptr = WEBSOCKET_API_MALLOC(size);
if (ptr) {
memset(ptr, 0, size);
}
return ptr;
}
void *jl_websocket_api_realloc(void *ptr, size_t size)
{
return WEBSOCKET_API_REALLOC(ptr, size);
}
#if JL_MPEG_USE_PSRAM
#define MPEG_API_MALLOC(size) malloc_psram(size)
#define MPEG_API_REALLOC(ptr,size) realloc_psram(ptr,size)
#define MPEG_API_FREE(ptr) free_psram(ptr)
#else
#define MPEG_API_MALLOC(size) malloc(size)
#define MPEG_API_REALLOC(ptr,size) realloc(ptr,size)
#define MPEG_API_FREE(ptr) free(ptr)
#endif
void jl_mpeg_free(void *pv)
{
if (pv != NULL) {
MPEG_API_FREE(pv);
}
}
void *jl_mpeg_malloc(size_t size)
{
return MPEG_API_MALLOC(size);
}
void *jl_mpeg_calloc(unsigned long count, unsigned long size)
{
size_t total = count * size;
void *p = MPEG_API_MALLOC(total);
if (p) {
memset(p, 0, total);
}
return p;
}
void *jl_mpeg_realloc(void *ptr, size_t size)
{
return MPEG_API_REALLOC(ptr, size);
}
void *jl_mpeg_zalloc(size_t size)
{
void *ptr = MPEG_API_MALLOC(size);
if (ptr != NULL) {
memset(ptr, 0, size);
}
return ptr;
}
#if JL_NET_DOWN_USE_PSRAM
#define NET_DOWN_MALLOC(size) malloc_psram(size)
#define NET_DOWN_REALLOC(ptr,size) realloc_psram(ptr,size)
#define NET_DOWN_FREE(ptr) free_psram(ptr)
#else
#define NET_DOWN_MALLOC(size) malloc(size)
#define NET_DOWN_REALLOC(ptr,size) realloc(ptr,size)
#define NET_DOWN_FREE(ptr) free(ptr)
#endif
void *jl_net_down_malloc(size_t size)
{
return NET_DOWN_MALLOC(size);
}
void *jl_net_down_calloc(unsigned long count, unsigned long size)
{
size_t total_size = count * size;
void *p = NET_DOWN_MALLOC(total_size);
if (p) {
memset(p, 0, count * size);
}
return p;
}
void *jl_net_down_zalloc(size_t size)
{
void *ptr = NET_DOWN_MALLOC(size);
if (ptr) {
memset(ptr, 0, size);
}
return ptr;
}
void *jl_net_down_realloc(void *ptr, size_t size)
{
return NET_DOWN_REALLOC(ptr, size);
}
void jl_net_down_free(void *pv)
{
if (pv != NULL) {
NET_DOWN_FREE(pv);
}
}
#else
const int CONFIG_LWIP_NET_ENABLE = 0;
#endif