KT24-1110_65E-HA-651B/apps/common/include/norflash.h
2024-11-10 18:44:17 +08:00

61 lines
1.9 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef _NORFLASH_H
#define _NORFLASH_H
#include "device/device.h"
#include "ioctl_cmds.h"
#include "asm/spi.h"
#include "printf.h"
#include "gpio.h"
#include "device_drive.h"
#include "malloc.h"
/*************************************************/
/*
COMMAND LIST - WinBond FLASH WX25X
*/
/***************************************************************/
#define WINBOND_WRITE_ENABLE 0x06
#define WINBOND_READ_SR1 0x05
#define WINBOND_READ_SR2 0x35
#define WINBOND_WRITE_SR1 0x01
#define WINBOND_WRITE_SR2 0x31
#define WINBOND_READ_DATA 0x03
#define WINBOND_FAST_READ_DATA 0x0b
#define WINBOND_FAST_READ_DUAL_OUTPUT 0x3b
#define WINBOND_PAGE_PROGRAM 0x02
#define WINBOND_PAGE_ERASE 0x81
#define WINBOND_SECTOR_ERASE 0x20
#define WINBOND_BLOCK_ERASE 0xD8
#define WINBOND_CHIP_ERASE 0xC7
#define WINBOND_JEDEC_ID 0x9F
enum {
FLASH_PAGE_ERASER,
FLASH_SECTOR_ERASER,
FLASH_BLOCK_ERASER,
FLASH_CHIP_ERASER,
};
struct norflash_dev_platform_data {
int spi_hw_num; //只支持SPI1或SPI2
u32 spi_cs_port; //cs的引脚
u32 spi_read_width; //flash读数据的线宽
const struct spi_platform_data *spi_pdata;
u32 start_addr; //分区起始地址
u32 size; //分区大小若只有1个分区则这个参数可以忽略
};
#define NORFLASH_DEV_PLATFORM_DATA_BEGIN(data) \
const struct norflash_dev_platform_data data = {
#define NORFLASH_DEV_PLATFORM_DATA_END() \
};
extern const struct device_operations norflash_dev_ops;
extern const struct device_operations norfs_dev_ops;
#endif