mirror of
https://github.com/espressif/ESP8266_RTOS_SDK.git
synced 2025-07-17 19:13:52 +08:00
feat(spi_flash): Modify SPI flash driver
This commit is contained in:
@ -133,4 +133,22 @@
|
||||
#define PAD_XPD_DCDC_CONF (REG_RTC_BASE + 0x0A0)
|
||||
//}}
|
||||
|
||||
//CACHE{{
|
||||
#define CACHE_FLASH_CTRL_REG (0x3ff00000 + 0x0c)
|
||||
#define CACHE_READ_EN_BIT BIT8
|
||||
//}}
|
||||
|
||||
#define DRAM_BASE (0x3FFE8000)
|
||||
#define DRAM_SIZE (96 * 1024)
|
||||
|
||||
#define IRAM_BASE (0x40100000)
|
||||
#define IRAM_SIZE (48 * 1024)
|
||||
|
||||
#define FLASH_BASE (0x40200000)
|
||||
#define FLASH_SIZE (16 * 1024 * 1024)
|
||||
|
||||
#define IS_DRAM(a) ((size_t)(a) >= DRAM_BASE && (size_t)(a) < (DRAM_BASE + DRAM_SIZE))
|
||||
#define IS_IRAM(a) ((size_t)(a) >= IRAM_BASE && (size_t)(a) < (IRAM_BASE + IRAM_SIZE))
|
||||
#define IS_FLASH(a) ((size_t)(a) >= FLASH_BASE && (size_t)(a) < (FLASH_BASE + FLASH_SIZE))
|
||||
|
||||
#endif //_EAGLE_SOC_H_
|
||||
|
@ -4,6 +4,15 @@
|
||||
#include <stdint.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
typedef struct esp_spi_flash_chip {
|
||||
uint32_t deviceId;
|
||||
uint32_t chip_size; // chip size in byte
|
||||
uint32_t block_size;
|
||||
uint32_t sector_size;
|
||||
uint32_t page_size;
|
||||
uint32_t status_mask;
|
||||
} esp_spi_flash_chip_t;
|
||||
|
||||
uint32_t Wait_SPI_Idle();
|
||||
|
||||
void uart_div_modify(uint32_t uart_no, uint32_t baud_div);
|
||||
@ -15,4 +24,14 @@ void system_soft_wdt_feed();
|
||||
|
||||
void Cache_Read_Enable_New();
|
||||
|
||||
int SPI_page_program(esp_spi_flash_chip_t *chip, uint32_t dst_addr, void *pbuf, uint32_t len);
|
||||
int SPI_read_data(esp_spi_flash_chip_t *chip, uint32_t dst_addr, void *pbuf, uint32_t len);
|
||||
int SPI_write_enable(esp_spi_flash_chip_t *chip);
|
||||
int SPI_sector_erase(esp_spi_flash_chip_t *chip, uint32_t sect_addr);
|
||||
int SPI_write_status(esp_spi_flash_chip_t *chip, uint32_t status);
|
||||
int SPI_read_status(esp_spi_flash_chip_t *chip, uint32_t *status);
|
||||
int Enable_QMode(esp_spi_flash_chip_t *chip);
|
||||
|
||||
void Cache_Read_Disable();
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user