forsyth20121205-174063a80cc13 years agoHistory
43 lines · 790 B · C
RawDownload
#include	"u.h"#include	"../port/lib.h"#include	"mem.h"#include	"dat.h"#include	"fns.h"#include	"io.h"#include	"../port/error.h" #include	"../port/flashif.h" /* * Intel 28F320B3B in word mode */ #define	I(x)	(x)enum {	ReadArray = 0x00FF,}; #include "../port/flashintel" static intreset(Flash *f){	f->id = 0x0089;	/* can't use autoselect: might be running in flash */	f->devid = 0x8897;	f->write = intelwrite2;	f->erasezone = intelerase;	f->width = 2;	f->cmask = 0x00FF;	*(ushort*)f->addr = ClearStatus;	*(ushort*)f->addr = ReadArray;	f->nr = 2;	f->regions[0] = (Flashregion){8, 0, 8*(8*1024), 8*1024, 0};	f->regions[1] = (Flashregion){63, 64*1024, 4*1024*1024, 64*1024, 0};	return 0;} voidflash28f320b3blink(void){	addflashcard("Intel28F320B3B", reset);}