summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chipdrivers.h6
-rw-r--r--jedec.c14
2 files changed, 9 insertions, 11 deletions
diff --git a/chipdrivers.h b/chipdrivers.h
index d9b2dc7..7fe3202 100644
--- a/chipdrivers.h
+++ b/chipdrivers.h
@@ -136,10 +136,8 @@ int unlock_lh28f008bjt(struct flashctx *flash);
/* jedec.c */
uint8_t oddparity(uint8_t val);
-void toggle_ready_jedec(struct flashctx *flash, chipaddr dst);
-void data_polling_jedec(struct flashctx *flash, chipaddr dst, uint8_t data);
-int write_byte_program_jedec(struct flashctx *flash, chipaddr bios, uint8_t *src,
- chipaddr dst);
+void toggle_ready_jedec(const struct flashctx *flash, chipaddr dst);
+void data_polling_jedec(const struct flashctx *flash, chipaddr dst, uint8_t data);
int probe_jedec(struct flashctx *flash);
int write_jedec(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
int write_jedec_1(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
diff --git a/jedec.c b/jedec.c
index be4782a..08cc88b 100644
--- a/jedec.c
+++ b/jedec.c
@@ -23,6 +23,7 @@
*/
#include "flash.h"
+#include "chipdrivers.h"
#define MAX_REFLASH_TRIES 0x10
#define MASK_FULL 0xffff
@@ -111,8 +112,7 @@ static unsigned int getaddrmask(const struct flashchip *chip)
}
}
-static void start_program_jedec_common(struct flashctx *flash,
- unsigned int mask)
+static void start_program_jedec_common(const struct flashctx *flash, unsigned int mask)
{
chipaddr bios = flash->virtual_memory;
chip_writeb(flash, 0xAA, bios + (0x5555 & mask));
@@ -328,7 +328,7 @@ static int erase_chip_jedec_common(struct flashctx *flash, unsigned int mask)
return 0;
}
-static int write_byte_program_jedec_common(struct flashctx *flash, uint8_t *src,
+static int write_byte_program_jedec_common(const struct flashctx *flash, const uint8_t *src,
chipaddr dst, unsigned int mask)
{
int tried = 0, failed = 0;
@@ -358,7 +358,7 @@ retry:
}
/* chunksize is 1 */
-int write_jedec_1(struct flashctx *flash, uint8_t *src, unsigned int start,
+int write_jedec_1(struct flashctx *flash, const uint8_t *src, unsigned int start,
unsigned int len)
{
int i, failed = 0;
@@ -380,11 +380,11 @@ int write_jedec_1(struct flashctx *flash, uint8_t *src, unsigned int start,
return failed;
}
-static int write_page_write_jedec_common(struct flashctx *flash, uint8_t *src,
+static int write_page_write_jedec_common(struct flashctx *flash, const uint8_t *src,
unsigned int start, unsigned int page_size)
{
int i, tried = 0, failed;
- uint8_t *s = src;
+ const uint8_t *s = src;
chipaddr bios = flash->virtual_memory;
chipaddr dst = bios + start;
chipaddr d = dst;
@@ -428,7 +428,7 @@ retry:
* This function is a slightly modified copy of spi_write_chunked.
* Each page is written separately in chunks with a maximum size of chunksize.
*/
-int write_jedec(struct flashctx *flash, uint8_t *buf, unsigned int start,
+int write_jedec(struct flashctx *flash, const uint8_t *buf, unsigned int start,
int unsigned len)
{
unsigned int i, starthere, lenhere;
OpenPOWER on IntegriCloud