diff options
author | Aarya Chaumal <aarya.chaumal@gmail.com> | 2022-07-04 18:21:50 +0530 |
---|---|---|
committer | Thomas Heijligen <src@posteo.de> | 2022-07-11 12:15:13 +0000 |
commit | edcea80d68e0f029b79bc273ba622dc4a3e6cb2b (patch) | |
tree | e2ca6c352d2b94f209ec995a573c55e205373ac5 /sb600spi.c | |
parent | d0ae8686b1dc642575055c6d0b7e2825f1e9ebbb (diff) | |
download | flashrom-edcea80d68e0f029b79bc273ba622dc4a3e6cb2b.tar.gz flashrom-edcea80d68e0f029b79bc273ba622dc4a3e6cb2b.tar.bz2 flashrom-edcea80d68e0f029b79bc273ba622dc4a3e6cb2b.zip |
spi: Add function to probe erase command opcode for all spi_master
Add a field, probe_opcode, to struct spi_master which points to a
function returning a bool by checking if a given command is supported by
the programmer in use. This is used for getting a whitelist of commands
supported by the programmer, as some programmers like ichspi don't
support all opcodes.
Most programmers use the default function, which just returns true.
ICHSPI and dummyflasher use their specialized function.
Change-Id: I6852ef92788221f471a859c879f8aff42558d36d
Signed-off-by: Aarya Chaumal <aarya.chaumal@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/65183
Reviewed-by: Thomas Heijligen <src@posteo.de>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'sb600spi.c')
-rw-r--r-- | sb600spi.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sb600spi.c b/sb600spi.c index 2ba0085b1..972bb712a 100644 --- a/sb600spi.c +++ b/sb600spi.c @@ -603,6 +603,7 @@ static const struct spi_master spi_master_sb600 = { .write_256 = default_spi_write_256, .write_aai = default_spi_write_aai, .shutdown = sb600spi_shutdown, + .probe_opcode = default_spi_probe_opcode, }; static const struct spi_master spi_master_yangtze = { @@ -614,6 +615,7 @@ static const struct spi_master spi_master_yangtze = { .write_256 = default_spi_write_256, .write_aai = default_spi_write_aai, .shutdown = sb600spi_shutdown, + .probe_opcode = default_spi_probe_opcode, }; static const struct spi_master spi_master_promontory = { @@ -625,6 +627,7 @@ static const struct spi_master spi_master_promontory = { .write_256 = default_spi_write_256, .write_aai = default_spi_write_aai, .shutdown = sb600spi_shutdown, + .probe_opcode = default_spi_probe_opcode, }; int sb600_probe_spi(struct pci_dev *dev) |