diff options
author | Martin Sperl <kernel@martin.sperl.org> | 2015-12-22 19:03:21 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-01-05 20:05:23 +0100 |
commit | e6520a3c8877d02c471135afb371e79b04409ab8 (patch) | |
tree | 8bb9ea2c10d7a4b5e53efaee617cb00e0e93c066 /drivers/spi | |
parent | spi: loopback: added additional non-power of 2 transfer lengthes (diff) | |
download | linux-e6520a3c8877d02c471135afb371e79b04409ab8.tar.xz linux-e6520a3c8877d02c471135afb371e79b04409ab8.zip |
spi: loopback-test: write rx pattern also when running without tx_buf
Currently the rx_buf does not get set with the
SPI_TEST_PATTERN_UNWRITTEN when tx_buf == NULL in the transfer.
Reorder code so that it gets done also under this specific condition.
Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/spi-loopback-test.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/spi/spi-loopback-test.c b/drivers/spi/spi-loopback-test.c index 7f497acc906c..8af2e4070153 100644 --- a/drivers/spi/spi-loopback-test.c +++ b/drivers/spi/spi-loopback-test.c @@ -591,6 +591,10 @@ static int spi_test_fill_tx(struct spi_device *spi, struct spi_test *test) /* fill all transfers with the pattern requested */ for (i = 0; i < test->transfer_count; i++) { + /* fill rx_buf with SPI_TEST_PATTERN_UNWRITTEN */ + if (xfers[i].rx_buf) + memset(xfers[i].rx_buf, SPI_TEST_PATTERN_UNWRITTEN, + xfers[i].len); /* if tx_buf is NULL then skip */ tx_buf = (u8 *)xfers[i].tx_buf; if (!tx_buf) @@ -648,10 +652,6 @@ static int spi_test_fill_tx(struct spi_device *spi, struct spi_test *test) return -EINVAL; } } - /* fill rx_buf with SPI_TEST_PATTERN_UNWRITTEN */ - if (xfers[i].rx_buf) - memset(xfers[i].rx_buf, SPI_TEST_PATTERN_UNWRITTEN, - xfers[i].len); } return 0; |