Add SPI chip read support to the dummy flasher

This allows using the dummy flasher for SPI read debugging.

Corresponding to flashrom svn r1053.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Sean Nelson <audiohacked@gmail.com>
diff --git a/dummyflasher.c b/dummyflasher.c
index 8ebd695..b543222 100644
--- a/dummyflasher.c
+++ b/dummyflasher.c
@@ -23,6 +23,7 @@
 #include <ctype.h>
 #include <sys/types.h>
 #include "flash.h"
+#include "chipdrivers.h"
 
 int dummy_init(void)
 {
@@ -157,3 +158,10 @@
 	msg_pspew("\n");
 	return 0;
 }
+
+int dummy_spi_read(struct flashchip *flash, uint8_t *buf, int start, int len)
+{
+	/* Maximum read length is unlimited, use 64kB. */
+	return spi_read_chunked(flash, buf, start, len, 64 * 1024);
+}
+
diff --git a/flash.h b/flash.h
index 13f7981..93776f1 100644
--- a/flash.h
+++ b/flash.h
@@ -454,6 +454,7 @@
 void dummy_chip_readn(uint8_t *buf, const chipaddr addr, size_t len);
 int dummy_spi_send_command(unsigned int writecnt, unsigned int readcnt,
 		      const unsigned char *writearr, unsigned char *readarr);
+int dummy_spi_read(struct flashchip *flash, uint8_t *buf, int start, int len);
 #endif
 
 /* nic3com.c */
diff --git a/spi.c b/spi.c
index 2074d21..bc80cbd 100644
--- a/spi.c
+++ b/spi.c
@@ -99,7 +99,7 @@
 	{ /* SPI_CONTROLLER_DUMMY */
 		.command = dummy_spi_send_command,
 		.multicommand = default_spi_send_multicommand,
-		.read = NULL,
+		.read = dummy_spi_read,
 		.write_256 = NULL,
 	},
 #endif