@@ -18,6 +18,12 @@ typedef struct esp_rom_spiflash_chip {
1818 uint32_t status_mask ;
1919} esp_rom_spiflash_chip_t ;
2020
21+ typedef enum {
22+ ESP_ROM_SPIFLASH_RESULT_OK ,
23+ ESP_ROM_SPIFLASH_RESULT_ERR ,
24+ ESP_ROM_SPIFLASH_RESULT_TIMEOUT
25+ } esp_rom_spiflash_result_t ;
26+
2127/**
2228 * @brief SPI Flash init
2329 *
@@ -65,3 +71,23 @@ extern void esp_rom_spi_flash_update_id(void);
6571extern int esp_rom_spiflash_config_param (uint32_t flash_id , uint32_t chip_size ,
6672 uint32_t block_size , uint32_t sector_size ,
6773 uint32_t page_size , uint32_t status_mask );
74+
75+ /**
76+ * @brief Read data from Flash
77+ *
78+ * @param src_addr Address to read from. Should be 4 bytes aligned.
79+ * @param buffer Destination buffer
80+ * @param size Number of bytes to read. Should be 4 bytes aligned.
81+ *
82+ * @return Result
83+ * - ESP_ROM_SPIFLASH_RESULT_OK
84+ * - ESP_ROM_SPIFLASH_RESULT_ERR
85+ */
86+ esp_rom_spiflash_result_t esp_rom_spiflash_read (uint32_t src_addr , uint32_t * dest , int32_t len );
87+
88+ /**
89+ * @brief Check if Flash is OPI.
90+ *
91+ * @return true if eFuse indicates an OPI flash is attached.
92+ */
93+ bool ets_efuse_flash_octal_mode (void );
0 commit comments