Constify the input to flash-write functions just like upstream

BUG=chromium:478356
BRANCH=none
TEST=still builds

Change-Id: I75b07e9ae56ca3ae3860e87929dfb312c8270a0c
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://chromium-review.googlesource.com/437326
Commit-Ready: Patrick Georgi <pgeorgi@chromium.org>
Tested-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
diff --git a/82802ab.c b/82802ab.c
index f5ba4ba..01745ab 100644
--- a/82802ab.c
+++ b/82802ab.c
@@ -141,7 +141,7 @@
 }
 
 /* chunksize is 1 */
-int write_82802ab(struct flashctx *flash, uint8_t *src, unsigned int start, unsigned int len)
+int write_82802ab(struct flashctx *flash, const uint8_t *src, unsigned int start, unsigned int len)
 {
 	int i;
 	chipaddr dst = flash->virtual_memory + start;
diff --git a/chipdrivers.h b/chipdrivers.h
index 62fdf04..d853d3a 100644
--- a/chipdrivers.h
+++ b/chipdrivers.h
@@ -42,8 +42,8 @@
 int spi_block_erase_d8(struct flashctx *flash, unsigned int addr, unsigned int blocklen);
 int spi_block_erase_60(struct flashctx *flash, unsigned int addr, unsigned int blocklen);
 int spi_block_erase_c7(struct flashctx *flash, unsigned int addr, unsigned int blocklen);
-int spi_chip_write_1(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-int spi_chip_write_256(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int spi_chip_write_1(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
+int spi_chip_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 int spi_chip_read(struct flashctx *flash, uint8_t *buf, unsigned int start, int unsigned len);
 uint8_t spi_read_status_register(const struct flashctx *flash);
 int spi_write_status_register(const struct flashctx *flash, int status);
@@ -53,17 +53,17 @@
 int spi_prettyprint_status_register(struct flashctx *flash);
 int spi_disable_blockprotect(struct flashctx *flash);
 int spi_byte_program(struct flashctx *flash, unsigned int addr, uint8_t databyte);
-int spi_nbyte_program(struct flashctx *flash, unsigned int addr, uint8_t *bytes, unsigned int len);
+int spi_nbyte_program(struct flashctx *flash, unsigned int addr, const uint8_t *bytes, unsigned int len);
 int spi_nbyte_read(struct flashctx *flash, unsigned int addr, uint8_t *bytes, unsigned int len);
 int spi_read_chunked(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize);
 int spi_read_unbound(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize);
-int spi_write_chunked(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize);
-int spi_aai_write(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int spi_write_chunked(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize);
+int spi_aai_write(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 
 /* opaque.c */
 int probe_opaque(struct flashctx *flash);
 int read_opaque(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-int write_opaque(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int write_opaque(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 int erase_opaque(struct flashctx *flash, unsigned int blockaddr, unsigned int blocklen);
 uint8_t read_status_opaque(const struct flashctx *flash);
 int write_status_opaque(const struct flashctx *flash, int status);
@@ -91,7 +91,7 @@
 uint8_t wait_82802ab(struct flashctx *flash);
 int probe_82802ab(struct flashctx *flash);
 int erase_block_82802ab(struct flashctx *flash, unsigned int page, unsigned int pagesize);
-int write_82802ab(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int write_82802ab(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 void print_status_82802ab(uint8_t status);
 int unlock_82802ab(struct flashctx *flash);
 int unlock_28f004s5(struct flashctx *flash);
@@ -110,8 +110,8 @@
 int write_byte_program_jedec(struct flashctx *flash, chipaddr bios, uint8_t *src,
 			     chipaddr dst);
 int probe_jedec(struct flashctx *flash);
-int write_jedec(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-int write_jedec_1(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+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);
 int erase_sector_jedec(struct flashctx *flash, unsigned int page, unsigned int pagesize);
 int erase_block_jedec(struct flashctx *flash, unsigned int page, unsigned int blocksize);
 int erase_chip_block_jedec(struct flashctx *flash, unsigned int page, unsigned int blocksize);
@@ -120,7 +120,7 @@
 int probe_m29f400bt(struct flashctx *flash);
 int block_erase_m29f400bt(struct flashctx *flash, unsigned int start, unsigned int len);
 int block_erase_chip_m29f400bt(struct flashctx *flash, unsigned int start, unsigned int len);
-int write_m29f400bt(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int write_m29f400bt(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 void protect_m29f400bt(struct flashctx *flash, chipaddr bios);
 
 /* pm49fl00x.c */
@@ -130,7 +130,7 @@
 /* sst28sf040.c */
 int erase_chip_28sf040(struct flashctx *flash, unsigned int addr, unsigned int blocklen);
 int erase_sector_28sf040(struct flashctx *flash, unsigned int address, unsigned int sector_size);
-int write_28sf040(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int write_28sf040(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 int unprotect_28sf040(struct flashctx *flash);
 int protect_28sf040(struct flashctx *flash);
 
diff --git a/cros_ec.c b/cros_ec.c
index 579e68e..be93645 100644
--- a/cros_ec.c
+++ b/cros_ec.c
@@ -551,7 +551,7 @@
 }
 
 
-int cros_ec_write(struct flashctx *flash, uint8_t *buf, unsigned int addr,
+int cros_ec_write(struct flashctx *flash, const uint8_t *buf, unsigned int addr,
                     unsigned int nbytes) {
 	int i, rc = 0;
 	unsigned int written = 0, real_write_size;
diff --git a/cros_ec.h b/cros_ec.h
index b2edb0d..d5c7039 100644
--- a/cros_ec.h
+++ b/cros_ec.h
@@ -66,7 +66,7 @@
                     unsigned int blockaddr, unsigned int len);
 int cros_ec_read(struct flashctx *flash, uint8_t *readarr,
              unsigned int blockaddr, unsigned int readcnt);
-int cros_ec_write(struct flashctx *flash, uint8_t *buf, unsigned int addr,
+int cros_ec_write(struct flashctx *flash, const uint8_t *buf, unsigned int addr,
                     unsigned int nbytes);
 
 #endif	/* __CROS_EC_H_ */
diff --git a/dediprog.c b/dediprog.c
index d2af534..599c9c2 100644
--- a/dediprog.c
+++ b/dediprog.c
@@ -654,8 +654,7 @@
 	return 0;
 }
 
-//static int dediprog_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
-static int dediprog_spi_write_256(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+static int dediprog_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	return dediprog_spi_write(flash, buf, start, len, WRITE_MODE_PAGE_PGM);
 }
diff --git a/dummyflasher.c b/dummyflasher.c
index 28d7995..9ef74b0 100644
--- a/dummyflasher.c
+++ b/dummyflasher.c
@@ -85,7 +85,7 @@
 
 static int dummy_spi_send_command(const struct flashctx *flash, unsigned int writecnt, unsigned int readcnt,
 		      const unsigned char *writearr, unsigned char *readarr);
-static int dummy_spi_write_256(struct flashctx *flash, uint8_t *buf,
+static int dummy_spi_write_256(struct flashctx *flash, const uint8_t *buf,
 			       unsigned int start, unsigned int len);
 static void dummy_chip_writeb(const struct flashctx *flash, uint8_t val,
 			      chipaddr addr);
@@ -819,7 +819,7 @@
 	return 0;
 }
 
-static int dummy_spi_write_256(struct flashctx *flash, uint8_t *buf,
+static int dummy_spi_write_256(struct flashctx *flash, const uint8_t *buf,
 			       unsigned int start, unsigned int len)
 {
 	return spi_write_chunked(flash, buf, start, len,
diff --git a/flash.h b/flash.h
index e717805..63f9b06 100644
--- a/flash.h
+++ b/flash.h
@@ -175,7 +175,7 @@
 
 	int (*printlock) (struct flashctx *flash);
 	int (*unlock) (struct flashctx *flash);
-	int (*write) (struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+	int (*write) (struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 	int (*read) (struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
 	uint8_t (*read_status) (const struct flashctx *flash);
 	int (*write_status) (const struct flashctx *flash, int status);
diff --git a/ichspi.c b/ichspi.c
index fa93424..98ba84e 100644
--- a/ichspi.c
+++ b/ichspi.c
@@ -1514,7 +1514,7 @@
 	return 0;
 }
 
-static int ich_hwseq_write(struct flashctx *flash, uint8_t *buf, unsigned int addr,
+static int ich_hwseq_write(struct flashctx *flash, const uint8_t *buf, unsigned int addr,
 		    unsigned int len)
 {
 	uint16_t hsfc;
@@ -1786,7 +1786,7 @@
 	return buf;
 }
 
-int pch_hwseq_write(struct flashctx *flash, uint8_t *buf, unsigned int addr,
+int pch_hwseq_write(struct flashctx *flash, const uint8_t *buf, unsigned int addr,
 		    unsigned int len)
 {
 	uint16_t hsfc;
diff --git a/it87spi.c b/it87spi.c
index 5784b96..00554e2 100644
--- a/it87spi.c
+++ b/it87spi.c
@@ -107,7 +107,7 @@
 			const unsigned char *writearr, unsigned char *readarr);
 static int it8716f_spi_chip_read(struct flashctx *flash, uint8_t *buf,
 				 unsigned int start, unsigned int len);
-static int it8716f_spi_chip_write_256(struct flashctx *flash, uint8_t *buf,
+static int it8716f_spi_chip_write_256(struct flashctx *flash, const uint8_t *buf,
 				      unsigned int start, unsigned int len);
 
 static const struct spi_programmer spi_programmer_it87xx = {
@@ -328,7 +328,7 @@
 }
 
 /* Page size is usually 256 bytes */
-static int it8716f_spi_page_program(struct flashctx *flash, uint8_t *buf,
+static int it8716f_spi_page_program(struct flashctx *flash, const uint8_t *buf,
 				    unsigned int start)
 {
 	unsigned int i;
@@ -374,7 +374,7 @@
 	return 0;
 }
 
-static int it8716f_spi_chip_write_256(struct flashctx *flash, uint8_t *buf,
+static int it8716f_spi_chip_write_256(struct flashctx *flash, const uint8_t *buf,
 				      unsigned int start, unsigned int len)
 {
 	/*
diff --git a/linux_mtd.c b/linux_mtd.c
index 3767d15..36b8283 100644
--- a/linux_mtd.c
+++ b/linux_mtd.c
@@ -222,7 +222,7 @@
 }
 
 /* this version assumes we must divide the write request into pages ourselves */
-static int linux_mtd_write(struct flashctx *flash, uint8_t *buf,
+static int linux_mtd_write(struct flashctx *flash, const uint8_t *buf,
 				unsigned int start, unsigned int len)
 {
 	unsigned int page;
diff --git a/linux_spi.c b/linux_spi.c
index 0199cf5..95e1fde 100644
--- a/linux_spi.c
+++ b/linux_spi.c
@@ -53,7 +53,7 @@
 			const unsigned char *txbuf, unsigned char *rxbuf);
 static int linux_spi_read(struct flashctx *flash, uint8_t *buf,
 			  unsigned int start, unsigned int len);
-static int linux_spi_write_256(struct flashctx *flash, uint8_t *buf,
+static int linux_spi_write_256(struct flashctx *flash, const uint8_t *buf,
 			       unsigned int start, unsigned int len);
 
 static const struct spi_programmer spi_programmer_linux = {
@@ -282,7 +282,7 @@
 	return spi_read_chunked(flash, buf, start, len, SPI_DMA_SIZE);
 }
 
-static int linux_spi_write_256(struct flashctx *flash, uint8_t *buf,
+static int linux_spi_write_256(struct flashctx *flash, const uint8_t *buf,
 			       unsigned int start, unsigned int len)
 {
 	return spi_write_chunked(flash, buf, start, len,
diff --git a/m29f400bt.c b/m29f400bt.c
index f9a1c30..a94b523 100644
--- a/m29f400bt.c
+++ b/m29f400bt.c
@@ -28,7 +28,7 @@
    functions. */
 
 /* chunksize is 1 */
-int write_m29f400bt(struct flashctx *flash, uint8_t *src, unsigned int start, unsigned int len)
+int write_m29f400bt(struct flashctx *flash, const uint8_t *src, unsigned int start, unsigned int len)
 {
 	int i;
 	chipaddr bios = flash->virtual_memory;
diff --git a/opaque.c b/opaque.c
index b6c3b21..da625ed 100644
--- a/opaque.c
+++ b/opaque.c
@@ -66,7 +66,7 @@
 	return opaque_programmer->read(flash, buf, start, len);
 }
 
-int write_opaque(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+int write_opaque(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	if (!opaque_programmer->write) {
 		msg_perr("%s called before register_opaque_programmer. "
diff --git a/programmer.h b/programmer.h
index 0541975..8784cee 100644
--- a/programmer.h
+++ b/programmer.h
@@ -574,7 +574,7 @@
 
 	/* Optimized functions for this master */
 	int (*read)(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-	int (*write_256)(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+	int (*write_256)(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 };
 
 extern const struct spi_programmer *spi_programmer;
@@ -582,7 +582,7 @@
 			     const unsigned char *writearr, unsigned char *readarr);
 int default_spi_send_multicommand(const struct flashctx *flash, struct spi_command *cmds);
 int default_spi_read(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-int default_spi_write_256(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+int default_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 void register_spi_programmer(const struct spi_programmer *programmer);
 
 /* ichspi.c */
@@ -643,7 +643,7 @@
 	/* Specific functions for this programmer */
 	int (*probe) (struct flashctx *flash);
 	int (*read) (struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
-	int (*write) (struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len);
+	int (*write) (struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len);
 	int (*erase) (struct flashctx *flash, unsigned int blockaddr, unsigned int blocklen);
 	uint8_t (*read_status) (const struct flashctx *flash);
 	int (*write_status) (const struct flashctx *flash, int status);
diff --git a/spi.c b/spi.c
index 41fbe2a..0ea3edc 100644
--- a/spi.c
+++ b/spi.c
@@ -117,7 +117,7 @@
 	return rc;
 }
 
-int default_spi_write_256(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+int default_spi_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	unsigned int max_data = spi_programmer->max_data_write;
 	int rc;
@@ -173,7 +173,7 @@
  * .write_256 = spi_chip_write_1
  */
 /* real chunksize is up to 256, logical chunksize is 256 */
-int spi_chip_write_256(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+int spi_chip_write_256(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	if (!spi_programmer->write_256) {
 		msg_perr("%s called, but SPI page write is unsupported on this "
diff --git a/spi25.c b/spi25.c
index 740122b..61751ed 100644
--- a/spi25.c
+++ b/spi25.c
@@ -891,7 +891,7 @@
 	return result;
 }
 
-int spi_nbyte_program(struct flashctx *flash, unsigned int addr, uint8_t *bytes, unsigned int len)
+int spi_nbyte_program(struct flashctx *flash, unsigned int addr, const uint8_t *bytes, unsigned int len)
 {
 	int result;
 	/* FIXME: Switch to malloc based on len unless that kills speed. */
@@ -1076,7 +1076,7 @@
  * FIXME: Use the chunk code from Michael Karcher instead.
  * Each page is written separately in chunks with a maximum size of chunksize.
  */
-int spi_write_chunked(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize)
+int spi_write_chunked(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len, unsigned int chunksize)
 {
 	int rc = 0;
 	unsigned int i, j, starthere, lenhere, towrite;
@@ -1124,7 +1124,7 @@
  * (e.g. due to size constraints in IT87* for over 512 kB)
  */
 /* real chunksize is 1, logical chunksize is 1 */
-int spi_chip_write_1(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+int spi_chip_write_1(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	unsigned int i;
 	int result = 0;
@@ -1140,7 +1140,7 @@
 	return 0;
 }
 
-int spi_aai_write(struct flashctx *flash, uint8_t *buf, unsigned int start, unsigned int len)
+int spi_aai_write(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
 	uint32_t pos = start;
 	int result;
diff --git a/sst28sf040.c b/sst28sf040.c
index b339b5c..44f4fa0 100644
--- a/sst28sf040.c
+++ b/sst28sf040.c
@@ -60,7 +60,8 @@
 	return 0;
 }
 
-int erase_sector_28sf040(struct flashctx *flash, unsigned int address, unsigned int sector_size)
+int erase_sector_28sf040(struct flashctx *flash, unsigned int address,
+			 unsigned int sector_size)
 {
 	chipaddr bios = flash->virtual_memory;
 
@@ -76,7 +77,7 @@
 }
 
 /* chunksize is 1 */
-int write_28sf040(struct flashctx *flash, uint8_t *src, unsigned int start, unsigned int len)
+int write_28sf040(struct flashctx *flash, const uint8_t *src, unsigned int start, unsigned int len)
 {
 	int i;
 	chipaddr bios = flash->virtual_memory;
@@ -114,7 +115,8 @@
 	return 0;
 }
 
-int erase_chip_28sf040(struct flashctx *flash, unsigned int addr, unsigned int blocklen)
+int erase_chip_28sf040(struct flashctx *flash, unsigned int addr,
+		       unsigned int blocklen)
 {
 	if ((addr != 0) || (blocklen != flash->total_size * 1024)) {
 		msg_cerr("%s called with incorrect arguments\n",
diff --git a/wpce775x.c b/wpce775x.c
index 811c1ac..8614a1a 100644
--- a/wpce775x.c
+++ b/wpce775x.c
@@ -719,7 +719,7 @@
 	return spi_read_chunked(flash, buf, start, len, flash->page_size);
 }
 
-int wpce775x_spi_write_256(struct flashctx *flash, uint8_t *buf,
+int wpce775x_spi_write_256(struct flashctx *flash, const uint8_t *buf,
                            unsigned int start, unsigned int len)
 {
 	if (!initflash_cfg) {