kopia lustrzana https://github.com/espressif/esp-idf
50 wiersze
1.4 KiB
C
50 wiersze
1.4 KiB
C
|
/*
|
||
|
* SPDX-FileCopyrightText: 2017-2022 Espressif Systems (Shanghai) CO LTD
|
||
|
*
|
||
|
* SPDX-License-Identifier: Apache-2.0
|
||
|
*/
|
||
|
#pragma once
|
||
|
|
||
|
#include <stddef.h>
|
||
|
#include <stdbool.h>
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#ifdef ESP_PLATFORM
|
||
|
#include "soc/soc.h"
|
||
|
|
||
|
#if !CONFIG_SPIRAM
|
||
|
#define TLSF_MAX_POOL_SIZE (SOC_DIRAM_DRAM_HIGH - SOC_DIRAM_DRAM_LOW)
|
||
|
#else
|
||
|
#define TLSF_MAX_POOL_SIZE SOC_EXTRAM_DATA_SIZE
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
#if (TLSF_MAX_POOL_SIZE <= (256 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 18 //Each pool can have up 256KB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (512 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 19 //Each pool can have up 512KB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (1 * 1024 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 20 //Each pool can have up 1MB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (2 * 1024 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 21 //Each pool can have up 2MB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (4 * 1024 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 22 //Each pool can have up 4MB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (8 * 1024 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 23 //Each pool can have up 8MB
|
||
|
#elif (TLSF_MAX_POOL_SIZE <= (16 * 1024 * 1024))
|
||
|
#define FL_INDEX_MAX_PLATFORM 24 //Each pool can have up 16MB
|
||
|
#else
|
||
|
#error "Higher TLSF pool sizes should be added for this new config"
|
||
|
#endif
|
||
|
|
||
|
/* Include from the TLSF submodule to force TLSF_INDEX_MAX_PLATFORM to be defined
|
||
|
* when the TLSF repository is compiled in the IDF environment. */
|
||
|
#include "tlsf_common.h"
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|