diff --git a/src/soc/amd/common/block/lpc/spi_dma.c b/src/soc/amd/common/block/lpc/spi_dma.c index fdc4f32593..5c697790c8 100644 --- a/src/soc/amd/common/block/lpc/spi_dma.c +++ b/src/soc/amd/common/block/lpc/spi_dma.c @@ -193,6 +193,9 @@ static ssize_t spi_dma_readat_dma(const struct region_device *rd, void *destinat printk(BIOS_SPEW, "%s: end: dest: %p, source: %#zx, remaining: %zu\n", __func__, destination, source, transaction.remaining); + /* Allow queued up transaction to continue */ + thread_yield(); + if (transaction.remaining) return -1;