警告

This document is not updated for ESP32H21 yet, so some of the content may not be correct.

This warning was automatically inserted due to the source file being in the add_warnings_pages list.

# SPI Flash API ESP-IDF 版本与芯片 ROM 版本的对比

[English]

芯片 ROM 中有一组 SPI flash 驱动程序，可以通过启用 CONFIG_SPI_FLASH_ROM_IMPL 来使用。大多数 ESP-IDF SPI flash 驱动程序的代码都在内部 RAM 中，因此启用此选项可以释放一些内部 RAM 的占用量。请注意，如果启用此选项，一些 ESP-IDF 中的 SPI flash 驱动程序功能和错误修复可能不会体现在芯片 ROM 版本中。

## ESP-IDF 支持但不包含在芯片 ROM 中的功能

- 八线 flash 芯片。详情请参阅 OPI flash 支持。

- Flash 的 32 位地址。请注意，此功能为可选功能，详情请参阅 QSPI flash 芯片的 32 位地址支持。

- TH flash 芯片。

- Kconfig 选项 CONFIG_SPI_FLASH_CHECK_ERASE_TIMEOUT_DISABLED。

- CONFIG_SPI_FLASH_VERIFY_WRITE，启用此选项可检测错误写入。

- CONFIG_SPI_FLASH_LOG_FAILED_WRITE，启用此选项会打印错误写入。

- CONFIG_SPI_FLASH_WARN_SETTING_ZERO_TO_ONE，启用此选项会检查是否将 0 写入为 1。

- CONFIG_SPI_FLASH_DANGEROUS_WRITE，启用此选项会检查是否对某些受保护的区域（如引导加载程序、分区表或应用程序本身）进行了 flash 编程。

- CONFIG_SPI_FLASH_ENABLE_COUNTERS，启用此选项以收集 ESP-IDF SPI flash 驱动程序 API 的性能数据。

- CONFIG_SPI_FLASH_AUTO_SUSPEND，启用此选项可在 flash 短时操作时自动挂起或恢复 flash 长时操作。请注意，此功能为可选功能，详情请参阅 自动挂起和恢复。

## 在 ESP-IDF 中引入，但不包含在芯片 ROM 中的错误修复

- 正确检测到大于 256 MBit 的 flash 芯片的物理大小。（提交 ID: b4964279d44f73cce7cfd5cf684567fbdfd6fd9e）

- 修复了擦除和写入函数在地址与长度相加超出 32 位边界时，可能绕过边界检查的问题。

此文档对您有帮助吗？

- 反馈已收到，谢谢！
- 如果您有其他意见，欢迎填写乐鑫文档反馈表。

- 我们重视您的反馈。
- 您可以填写乐鑫文档反馈表告诉我们如何改进该文档。