- correct faulty pcm chunk allocation if SPIRAM is enabled
Signed-off-by: Karl Osterseher <karli_o@gmx.at>
This commit is contained in:
@@ -253,7 +253,7 @@ int init_player(void) {
|
||||
currentSnapcastSetting.buf_ms = 1000;
|
||||
currentSnapcastSetting.chkDur_ms = 20;
|
||||
currentSnapcastSetting.codec = NONE;
|
||||
currentSnapcastSetting.sr = 44100;
|
||||
currentSnapcastSetting.sr = 48000;
|
||||
currentSnapcastSetting.ch = 2;
|
||||
currentSnapcastSetting.bits = 16;
|
||||
currentSnapcastSetting.muted = false;
|
||||
@@ -712,14 +712,35 @@ int32_t allocate_pcm_chunk_memory_caps(pcm_chunk_message_t *pcmChunk,
|
||||
// first we try to allocated 32 bit aligned memory for payload
|
||||
// check available memory first so we can decide if we need to fragment the
|
||||
// data
|
||||
freeMem = heap_caps_get_free_size(caps);
|
||||
largestFreeBlock = heap_caps_get_largest_free_block(caps);
|
||||
if ((freeMem >= bytes) && (largestFreeBlock >= bytes)) {
|
||||
// ESP_LOGI(TAG, "32b f %d b %d", freeMem, largestFreeBlock);
|
||||
if (caps != 0) {
|
||||
freeMem = heap_caps_get_free_size(caps);
|
||||
largestFreeBlock = heap_caps_get_largest_free_block(caps);
|
||||
if ((freeMem >= bytes) && (largestFreeBlock >= bytes)) {
|
||||
// ESP_LOGI(TAG, "32b f %d b %d", freeMem, largestFreeBlock);
|
||||
|
||||
pcmChunk->fragment->payload = (char *)heap_caps_malloc(bytes, caps);
|
||||
pcmChunk->fragment->payload = (char *)heap_caps_malloc(bytes, caps);
|
||||
if (pcmChunk->fragment->payload == NULL) {
|
||||
ESP_LOGE(
|
||||
TAG,
|
||||
"Failed to heap_caps_malloc(%d, %d) memory for pcm chunk payload",
|
||||
bytes, caps);
|
||||
|
||||
ret = -2;
|
||||
} else {
|
||||
pcmChunk->totalSize = bytes;
|
||||
pcmChunk->fragment->nextFragment = NULL;
|
||||
pcmChunk->fragment->size = bytes;
|
||||
|
||||
ret = 0;
|
||||
}
|
||||
} else {
|
||||
// ESP_LOGE (TAG, "couldn't get memory to insert chunk of size %d, IRAM
|
||||
// freemem: %d blocksize %d", bytes, freeMem, largestFreeBlock);
|
||||
}
|
||||
} else {
|
||||
pcmChunk->fragment->payload = (char *)malloc(bytes);
|
||||
if (pcmChunk->fragment->payload == NULL) {
|
||||
ESP_LOGE(TAG, "Failed to allocate IRAM memory for pcm chunk payload");
|
||||
ESP_LOGE(TAG, "Failed to malloc memory for pcm chunk payload");
|
||||
|
||||
ret = -2;
|
||||
} else {
|
||||
@@ -729,9 +750,6 @@ int32_t allocate_pcm_chunk_memory_caps(pcm_chunk_message_t *pcmChunk,
|
||||
|
||||
ret = 0;
|
||||
}
|
||||
} else {
|
||||
// ESP_LOGE (TAG, "couldn't get memory to insert chunk of size %d, IRAM
|
||||
// freemem: %d blocksize %d", bytes, freeMem, largestFreeBlock);
|
||||
}
|
||||
|
||||
return ret;
|
||||
@@ -850,44 +868,52 @@ int32_t allocate_pcm_chunk_memory(pcm_chunk_message_t **pcmChunk,
|
||||
return -2;
|
||||
}
|
||||
|
||||
//#if CONFIG_SPIRAM && CONFIG_SPIRAM_BOOT_INIT
|
||||
// (*pcmChunk)->fragment->payload =
|
||||
// (char *)heap_caps_malloc(bytes, MALLOC_CAP_8BIT | MALLOC_CAP_SPIRAM);
|
||||
// if ((*pcmChunk)->fragment->payload == NULL) {
|
||||
// // size_t largestFreeBlock, freeMem;
|
||||
// // ESP_LOGE (TAG, "Failed to allocate memory for pcm chunk fragment
|
||||
// // payload"); free_pcm_chunk (pcmChunk);
|
||||
// // freeMem = heap_caps_get_free_size (MALLOC_CAP_8BIT |
|
||||
// MALLOC_CAP_SPIRAM);
|
||||
//
|
||||
// ret = -2;
|
||||
// } else {
|
||||
// (*pcmChunk)->fragment->nextFragment = NULL;
|
||||
// (*pcmChunk)->fragment->size = bytes;
|
||||
//
|
||||
// ret = 0;
|
||||
// }
|
||||
//#elif CONFIG_SPIRAM
|
||||
// (*pcmChunk)->fragment->payload = (char *)malloc(bytes);
|
||||
// if ((*pcmChunk)->fragment->payload == NULL) {
|
||||
// // size_t largestFreeBlock, freeMem;
|
||||
// // ESP_LOGE (TAG, "Failed to allocate memory for pcm chunk fragment
|
||||
// // payload"); free_pcm_chunk (pcmChunk);
|
||||
// // freeMem = heap_caps_get_free_size (MALLOC_CAP_8BIT |
|
||||
// MALLOC_CAP_SPIRAM);
|
||||
//
|
||||
// ret = -2;
|
||||
// } else {
|
||||
// (*pcmChunk)->fragment->nextFragment = NULL;
|
||||
// (*pcmChunk)->fragment->size = bytes;
|
||||
//
|
||||
// ret = 0;
|
||||
// }
|
||||
//#else
|
||||
#if CONFIG_SPIRAM && CONFIG_SPIRAM_BOOT_INIT
|
||||
(*pcmChunk)->fragment->payload =
|
||||
(char *)heap_caps_malloc(bytes, MALLOC_CAP_8BIT | MALLOC_CAP_SPIRAM);
|
||||
if ((*pcmChunk)->fragment->payload == NULL) {
|
||||
// size_t largestFreeBlock, freeMem;
|
||||
// ESP_LOGE (TAG, "Failed to allocate memory for pcm chunk fragment
|
||||
// payload"); free_pcm_chunk (pcmChunk);
|
||||
// freeMem = heap_caps_get_free_size (MALLOC_CAP_8BIT | MALLOC_CAP_SPIRAM);
|
||||
|
||||
ret = -2;
|
||||
} else {
|
||||
(*pcmChunk)->fragment->nextFragment = NULL;
|
||||
(*pcmChunk)->fragment->size = bytes;
|
||||
|
||||
ret = 0;
|
||||
}
|
||||
ret = allocate_pcm_chunk_memory_caps(*pcmChunk, bytes,
|
||||
MALLOC_CAP_8BIT | MALLOC_CAP_SPIRAM);
|
||||
#elif CONFIG_SPIRAM
|
||||
(*pcmChunk)->fragment->payload = (char *)malloc(bytes);
|
||||
if ((*pcmChunk)->fragment->payload == NULL) {
|
||||
// size_t largestFreeBlock, freeMem;
|
||||
// ESP_LOGE (TAG, "Failed to allocate memory for pcm chunk fragment
|
||||
// payload"); free_pcm_chunk (pcmChunk);
|
||||
// freeMem = heap_caps_get_free_size (MALLOC_CAP_8BIT | MALLOC_CAP_SPIRAM);
|
||||
|
||||
ret = -2;
|
||||
} else {
|
||||
(*pcmChunk)->fragment->nextFragment = NULL;
|
||||
(*pcmChunk)->fragment->size = bytes;
|
||||
|
||||
ret = 0;
|
||||
}
|
||||
ret = allocate_pcm_chunk_memory_caps(*pcmChunk, bytes, 0);
|
||||
#else
|
||||
ret = allocate_pcm_chunk_memory_caps(*pcmChunk, bytes,
|
||||
MALLOC_CAP_32BIT | MALLOC_CAP_EXEC);
|
||||
if (ret < 0) {
|
||||
ret = allocate_pcm_chunk_memory_caps(*pcmChunk, bytes, MALLOC_CAP_8BIT);
|
||||
if (ret < 0) {
|
||||
// ret = allocate_pcm_chunk_memory_caps_fragmented
|
||||
// ret = allocate_pcm_chunk_memory_caps_fragmented
|
||||
//(*pcmChunk, bytes, MALLOC_CAP_32BIT | MALLOC_CAP_EXEC);
|
||||
if (ret < 0) {
|
||||
// allocate_pcm_chunk_memory_caps_fragmented (*pcmChunk, bytes,
|
||||
@@ -897,6 +923,8 @@ int32_t allocate_pcm_chunk_memory(pcm_chunk_message_t **pcmChunk,
|
||||
}
|
||||
#endif
|
||||
|
||||
//#endif
|
||||
|
||||
if (ret < 0) {
|
||||
ESP_LOGE(TAG, "couldn't get memory to insert chunk");
|
||||
|
||||
@@ -1020,26 +1048,26 @@ static void player_task(void *pvParameters) {
|
||||
// so next chunk we get from queue will be -20ms
|
||||
outputBufferDacTime = chkDur_us * CHNK_CTRL_CNT;
|
||||
|
||||
if ((scSet.sr != __scSet.sr) || (scSet.bits != __scSet.bits) ||
|
||||
(scSet.ch != __scSet.ch)) {
|
||||
i2s_custom_stop(I2S_NUM_0);
|
||||
if ((__scSet.buf_ms > 0) && (__scSet.chkDur_ms > 0)) {
|
||||
if ((scSet.sr != __scSet.sr) || (scSet.bits != __scSet.bits) ||
|
||||
(scSet.ch != __scSet.ch)) {
|
||||
i2s_custom_stop(I2S_NUM_0);
|
||||
|
||||
ret = player_setup_i2s(I2S_NUM_0, ¤tSnapcastSetting);
|
||||
if (ret < 0) {
|
||||
ESP_LOGE(TAG, "player_setup_i2s failed: %d", ret);
|
||||
ret = player_setup_i2s(I2S_NUM_0, ¤tSnapcastSetting);
|
||||
if (ret < 0) {
|
||||
ESP_LOGE(TAG, "player_setup_i2s failed: %d", ret);
|
||||
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
// force adjust_apll() to set playback speed
|
||||
currentDir = 1;
|
||||
adjust_apll(0);
|
||||
|
||||
i2s_custom_set_clk(I2S_NUM_0, __scSet.sr, __scSet.bits, __scSet.ch);
|
||||
initialSync = 0;
|
||||
}
|
||||
|
||||
// force adjust_apll() to set playback speed
|
||||
currentDir = 1;
|
||||
adjust_apll(0);
|
||||
|
||||
i2s_custom_set_clk(I2S_NUM_0, __scSet.sr, __scSet.bits, __scSet.ch);
|
||||
initialSync = 0;
|
||||
}
|
||||
|
||||
if ((__scSet.buf_ms > 0) && (__scSet.chkDur_ms > 0)) {
|
||||
if ((__scSet.buf_ms != scSet.buf_ms) ||
|
||||
(__scSet.chkDur_ms != scSet.chkDur_ms)) {
|
||||
if (pcmChkQHdl != NULL) {
|
||||
|
||||
71
main/main.c
71
main/main.c
@@ -309,8 +309,8 @@ static FLAC__StreamDecoderWriteStatus write_callback(
|
||||
// flacData->outData = (char *)malloc (flacData->bytes);
|
||||
ret = allocate_pcm_chunk_memory(&(flacData->outData), flacData->bytes);
|
||||
|
||||
// ESP_LOGI (TAG, "mem %p %p %d", flacData->outData,
|
||||
// flacData->outData->fragment->payload, flacData->bytes);
|
||||
// ESP_LOGI (TAG, "mem %p %p %d", flacData->outData,
|
||||
// flacData->outData->fragment->payload, flacData->bytes);
|
||||
|
||||
if (ret == 0) {
|
||||
pcm_chunk_fragment_t *fragment = flacData->outData->fragment;
|
||||
@@ -1394,6 +1394,12 @@ static void http_get_task(void *pvParameters) {
|
||||
|
||||
size_t decodedSize =
|
||||
pcmData->totalSize; // pFlacData->bytes;
|
||||
|
||||
// ESP_LOGE(TAG,
|
||||
// "decoded size:
|
||||
// %d",
|
||||
// decodedSize);
|
||||
|
||||
scSet.chkDur_ms =
|
||||
(1000UL * decodedSize) /
|
||||
(uint32_t)(scSet.ch * (scSet.bits / 8)) /
|
||||
@@ -1415,18 +1421,21 @@ static void http_get_task(void *pvParameters) {
|
||||
|
||||
#if CONFIG_USE_DSP_PROCESSOR
|
||||
if (flow_drain_counter > 0) {
|
||||
flow_drain_counter--;
|
||||
double dynamic_vol = ((double)scSet.volume/100 / (20 - flow_drain_counter));
|
||||
if (flow_drain_counter == 0) {
|
||||
flow_drain_counter--;
|
||||
double dynamic_vol =
|
||||
((double)scSet.volume / 100 /
|
||||
(20 - flow_drain_counter));
|
||||
if (flow_drain_counter == 0) {
|
||||
#if SNAPCAST_USE_SOFT_VOL
|
||||
dynamic_vol = 0;
|
||||
dynamic_vol = 0;
|
||||
#else
|
||||
dynamic_vol = 1;
|
||||
dynamic_vol = 1;
|
||||
#endif
|
||||
audio_hal_set_mute(board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
}
|
||||
dsp_set_vol(dynamic_vol);
|
||||
audio_hal_set_mute(
|
||||
board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
}
|
||||
dsp_set_vol(dynamic_vol);
|
||||
}
|
||||
dsp_setup_flow(500, scSet.sr, scSet.chkDur_ms);
|
||||
dsp_processor(pcmData->fragment->payload,
|
||||
@@ -1466,20 +1475,23 @@ static void http_get_task(void *pvParameters) {
|
||||
}
|
||||
|
||||
#if CONFIG_USE_DSP_PROCESSOR
|
||||
if (flow_drain_counter > 0) {
|
||||
flow_drain_counter--;
|
||||
double dynamic_vol = ((double)scSet.volume/100 / (20 - flow_drain_counter));
|
||||
if (flow_drain_counter == 0) {
|
||||
if (flow_drain_counter > 0) {
|
||||
flow_drain_counter--;
|
||||
double dynamic_vol =
|
||||
((double)scSet.volume / 100 /
|
||||
(20 - flow_drain_counter));
|
||||
if (flow_drain_counter == 0) {
|
||||
#if SNAPCAST_USE_SOFT_VOL
|
||||
dynamic_vol = 0;
|
||||
dynamic_vol = 0;
|
||||
#else
|
||||
dynamic_vol = 1;
|
||||
dynamic_vol = 1;
|
||||
#endif
|
||||
audio_hal_set_mute(board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
}
|
||||
dsp_set_vol(dynamic_vol);
|
||||
audio_hal_set_mute(
|
||||
board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
}
|
||||
dsp_set_vol(dynamic_vol);
|
||||
}
|
||||
dsp_setup_flow(500, scSet.sr, scSet.chkDur_ms);
|
||||
dsp_processor(pcmData->fragment->payload,
|
||||
pcmData->fragment->size, dspFlow);
|
||||
@@ -2022,15 +2034,15 @@ static void http_get_task(void *pvParameters) {
|
||||
#if CONFIG_USE_DSP_PROCESSOR
|
||||
if (server_settings_message.muted) {
|
||||
flow_drain_counter = 20;
|
||||
}
|
||||
else {
|
||||
flow_drain_counter = 0;
|
||||
audio_hal_set_mute(board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
} else {
|
||||
flow_drain_counter = 0;
|
||||
audio_hal_set_mute(board_handle->audio_hal,
|
||||
server_settings_message.muted);
|
||||
#if SNAPCAST_USE_SOFT_VOL
|
||||
dsp_set_vol((double)server_settings_message.volume/100);
|
||||
dsp_set_vol((double)server_settings_message.volume /
|
||||
100);
|
||||
#else
|
||||
dsp_set_vol(1.0);
|
||||
dsp_set_vol(1.0);
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
@@ -2040,7 +2052,8 @@ static void http_get_task(void *pvParameters) {
|
||||
}
|
||||
if (scSet.volume != server_settings_message.volume) {
|
||||
#if SNAPCAST_USE_SOFT_VOL
|
||||
dsp_set_vol((double)server_settings_message.volume/100);
|
||||
dsp_set_vol((double)server_settings_message.volume /
|
||||
100);
|
||||
#else
|
||||
audio_hal_set_volume(board_handle->audio_hal,
|
||||
server_settings_message.volume);
|
||||
|
||||
78
sdkconfig
78
sdkconfig
@@ -143,6 +143,7 @@ CONFIG_ESP_LYRAT_V4_3_BOARD=y
|
||||
#
|
||||
# ESP32 audio buffer and I2S config
|
||||
#
|
||||
CONFIG_USE_PSRAM=y
|
||||
# CONFIG_USE_DSP_PROCESSOR is not set
|
||||
CONFIG_USE_BIQUAD_ASM=y
|
||||
# end of ESP32 audio buffer and I2S config
|
||||
@@ -333,6 +334,7 @@ CONFIG_ESP_TLS_USING_MBEDTLS=y
|
||||
#
|
||||
# ESP32-specific
|
||||
#
|
||||
CONFIG_ESP32_ECO3_CACHE_LOCK_FIX=y
|
||||
CONFIG_ESP32_REV_MIN_0=y
|
||||
# CONFIG_ESP32_REV_MIN_1 is not set
|
||||
# CONFIG_ESP32_REV_MIN_2 is not set
|
||||
@@ -343,7 +345,66 @@ CONFIG_ESP32_DPORT_WORKAROUND=y
|
||||
# CONFIG_ESP32_DEFAULT_CPU_FREQ_160 is not set
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_240=y
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=240
|
||||
# CONFIG_ESP32_SPIRAM_SUPPORT is not set
|
||||
CONFIG_ESP32_SPIRAM_SUPPORT=y
|
||||
|
||||
#
|
||||
# SPI RAM config
|
||||
#
|
||||
CONFIG_SPIRAM_TYPE_AUTO=y
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM16 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
|
||||
CONFIG_SPIRAM_SIZE=-1
|
||||
CONFIG_SPIRAM_SPEED_40M=y
|
||||
# CONFIG_SPIRAM_SPEED_80M is not set
|
||||
CONFIG_SPIRAM=y
|
||||
CONFIG_SPIRAM_BOOT_INIT=y
|
||||
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
|
||||
# CONFIG_SPIRAM_USE_MEMMAP is not set
|
||||
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
|
||||
CONFIG_SPIRAM_USE_MALLOC=y
|
||||
CONFIG_SPIRAM_MEMTEST=y
|
||||
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384
|
||||
# CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is not set
|
||||
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768
|
||||
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
||||
CONFIG_SPIRAM_CACHE_WORKAROUND=y
|
||||
|
||||
#
|
||||
# SPIRAM cache workaround debugging
|
||||
#
|
||||
CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y
|
||||
# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST is not set
|
||||
# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set
|
||||
# end of SPIRAM cache workaround debugging
|
||||
|
||||
CONFIG_SPIRAM_BANKSWITCH_ENABLE=y
|
||||
CONFIG_SPIRAM_BANKSWITCH_RESERVE=8
|
||||
# CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY is not set
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-DOWD
|
||||
#
|
||||
CONFIG_D0WD_PSRAM_CLK_IO=17
|
||||
CONFIG_D0WD_PSRAM_CS_IO=16
|
||||
# end of PSRAM clock and cs IO for ESP32-DOWD
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-D2WD
|
||||
#
|
||||
CONFIG_D2WD_PSRAM_CLK_IO=9
|
||||
CONFIG_D2WD_PSRAM_CS_IO=10
|
||||
# end of PSRAM clock and cs IO for ESP32-D2WD
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-PICO
|
||||
#
|
||||
CONFIG_PICO_PSRAM_CS_IO=10
|
||||
# end of PSRAM clock and cs IO for ESP32-PICO
|
||||
|
||||
# CONFIG_SPIRAM_2T_MODE is not set
|
||||
# end of SPI RAM config
|
||||
|
||||
# CONFIG_ESP32_TRAX is not set
|
||||
CONFIG_ESP32_TRACEMEM_RESERVE_DRAM=0x0
|
||||
# CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set
|
||||
@@ -509,7 +570,6 @@ CONFIG_ESP_NETIF_TCPIP_ADAPTER_COMPATIBLE_LAYER=y
|
||||
CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT=y
|
||||
# CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set
|
||||
# CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set
|
||||
CONFIG_ESP_SYSTEM_PD_FLASH=y
|
||||
|
||||
#
|
||||
# Memory protection
|
||||
@@ -533,15 +593,16 @@ CONFIG_ESP_TIMER_IMPL_TG0_LAC=y
|
||||
#
|
||||
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=8
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=16
|
||||
# CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y
|
||||
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32
|
||||
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y
|
||||
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0
|
||||
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=16
|
||||
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=32
|
||||
# CONFIG_ESP32_WIFI_CSI_ENABLED is not set
|
||||
CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_TX_BA_WIN=32
|
||||
CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_RX_BA_WIN=16
|
||||
# CONFIG_ESP32_WIFI_AMSDU_TX_ENABLED is not set
|
||||
CONFIG_ESP32_WIFI_NVS_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y
|
||||
# CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set
|
||||
@@ -609,6 +670,7 @@ CONFIG_FATFS_LFN_NONE=y
|
||||
CONFIG_FATFS_FS_LOCK=0
|
||||
CONFIG_FATFS_TIMEOUT_MS=10000
|
||||
CONFIG_FATFS_PER_FILE_CACHE=y
|
||||
CONFIG_FATFS_ALLOC_PREFER_EXTRAM=y
|
||||
# CONFIG_FATFS_USE_FASTSEEK is not set
|
||||
# end of FAT Filesystem support
|
||||
|
||||
@@ -852,6 +914,7 @@ CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE=y
|
||||
# mbedTLS
|
||||
#
|
||||
CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y
|
||||
# CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC is not set
|
||||
# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set
|
||||
# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set
|
||||
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
|
||||
@@ -1238,7 +1301,8 @@ CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN_EFF=0
|
||||
CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN_EFF=0
|
||||
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0
|
||||
CONFIG_ADC2_DISABLE_DAC=y
|
||||
# CONFIG_SPIRAM_SUPPORT is not set
|
||||
CONFIG_SPIRAM_SUPPORT=y
|
||||
# CONFIG_WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST is not set
|
||||
CONFIG_TRACEMEM_RESERVE_DRAM=0x0
|
||||
# CONFIG_TWO_UNIVERSAL_MAC_ADDRESS is not set
|
||||
CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y
|
||||
|
||||
@@ -143,7 +143,6 @@ CONFIG_ESP_LYRAT_V4_3_BOARD=y
|
||||
#
|
||||
# ESP32 audio buffer and I2S config
|
||||
#
|
||||
CONFIG_USE_PSRAM=y
|
||||
# CONFIG_USE_DSP_PROCESSOR is not set
|
||||
CONFIG_USE_BIQUAD_ASM=y
|
||||
# end of ESP32 audio buffer and I2S config
|
||||
@@ -334,7 +333,6 @@ CONFIG_ESP_TLS_USING_MBEDTLS=y
|
||||
#
|
||||
# ESP32-specific
|
||||
#
|
||||
CONFIG_ESP32_ECO3_CACHE_LOCK_FIX=y
|
||||
CONFIG_ESP32_REV_MIN_0=y
|
||||
# CONFIG_ESP32_REV_MIN_1 is not set
|
||||
# CONFIG_ESP32_REV_MIN_2 is not set
|
||||
@@ -345,66 +343,7 @@ CONFIG_ESP32_DPORT_WORKAROUND=y
|
||||
# CONFIG_ESP32_DEFAULT_CPU_FREQ_160 is not set
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_240=y
|
||||
CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=240
|
||||
CONFIG_ESP32_SPIRAM_SUPPORT=y
|
||||
|
||||
#
|
||||
# SPI RAM config
|
||||
#
|
||||
CONFIG_SPIRAM_TYPE_AUTO=y
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM16 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
|
||||
# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set
|
||||
CONFIG_SPIRAM_SIZE=-1
|
||||
CONFIG_SPIRAM_SPEED_40M=y
|
||||
# CONFIG_SPIRAM_SPEED_80M is not set
|
||||
CONFIG_SPIRAM=y
|
||||
CONFIG_SPIRAM_BOOT_INIT=y
|
||||
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
|
||||
# CONFIG_SPIRAM_USE_MEMMAP is not set
|
||||
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
|
||||
CONFIG_SPIRAM_USE_MALLOC=y
|
||||
CONFIG_SPIRAM_MEMTEST=y
|
||||
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384
|
||||
# CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is not set
|
||||
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768
|
||||
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
|
||||
CONFIG_SPIRAM_CACHE_WORKAROUND=y
|
||||
|
||||
#
|
||||
# SPIRAM cache workaround debugging
|
||||
#
|
||||
CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y
|
||||
# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST is not set
|
||||
# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set
|
||||
# end of SPIRAM cache workaround debugging
|
||||
|
||||
CONFIG_SPIRAM_BANKSWITCH_ENABLE=y
|
||||
CONFIG_SPIRAM_BANKSWITCH_RESERVE=8
|
||||
# CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY is not set
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-DOWD
|
||||
#
|
||||
CONFIG_D0WD_PSRAM_CLK_IO=17
|
||||
CONFIG_D0WD_PSRAM_CS_IO=16
|
||||
# end of PSRAM clock and cs IO for ESP32-DOWD
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-D2WD
|
||||
#
|
||||
CONFIG_D2WD_PSRAM_CLK_IO=9
|
||||
CONFIG_D2WD_PSRAM_CS_IO=10
|
||||
# end of PSRAM clock and cs IO for ESP32-D2WD
|
||||
|
||||
#
|
||||
# PSRAM clock and cs IO for ESP32-PICO
|
||||
#
|
||||
CONFIG_PICO_PSRAM_CS_IO=10
|
||||
# end of PSRAM clock and cs IO for ESP32-PICO
|
||||
|
||||
# CONFIG_SPIRAM_2T_MODE is not set
|
||||
# end of SPI RAM config
|
||||
|
||||
# CONFIG_ESP32_SPIRAM_SUPPORT is not set
|
||||
# CONFIG_ESP32_TRAX is not set
|
||||
CONFIG_ESP32_TRACEMEM_RESERVE_DRAM=0x0
|
||||
# CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set
|
||||
@@ -570,6 +509,7 @@ CONFIG_ESP_NETIF_TCPIP_ADAPTER_COMPATIBLE_LAYER=y
|
||||
CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT=y
|
||||
# CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set
|
||||
# CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set
|
||||
CONFIG_ESP_SYSTEM_PD_FLASH=y
|
||||
|
||||
#
|
||||
# Memory protection
|
||||
@@ -593,16 +533,15 @@ CONFIG_ESP_TIMER_IMPL_TG0_LAC=y
|
||||
#
|
||||
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=8
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=16
|
||||
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y
|
||||
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0
|
||||
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=16
|
||||
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=32
|
||||
# CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y
|
||||
CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1
|
||||
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32
|
||||
# CONFIG_ESP32_WIFI_CSI_ENABLED is not set
|
||||
CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_TX_BA_WIN=32
|
||||
CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_RX_BA_WIN=16
|
||||
# CONFIG_ESP32_WIFI_AMSDU_TX_ENABLED is not set
|
||||
CONFIG_ESP32_WIFI_NVS_ENABLED=y
|
||||
CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y
|
||||
# CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set
|
||||
@@ -670,7 +609,6 @@ CONFIG_FATFS_LFN_NONE=y
|
||||
CONFIG_FATFS_FS_LOCK=0
|
||||
CONFIG_FATFS_TIMEOUT_MS=10000
|
||||
CONFIG_FATFS_PER_FILE_CACHE=y
|
||||
CONFIG_FATFS_ALLOC_PREFER_EXTRAM=y
|
||||
# CONFIG_FATFS_USE_FASTSEEK is not set
|
||||
# end of FAT Filesystem support
|
||||
|
||||
@@ -914,7 +852,6 @@ CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE=y
|
||||
# mbedTLS
|
||||
#
|
||||
CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y
|
||||
# CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC is not set
|
||||
# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set
|
||||
# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set
|
||||
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
|
||||
@@ -1301,8 +1238,7 @@ CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN_EFF=0
|
||||
CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN_EFF=0
|
||||
CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0
|
||||
CONFIG_ADC2_DISABLE_DAC=y
|
||||
CONFIG_SPIRAM_SUPPORT=y
|
||||
# CONFIG_WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST is not set
|
||||
# CONFIG_SPIRAM_SUPPORT is not set
|
||||
CONFIG_TRACEMEM_RESERVE_DRAM=0x0
|
||||
# CONFIG_TWO_UNIVERSAL_MAC_ADDRESS is not set
|
||||
CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y
|
||||
|
||||
Reference in New Issue
Block a user