diff options
| -rw-r--r-- | drivers/spi/stm32_ospi.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/spi/stm32_ospi.c b/drivers/spi/stm32_ospi.c index 01b8f8e4987..9e143a73559 100644 --- a/drivers/spi/stm32_ospi.c +++ b/drivers/spi/stm32_ospi.c @@ -142,7 +142,6 @@ static void stm32_ospi_read_fifo(void *val, phys_addr_t addr, u8 len) case sizeof(u8): *((u8 *)val) = readb_relaxed(addr); }; - schedule(); } static void stm32_ospi_write_fifo(void *val, phys_addr_t addr, u8 len) @@ -200,6 +199,9 @@ int stm32_ospi_tx_poll(struct udevice *dev, void *buf, u32 len, bool read) fifo(buf, regs_base + OSPI_DR, step); len -= step; buf += step; + + if (!(len % SZ_1M)) + schedule(); } return 0; |
