/*---------------------------------------------------------------------------- * Copyright (c) Fenda Technologies Co., Ltd. 2020. All rights reserved. * * Description: flash_drv_kas041s1.h * * Author: saimen * * Create: 2022-07-13 *--------------------------------------------------------------------------*/ #ifndef FLASH_DRV_KAS041S1_H #define FLASH_DRV_KAS041S1_H #include /********************************************************/ //页大小, 最小读写单元 #define EMMC_KAS041S1_READ_UNIT_SIZE 512 //扇区大小, 最小擦除单元 #define EMMC_KAS041S1_WRITE_UNIT_SIZE 512 //最小擦除单元大小 #define EMMC_KAS041S1_ERASE_UNIT_SIZE 512 //总大小 #define EMMC_KAS041S1_TOTAL_SIZE 0xe4000000//(7471104*512) //FS ADD START /** 文件系统宏定义 ------------------------------------- */ ///FLASH器件后7/8为文件系统 #define EMMC_KAS041S1_FS_MEMORY_BASE (EMMC_KAS041S1_TOTAL_SIZE/8) #define EMMC_KAS041S1_FS_MEMORY_SIZE (EMMC_KAS041S1_TOTAL_SIZE/8*7) //FS ADD END #define EMMC_KAS041S1_TIMEOUT 100000 //us #define EMMC_KAS041S1_CHIP_ERASE_TIMEOUT 300000000 //us //config extern uint32_t flash_drv_kas041s1_get_chip_id(void); extern int flash_drv_kas041s1_open(void); extern int flash_drv_kas041s1_close(void); extern int flash_drv_kas041s1_enter_low_power(void); extern int flash_drv_kas041s1_exit_low_power(void); extern int flash_drv_kas041s1_get_status(void); //read,write,erase extern int flash_drv_kas041s1_erase_chip(void); extern int flash_drv_kas041s1_erase(uint32_t addr); extern int flash_drv_kas041s1_read(uint32_t ui32_addr, uint8_t *p_data, uint32_t ui32_length); extern int flash_drv_kas041s1_write(uint32_t ui32_addr, uint8_t *p_data, uint32_t ui32_length); extern int flash_drv_kas041s1_read_ex(uint32_t ui32_addr, uint8_t *p_data, uint32_t ui32_length); //fs:read,write,erase extern int flash_drv_kas041s1_lfs_erase(uint32_t addr); extern int flash_drv_kas041s1_lfs_read(uint32_t block, uint32_t offset, uint8_t *buffer, uint32_t size); extern int flash_drv_kas041s1_lfs_write(uint32_t block, uint32_t offset, uint8_t *buffer, uint32_t size); #endif