Add SPI chip read support to the dummy flasher. This allows using the dummy flasher for SPI read debugging.
Tested, works.
Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
Index: flashrom-dummy_spi_chip_read/flash.h =================================================================== --- flashrom-dummy_spi_chip_read/flash.h (Revision 1049) +++ flashrom-dummy_spi_chip_read/flash.h (Arbeitskopie) @@ -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 */ Index: flashrom-dummy_spi_chip_read/spi.c =================================================================== --- flashrom-dummy_spi_chip_read/spi.c (Revision 1049) +++ flashrom-dummy_spi_chip_read/spi.c (Arbeitskopie) @@ -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 Index: flashrom-dummy_spi_chip_read/dummyflasher.c =================================================================== --- flashrom-dummy_spi_chip_read/dummyflasher.c (Revision 1049) +++ flashrom-dummy_spi_chip_read/dummyflasher.c (Arbeitskopie) @@ -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); +} +