Shiyu Sun has uploaded this change for review. ( https://review.coreboot.org/c/flashrom/+/48840 )
Change subject: realtek_mst_i2c_spi.c: Update PAGE_SIZE and fix write ......................................................................
realtek_mst_i2c_spi.c: Update PAGE_SIZE and fix write
Update the PAGE_SIZE to 128 as fix r/w on different devices, also fix the write page mapping for it.
BUG=b:147402710 TEST=build and run flashrom to read&write on multiple devices
Signed-off-by: Shiyu Sun sshiyu@chromium.org Change-Id: Ifcdd3548519eb37440e67fcf6206279cff05b159 --- M Makefile M realtek_mst_i2c_spi.c 2 files changed, 5 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/flashrom refs/changes/40/48840/1
diff --git a/Makefile b/Makefile index 0498624..a79bb82 100644 --- a/Makefile +++ b/Makefile @@ -737,10 +737,10 @@ CONFIG_STLINKV3_SPI ?= yes
# Disables LSPCON support until the i2c helper supports multiple systems. -CONFIG_LSPCON_I2C_SPI ?= no +CONFIG_LSPCON_I2C_SPI ?= yes
# Disables REALTEK_MST support until the i2c helper supports multiple systems. -CONFIG_REALTEK_MST_I2C_SPI ?= no +CONFIG_REALTEK_MST_I2C_SPI ?= yes
# Always enable dummy tracing for now. CONFIG_DUMMY ?= yes diff --git a/realtek_mst_i2c_spi.c b/realtek_mst_i2c_spi.c index 80caf86..dabec70 100644 --- a/realtek_mst_i2c_spi.c +++ b/realtek_mst_i2c_spi.c @@ -28,7 +28,7 @@
#define MCU_I2C_SLAVE_ADDR 0x94 #define REGISTER_ADDRESS (0x94 >> 1) -#define PAGE_SIZE 256 +#define PAGE_SIZE 128 #define MAX_SPI_WAIT_RETRIES 1000
#define MCU_MODE 0x6F @@ -386,7 +386,8 @@ ret |= realtek_mst_i2c_spi_write_register(fd, 0x71, page_len-1); uint8_t block_idx = (start + i) >> 16; uint8_t page_idx = (start + i) >> 8; - ret |= realtek_mst_i2c_spi_map_page(fd, block_idx, page_idx, 0); + uint8_t byte_idx = start + i; + ret |= realtek_mst_i2c_spi_map_page(fd, block_idx, page_idx, byte_idx); if (ret) break;