summaryrefslogtreecommitdiffstats
path: root/spi.c
diff options
context:
space:
mode:
authorEdward O'Callaghan <quasisec@google.com>2022-12-20 12:33:13 +1100
committerThomas Heijligen <src@posteo.de>2023-03-03 17:35:50 +0000
commite1f30bbce7a603d518ecec9d7e6885719f396719 (patch)
tree8eb630273f026b859d29a9b7854d447cb43c122f /spi.c
parentc66d2bd1ca384dd673b24420e11865fde86060fc (diff)
downloadflashrom-e1f30bbce7a603d518ecec9d7e6885719f396719.tar.gz
flashrom-e1f30bbce7a603d518ecec9d7e6885719f396719.tar.bz2
flashrom-e1f30bbce7a603d518ecec9d7e6885719f396719.zip
tree/: Drop default_spi_probe_opcode for NULL case
A NULL func pointer is necessary and sufficient for the condition `NULL func pointer => true' as to not need this boilerplate as it implies default behaviour of a supported opcode within the `check_block_eraser()` match supported loop. Ran; ``` $ find . -name '*.[c,h]' -exec sed -i '/.probe_opcode = default_spi_probe_opcode,/d' '{}' \; ``` Change-Id: Id502c5d2596ad1db52faf05723083620e4c52c12 Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/70264 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Thomas Heijligen <src@posteo.de> Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Diffstat (limited to 'spi.c')
-rw-r--r--spi.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/spi.c b/spi.c
index 3b3f6229e..3e81da2a5 100644
--- a/spi.c
+++ b/spi.c
@@ -139,9 +139,11 @@ int spi_aai_write(struct flashctx *flash, const uint8_t *buf, unsigned int start
return default_spi_write_aai(flash, buf, start, len);
}
-bool default_spi_probe_opcode(const struct flashctx *flash, uint8_t opcode)
+bool spi_probe_opcode(const struct flashctx *flash, uint8_t opcode)
{
- return true;
+ if (!flash->mst->spi.probe_opcode)
+ return true; /* no probe_opcode implies default of supported. */
+ return flash->mst->spi.probe_opcode(flash, opcode);
}
int register_spi_master(const struct spi_master *mst, void *data)
@@ -155,8 +157,7 @@ int register_spi_master(const struct spi_master *mst, void *data)
}
}
- if (!mst->write_256 || !mst->read || !mst->probe_opcode ||
- (!mst->command && !mst->multicommand)) {
+ if (!mst->write_256 || !mst->read || (!mst->command && !mst->multicommand)) {
msg_perr("%s called with incomplete master definition. "
"Please report a bug at flashrom@flashrom.org\n",
__func__);