mirror of
https://github.com/torvalds/linux.git
synced 2024-10-31 01:01:52 +00:00
atmel_spi: support zero length transfer
A spi transfer with zero length is not invalid. For example, such transfer (len == 0 && delay_usecs != 0) can be used to achieve delay before first CLK edge after chipselect assertion. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
b687d2a8f8
commit
0671981478
@ -616,7 +616,7 @@ static int atmel_spi_transfer(struct spi_device *spi, struct spi_message *msg)
|
|||||||
return -ESHUTDOWN;
|
return -ESHUTDOWN;
|
||||||
|
|
||||||
list_for_each_entry(xfer, &msg->transfers, transfer_list) {
|
list_for_each_entry(xfer, &msg->transfers, transfer_list) {
|
||||||
if (!(xfer->tx_buf || xfer->rx_buf)) {
|
if (!(xfer->tx_buf || xfer->rx_buf) && xfer->len) {
|
||||||
dev_dbg(&spi->dev, "missing rx or tx buf\n");
|
dev_dbg(&spi->dev, "missing rx or tx buf\n");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user