view flash.h @ 21:bd8e2cf04034

- Add flash erase, write & read commands (needs more work). - Split the buffer into argv/argc to make sub commands simpler.
author Daniel O'Connor <darius@dons.net.au>
date Thu, 15 Nov 2012 23:40:51 +1030
parents 58d76cf522ff
children a9cc07caa801
line wrap: on
line source

void		flashcmd(char **, int);
uint16_t	flashreadid(void);
uint8_t		flashreadstatus(void);
void		flashwritestatus(uint8_t status);
void		flashwritectl(int enable);
void		flash4kerase(uint32_t addr);
uint8_t		flashread(uint32_t addr);
void		flashenablewrite(void);
void		flashwrite(uint32_t addr, uint8_t data);

#define FL_BUSY		(1<<0)
#define FL_WEL		(1<<1)
#define FL_BP0		(1<<2)
#define FL_BP1		(1<<3)
#define FL_BP2		(1<<4)
#define FL_BP3		(1<<5)
#define FL_AAI		(1<<6)
#define FL_BPL		(1<<7)

#define FL_READ		0x03
#define FL_HSREAD	0x0b
#define FL_4KERASE	0x20
#define FL_32KERASE	0x52
#define FL_64KERASE	0xd8
#define FL_CHIPERASE	0x60
#define FL_BYTEPROG	0x02
#define FL_AAIWP	0xad
#define FL_RDSR		0x05
#define FL_EWSR		0x50
#define FL_WRSR		0x01
#define FL_WREN		0x06
#define FL_WRDI		0x04
#define FL_RDID		0x90
#define FL_JEDECID	0x9f
#define FL_EBSY		0x70
#define FL_DBSY		0x80