drivers/spi/spi_flash: add missing status() command callbacks
The adesto, amic, atmel, and stmicro spi flash drivers didn't have
the status() call back. These parts do support the status command
retrieval. Fill them in accordingly.
Change-Id: Ie0e63bec844b8e01e292ef8c4df707494df02e69
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38377
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
diff --git a/src/drivers/spi/adesto.c b/src/drivers/spi/adesto.c
index 1339ed2..fd3c0a2 100644
--- a/src/drivers/spi/adesto.c
+++ b/src/drivers/spi/adesto.c
@@ -152,6 +152,7 @@
.read = spi_flash_cmd_read,
.write = spi_flash_cmd_write_page_program,
.erase = spi_flash_cmd_erase,
+ .status = spi_flash_cmd_status,
};
int spi_flash_probe_adesto(const struct spi_slave *spi, u8 *idcode,
@@ -180,6 +181,7 @@
flash->size = flash->sector_size *params->sectors_per_block *
params->nr_blocks;
flash->erase_cmd = CMD_AT25DF_SE;
+ flash->status_cmd = CMD_AT25DF_RDSR;
flash->pp_cmd = CMD_AT25DF_PP;
flash->wren_cmd = CMD_AT25DF_WREN;
diff --git a/src/drivers/spi/amic.c b/src/drivers/spi/amic.c
index fdaf1ba..e30ed48 100644
--- a/src/drivers/spi/amic.c
+++ b/src/drivers/spi/amic.c
@@ -123,6 +123,7 @@
.read = spi_flash_cmd_read,
.write = spi_flash_cmd_write_page_program,
.erase = spi_flash_cmd_erase,
+ .status = spi_flash_cmd_status,
};
int spi_flash_probe_amic(const struct spi_slave *spi, u8 *idcode,
@@ -152,6 +153,7 @@
flash->size = flash->sector_size * params->sectors_per_block *
params->nr_blocks;
flash->erase_cmd = CMD_A25_SE;
+ flash->status_cmd = CMD_A25_RDSR;
flash->pp_cmd = CMD_A25_PP;
flash->wren_cmd = CMD_A25_WREN;
diff --git a/src/drivers/spi/atmel.c b/src/drivers/spi/atmel.c
index 64bc9f8..ad9e75b 100644
--- a/src/drivers/spi/atmel.c
+++ b/src/drivers/spi/atmel.c
@@ -107,6 +107,7 @@
.read = spi_flash_cmd_read,
.write = spi_flash_cmd_write_page_program,
.erase = spi_flash_cmd_erase,
+ .status = spi_flash_cmd_status,
};
int spi_flash_probe_atmel(const struct spi_slave *spi, u8 *idcode,
@@ -136,6 +137,7 @@
flash->size = flash->sector_size * params->sectors_per_block *
params->nr_blocks;
flash->erase_cmd = CMD_AT25_SE;
+ flash->status_cmd = CMD_AT25_RDSR;
flash->pp_cmd = CMD_AT25_PP;
flash->wren_cmd = CMD_AT25_WREN;
diff --git a/src/drivers/spi/stmicro.c b/src/drivers/spi/stmicro.c
index 3f1a78c..7aa06bd 100644
--- a/src/drivers/spi/stmicro.c
+++ b/src/drivers/spi/stmicro.c
@@ -288,6 +288,7 @@
.read = spi_flash_cmd_read,
.write = spi_flash_cmd_write_page_program,
.erase = spi_flash_cmd_erase,
+ .status = spi_flash_cmd_status,
};
int stmicro_release_deep_sleep_identify(const struct spi_slave *spi, u8 *idcode)
@@ -333,6 +334,7 @@
flash->sector_size = params->page_size * params->pages_per_sector;
flash->size = flash->sector_size * params->nr_sectors;
flash->erase_cmd = params->op_erase;
+ flash->status_cmd = CMD_M25PXX_RDSR;
flash->pp_cmd = CMD_M25PXX_PP;
flash->wren_cmd = CMD_M25PXX_WREN;