diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 9da0bc5a036cfff6af0395ace48cad20ae9852d6..88a8a8edd44be08a9eb69d1943b1725c2e7e47fe 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -982,6 +982,8 @@ static int spi_map_msg(struct spi_controller *ctlr, struct spi_message *msg) if (max_tx || max_rx) { list_for_each_entry(xfer, &msg->transfers, transfer_list) { + if (!xfer->len) + continue; if (!xfer->tx_buf) xfer->tx_buf = ctlr->dummy_tx; if (!xfer->rx_buf)