| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- menu "SPI Flash driver"
- config SPI_FLASH_VERIFY_WRITE
- bool "Verify SPI flash writes"
- default n
- help
- If this option is enabled, any time SPI flash is written then the data will be read
- back and verified. This can catch hardware problems with SPI flash, or flash which
- was not erased before verification.
- config SPI_FLASH_LOG_FAILED_WRITE
- bool "Log errors if verification fails"
- depends on SPI_FLASH_VERIFY_WRITE
- default n
- help
- If this option is enabled, if SPI flash write verification fails then a log error line
- will be written with the address, expected & actual values. This can be useful when
- debugging hardware SPI flash problems.
- config SPI_FLASH_WARN_SETTING_ZERO_TO_ONE
- bool "Log warning if writing zero bits to ones"
- depends on SPI_FLASH_VERIFY_WRITE
- default n
- help
- If this option is enabled, any SPI flash write which tries to set zero bits in the flash to
- ones will log a warning. Such writes will not result in the requested data appearing identically
- in flash once written, as SPI NOR flash can only set bits to one when an entire sector is erased.
- After erasing, individual bits can only be written from one to zero.
- Note that some software (such as SPIFFS) which is aware of SPI NOR flash may write one bits as an
- optimisation, relying on the data in flash becoming a bitwise AND of the new data and any existing data.
- Such software will log spurious warnings if this option is enabled.
- config SPI_FLASH_ENABLE_COUNTERS
- bool "Enable operation counters"
- default 0
- help
- This option enables the following APIs:
-
- - spi_flash_reset_counters
- - spi_flash_dump_counters
- - spi_flash_get_counters
-
- These APIs may be used to collect performance data for spi_flash APIs
- and to help understand behaviour of libraries which use SPI flash.
- config SPI_FLASH_ROM_DRIVER_PATCH
- bool "Enable SPI flash ROM driver patched functions"
- default y
- help
- Enable this flag to use patched versions of SPI flash ROM driver functions.
- This option is needed to write to flash on ESP32-D2WD, and any configuration
- where external SPI flash is connected to non-default pins.
- choice SPI_FLASH_WRITING_DANGEROUS_REGIONS
- bool "Writing to dangerous flash regions"
- default SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS
- help
- SPI flash APIs can optionally abort or return a failure code
- if erasing or writing addresses that fall at the beginning
- of flash (covering the bootloader and partition table) or that
- overlap the app partition that contains the running app.
- It is not recommended to ever write to these regions from an IDF app,
- and this check prevents logic errors or corrupted firmware memory from
- damaging these regions.
- Note that this feature *does not* check calls to the esp_rom_xxx SPI flash
- ROM functions. These functions should not be called directly from IDF
- applications.
- config SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS
- bool "Aborts"
- config SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS
- bool "Fails"
- config SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED
- bool "Allowed"
- endchoice
- endmenu
|