aboutsummaryrefslogtreecommitdiffstats
path: root/flashrom.c
diff options
context:
space:
mode:
authorEdward O'Callaghan <quasisec@google.com>2022-09-07 10:47:45 +1000
committerFelix Singer <felixsinger@posteo.net>2022-09-27 04:30:43 +0000
commit4b503bee39e8761d7c4ff910562448c488da2b7e (patch)
tree607c6f60053457adf49344f4ab77f203ed4bde54 /flashrom.c
parent3d7905178da44a8908ee3724de527e0af3d50704 (diff)
downloadflashrom-4b503bee39e8761d7c4ff910562448c488da2b7e.tar.gz
flashrom-4b503bee39e8761d7c4ff910562448c488da2b7e.tar.bz2
flashrom-4b503bee39e8761d7c4ff910562448c488da2b7e.zip
drivers/: Make 'internal_delay' the default unless defined
Drop the explicit need to specify the default 'internal_delay' callback function pointer in the programmer_entry struct. This is a reasonable default for every other driver in the tree with only the two exceptions of ch341a_spi.c and serprog.c. Thus this simplifies driver development. Change-Id: I17460bc2c0aebcbb48c8dfa052b260991525cc49 Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/67391 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com> Reviewed-by: Thomas Heijligen <src@posteo.de> Reviewed-by: Felix Singer <felixsinger@posteo.net> Reviewed-by: Nikolai Artemiev <nartemiev@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'flashrom.c')
-rw-r--r--flashrom.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/flashrom.c b/flashrom.c
index 26045943..3328a716 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -219,8 +219,12 @@ void programmer_unmap_flash_region(void *virt_addr, size_t len)
void programmer_delay(unsigned int usecs)
{
- if (usecs > 0)
- programmer->delay(usecs);
+ if (usecs > 0) {
+ if (programmer->delay)
+ programmer->delay(usecs);
+ else
+ internal_delay(usecs);
+ }
}
int read_memmapped(struct flashctx *flash, uint8_t *buf, unsigned int start,
@@ -1419,10 +1423,6 @@ int selfcheck(void)
msg_gerr("Programmer %s does not have a valid init function!\n", p->name);
ret = 1;
}
- if (p->delay == NULL) {
- msg_gerr("Programmer %s does not have a valid delay function!\n", p->name);
- ret = 1;
- }
if (p->map_flash_region == NULL) {
msg_gerr("Programmer %s does not have a valid map_flash_region function!\n", p->name);
ret = 1;