blob: aa34e04045113235451bb9a82aaa8f5eb53b5f9e [file] [log] [blame]
# Copyright (c) 2020 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0
config SOC_FLASH_ESP32
bool "Espressif ESP32 flash driver"
default y
depends on DT_HAS_ESPRESSIF_ESP32_FLASH_CONTROLLER_ENABLED
select FLASH_HAS_DRIVER_ENABLED
select FLASH_HAS_PAGE_LAYOUT
select FLASH_HAS_EXPLICIT_ERASE
help
Enable ESP32 internal flash driver.
config MPU_ALLOW_FLASH_WRITE
bool "Add MPU access to write to flash"
help
Enable this to allow MPU RWX access to flash memory
if SOC_FLASH_ESP32
config ESP_FLASH_ASYNC
bool "Use asynchronous work thread to execute the flash access operations"
depends on MULTITHREADING && !MCUBOOT
help
Enabling this makes the flash access operations deferred to the work thread.
Meaning every flash read or write would be postponed and executed when available.
config ESP_FLASH_ASYNC_WORK
bool "Use dedicated work thread to perform the work tasks"
depends on ESP_FLASH_ASYNC
help
Use dedicated work thread to perform the workqueue tasks with flash asynchronous operations.
config ESP_FLASH_ASYNC_WORK_STACK_SIZE
int "Stack size for dedicated work thread"
depends on ESP_FLASH_ASYNC_WORK
default 1024
help
Define stack size for a dedicated work thread processing workqueue.
config ESP_FLASH_ASYNC_WORK_PRIORITY
int "Thread priority for dedicated work thread"
depends on ESP_FLASH_ASYNC_WORK
default 5
help
Define thread priority for a dedicated work thread processing workqueue.
endif # SOC_FLASH_ESP32