diff options
author | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-16 21:22:56 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-16 21:22:56 +0000 |
commit | 2237dda98204032ae12004f41a99ef9286a28166 (patch) | |
tree | a505b6f813fc4f7601f77e7195e479dfddc73571 /sst28sf040.c | |
parent | b79140252ae001fb1459010661b2ea8db912fc4c (diff) | |
download | flashrom-2237dda98204032ae12004f41a99ef9286a28166.zip flashrom-2237dda98204032ae12004f41a99ef9286a28166.tar.gz |
Use chipaddr instead of volatile uint8_t * because when we access chips in external flashers, they are not accessed via pointers at all
Benefits: This allows us to differentiate between volatile machine
memory accesses and flash chip accesses. It also enforces usage of
chip_{read,write}[bwl] to access flash chips, so nobody will unintentionally
use pointers to access chips anymore. Some unneeded casts are removed as well.
Grepping for chip operations and machine memory operations doesn't yield any
false positives anymore. Compile tested on 32 bit and 64 bit Linux.
Corresponding to flashrom svn r519.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
Diffstat (limited to 'sst28sf040.c')
-rw-r--r-- | sst28sf040.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/sst28sf040.c b/sst28sf040.c index 282b369..afa4191 100644 --- a/sst28sf040.c +++ b/sst28sf040.c @@ -30,7 +30,7 @@ #define RESET 0xFF #define READ_ID 0x90 -static __inline__ void protect_28sf040(volatile uint8_t *bios) +static __inline__ void protect_28sf040(chipaddr bios) { uint8_t tmp; @@ -43,7 +43,7 @@ static __inline__ void protect_28sf040(volatile uint8_t *bios) tmp = chip_readb(bios + 0x040A); } -static __inline__ void unprotect_28sf040(volatile uint8_t *bios) +static __inline__ void unprotect_28sf040(chipaddr bios) { uint8_t tmp; @@ -56,7 +56,7 @@ static __inline__ void unprotect_28sf040(volatile uint8_t *bios) tmp = chip_readb(bios + 0x041A); } -static __inline__ int erase_sector_28sf040(volatile uint8_t *bios, +static __inline__ int erase_sector_28sf040(chipaddr bios, unsigned long address) { chip_writeb(AUTO_PG_ERASE1, bios); @@ -68,9 +68,9 @@ static __inline__ int erase_sector_28sf040(volatile uint8_t *bios, return 0; } -static __inline__ int write_sector_28sf040(volatile uint8_t *bios, +static __inline__ int write_sector_28sf040(chipaddr bios, uint8_t *src, - volatile uint8_t *dst, + chipaddr dst, unsigned int page_size) { int i; @@ -95,7 +95,7 @@ static __inline__ int write_sector_28sf040(volatile uint8_t *bios, int probe_28sf040(struct flashchip *flash) { - volatile uint8_t *bios = flash->virtual_memory; + chipaddr bios = flash->virtual_memory; uint8_t id1, id2; chip_writeb(RESET, bios); @@ -119,7 +119,7 @@ int probe_28sf040(struct flashchip *flash) int erase_28sf040(struct flashchip *flash) { - volatile uint8_t *bios = flash->virtual_memory; + chipaddr bios = flash->virtual_memory; unprotect_28sf040(bios); chip_writeb(CHIP_ERASE, bios); @@ -137,7 +137,7 @@ int write_28sf040(struct flashchip *flash, uint8_t *buf) int i; int total_size = flash->total_size * 1024; int page_size = flash->page_size; - volatile uint8_t *bios = flash->virtual_memory; + chipaddr bios = flash->virtual_memory; unprotect_28sf040(bios); |