diff options
author | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-12 15:38:55 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-12 15:38:55 +0000 |
commit | 01624f40eeec33c546150a240f194f057f6dd36e (patch) | |
tree | 5ef84e3f82ae6d3d7643bc85faafe63eff3256a9 | |
parent | 24f9fbe075107b58a2729a8f5d7da346ebe730e6 (diff) | |
download | flashrom-01624f40eeec33c546150a240f194f057f6dd36e.tar.gz flashrom-01624f40eeec33c546150a240f194f057f6dd36e.tar.bz2 flashrom-01624f40eeec33c546150a240f194f057f6dd36e.zip |
Use helper functions chip_{read,write}[bwl] to access flash chips
The semantic patch I used in r418 to make the original conversion to
accessor functions was missing one isomorphism:
a[b] <=> *(a+b)
The semantic patcher Coccinelle was used to create this patch. Semantic
patch follows:
@@
typedef uint8_t;
expression a;
volatile uint8_t *b;
@@
- b[a]
+ *(b + a)
@@
expression a;
volatile uint8_t *b;
@@
- *(b) = (a);
+ chip_writeb(a, b);
@@
volatile uint8_t *b;
@@
- *(b)
+ chip_readb(b)
@@
type T;
T b;
@@
(
chip_readb
|
chip_writeb
)
(...,
- (T)
- (b)
+ b
)
Corresponding to flashrom svn r498.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
-rw-r--r-- | jedec.c | 4 | ||||
-rw-r--r-- | sst_fwhub.c | 2 | ||||
-rw-r--r-- | w39v040c.c | 4 | ||||
-rw-r--r-- | w39v080fa.c | 4 |
4 files changed, 7 insertions, 7 deletions
@@ -331,8 +331,8 @@ int write_jedec(struct flashchip *flash, uint8_t *buf) erase_chip_jedec(flash); // dumb check if erase was successful. for (i = 0; i < total_size; i++) { - if (bios[i] != (uint8_t) 0xff) { - printf("ERASE FAILED @%d, val %02x!\n", i, bios[i]); + if (chip_readb(bios + i) != (uint8_t) 0xff) { + printf("ERASE FAILED @%d, val %02x!\n", i, chip_readb(bios + i)); return -1; } } diff --git a/sst_fwhub.c b/sst_fwhub.c index 0bf2d4d0..3b74a950 100644 --- a/sst_fwhub.c +++ b/sst_fwhub.c @@ -122,7 +122,7 @@ int erase_sst_fwhub(struct flashchip *flash) // dumb check if erase was successful. for (i = 0; i < total_size; i++) { - if (bios[i] != 0xff) { + if (chip_readb(bios + i) != 0xff) { printf("ERASE FAILED!\n"); return -1; } @@ -67,8 +67,8 @@ int erase_w39v040c(struct flashchip *flash) erase_sector_jedec(flash->virtual_memory, i); for (i = 0; i < total_size; i++) - if (0xff != bios[i]) { - printf("ERASE FAILED at 0x%08x! Expected=0xff, Read=0x%02x\n", i, bios[i]); + if (0xff != chip_readb(bios + i)) { + printf("ERASE FAILED at 0x%08x! Expected=0xff, Read=0x%02x\n", i, chip_readb(bios + i)); return -1; } diff --git a/w39v080fa.c b/w39v080fa.c index ba32add9..7b827f82 100644 --- a/w39v080fa.c +++ b/w39v080fa.c @@ -180,8 +180,8 @@ int erase_winbond_fwhub(struct flashchip *flash) printf("\n"); for (i = 0; i < total_size; i++) { - if (bios[i] != 0xff) { - fprintf(stderr, "Error: Flash chip erase failed at 0x%08x(0x%02x)\n", i, bios[i]); + if (chip_readb(bios + i) != 0xff) { + fprintf(stderr, "Error: Flash chip erase failed at 0x%08x(0x%02x)\n", i, chip_readb(bios + i)); return -1; } } |