config SPIRAM bool "Support for external, SPI-connected RAM" default "n" help This enables support for an external SPI RAM chip, connected in parallel with the main SPI flash chip. menu "SPI RAM config" depends on SPIRAM config SPIRAM_MODE_QUAD bool default "y" choice SPIRAM_TYPE prompt "Type of SPI RAM chip in use" default SPIRAM_TYPE_AUTO config SPIRAM_TYPE_AUTO bool "Auto-detect" config SPIRAM_TYPE_ESPPSRAM16 bool "ESP-PSRAM16 or APS1604" config SPIRAM_TYPE_ESPPSRAM32 bool "ESP-PSRAM32" config SPIRAM_TYPE_ESPPSRAM64 bool "ESP-PSRAM64 or LY68L6400" endchoice config SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY bool "Allow external memory as an argument to xTaskCreateStatic" default y help Accessing memory in SPIRAM has certain restrictions, so task stacks allocated by xTaskCreate are by default allocated from internal RAM. This option allows for passing memory allocated from SPIRAM to be passed to xTaskCreateStatic. This should only be used for tasks where the stack is never accessed while the cache is disabled. Cannot be used together with ESP_COREDUMP_ENABLE_TO_FLASH. menu "PSRAM clock and cs IO for ESP32S2" depends on SPIRAM config DEFAULT_PSRAM_CLK_IO int "PSRAM CLK IO number" range 0 33 default 30 help The PSRAM CLOCK IO can be any unused GPIO, user can config it based on hardware design. config DEFAULT_PSRAM_CS_IO int "PSRAM CS IO number" range 0 33 default 26 help The PSRAM CS IO can be any unused GPIO, user can config it based on hardware design. endmenu config SPIRAM_FETCH_INSTRUCTIONS bool "Move Instructions in Flash to PSRAM" default n help If enabled, instructions in flash will be moved into PSRAM on startup. If SPIRAM_RODATA is also enabled, code that requires execution during an SPI1 Flash operation can forgo being placed in IRAM, thus optimizing RAM usage (see External RAM documentation for more details). config SPIRAM_RODATA bool "Move Read-Only Data in Flash to PSRAM" default n help If enabled, instructions in flash will be moved into PSRAM on startup. If SPIRAM_FETCH_INSTRUCTIONS is also enabled, code that requires execution during an SPI1 Flash operation can forgo being placed in IRAM, thus optimizing RAM usage (see External RAM documentation for more details). choice SPIRAM_SPEED prompt "Set RAM clock speed" default SPIRAM_SPEED_40M help Select the speed for the SPI RAM chip. config SPIRAM_SPEED_80M bool "80MHz clock speed" config SPIRAM_SPEED_40M bool "40Mhz clock speed" config SPIRAM_SPEED_26M bool "26Mhz clock speed" config SPIRAM_SPEED_20M bool "20Mhz clock speed" endchoice config SPIRAM_SPEED int default 80 if SPIRAM_SPEED_80M default 40 if SPIRAM_SPEED_40M default 40 if SPIRAM_SPEED_26M default 40 if SPIRAM_SPEED_20M source "$IDF_PATH/components/esp_psram/Kconfig.spiram.common" # insert non-chip-specific items here endmenu