summaryrefslogtreecommitdiffstats
path: root/m29f002.c
diff options
context:
space:
mode:
Diffstat (limited to 'm29f002.c')
-rw-r--r--m29f002.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/m29f002.c b/m29f002.c
index 8afef79..f806a2d 100644
--- a/m29f002.c
+++ b/m29f002.c
@@ -22,12 +22,12 @@
int erase_m29f002(struct flashchip *flash) {
volatile uint8_t *bios = flash->virtual_memory;
- *(volatile uint8_t *)(bios + 0x555) = 0xaa;
- *(volatile uint8_t *)(bios + 0xaaa) = 0x55;
- *(volatile uint8_t *)(bios + 0x555) = 0x80;
- *(volatile uint8_t *)(bios + 0x555) = 0xaa;
- *(volatile uint8_t *)(bios + 0xaaa) = 0x55;
- *(volatile uint8_t *)(bios + 0x555) = 0x10;
+ writeb(0xaa, bios + 0x555);
+ writeb(0x55, bios + 0xaaa);
+ writeb(0x80, bios + 0x555);
+ writeb(0xaa, bios + 0x555);
+ writeb(0x55, bios + 0xaaa);
+ writeb(0x10, bios + 0x555);
myusec_delay(10);
toggle_ready_jedec(bios);
return 0;
@@ -35,21 +35,21 @@ int erase_m29f002(struct flashchip *flash) {
static void rewrite_block(volatile uint8_t *bios, uint8_t *src, volatile uint8_t *dst, int size) {
/* erase */
- *(volatile uint8_t *)(bios + 0x555) = 0xaa;
- *(volatile uint8_t *)(bios + 0xaaa) = 0x55;
- *(volatile uint8_t *)(bios + 0x555) = 0x80;
- *(volatile uint8_t *)(bios + 0x555) = 0xaa;
- *(volatile uint8_t *)(bios + 0xaaa) = 0x55;
- *dst = 0x30;
+ writeb(0xaa, bios + 0x555);
+ writeb(0x55, bios + 0xaaa);
+ writeb(0x80, bios + 0x555);
+ writeb(0xaa, bios + 0x555);
+ writeb(0x55, bios + 0xaaa);
+ writeb(0x30, dst);
myusec_delay(10);
toggle_ready_jedec(bios);
/* program */
while (size--) {
- *(volatile uint8_t *)(bios + 0x555) = 0xaa;
- *(volatile uint8_t *)(bios + 0xaaa) = 0x55;
- *(volatile uint8_t *)(bios + 0x555) = 0xa0;
- *dst = *src;
+ writeb(0xaa, bios + 0x555);
+ writeb(0x55, bios + 0xaaa);
+ writeb(0xa0, bios + 0x555);
+ writeb(*src, dst);
toggle_ready_jedec(dst);
dst++;
src++;
OpenPOWER on IntegriCloud