summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chipdrivers.h4
-rw-r--r--flashchips.c7
-rw-r--r--pm49fl00x.c6
3 files changed, 11 insertions, 6 deletions
diff --git a/chipdrivers.h b/chipdrivers.h
index 059100e..a378803 100644
--- a/chipdrivers.h
+++ b/chipdrivers.h
@@ -87,10 +87,8 @@ void write_page_m29f400bt(chipaddr bios, uint8_t *src,
chipaddr dst, int page_size);
/* pm49fl00x.c */
-int probe_49fl00x(struct flashchip *flash);
-int erase_49fl00x(struct flashchip *flash);
-int write_49fl00x(struct flashchip *flash, uint8_t *buf);
int unlock_49fl00x(struct flashchip *flash);
+int lock_49fl00x(struct flashchip *flash);
/* sharplhf00l04.c */
int probe_lhf00l04(struct flashchip *flash);
diff --git a/flashchips.c b/flashchips.c
index 45e67c6..5005997 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -1306,7 +1306,8 @@ struct flashchip flashchips[] = {
.block_erase = erase_chip_block_jedec,
}
},
- .write = write_49fl00x,
+ .unlock = unlock_49fl00x,
+ .write = write_jedec_1,
.read = read_memmapped,
},
@@ -3347,7 +3348,7 @@ struct flashchip flashchips[] = {
}
},
.unlock = unlock_49fl00x,
- .write = write_49fl00x,
+ .write = write_jedec_1,
.read = read_memmapped,
},
@@ -3377,7 +3378,7 @@ struct flashchip flashchips[] = {
}
},
.unlock = unlock_49fl00x,
- .write = write_49fl00x,
+ .write = write_jedec_1,
.read = read_memmapped,
},
diff --git a/pm49fl00x.c b/pm49fl00x.c
index 17a49f0..5e5eec8 100644
--- a/pm49fl00x.c
+++ b/pm49fl00x.c
@@ -43,6 +43,12 @@ int unlock_49fl00x(struct flashchip *flash)
return 0;
}
+int lock_49fl00x(struct flashchip *flash)
+{
+ write_lockbits_49fl00x(flash->virtual_registers, flash->total_size * 1024, 1, flash->page_size);
+ return 0;
+}
+
int erase_49fl00x(struct flashchip *flash)
{
int i;
OpenPOWER on IntegriCloud