Re: [PATCH v2] spi: orion: Respect per-transfer bits_per_word settings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On pondělí 4. června 2018 17:00:03 CEST, Jan Kundrát wrote:
It's a bug to look at the device's bits_per_word because each transfer
can override these settings. In fact, e.g., spidev cannot specify
"global" bits_per_word and instead relies on passing that through every
ioctl.

This code already did the right thing in orion_spi_setup_transfer, but
then failed to access the HW in an appropriate way here in
orion_spi_write_read.

Tested by 16-bit trnasfers via spidev on an Armada 388 (Solidrun
Clearfog).

Signed-off-by: Jan Kundrát <jan.kundrat@xxxxxxxxx>
---
 drivers/spi/spi-orion.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/spi/spi-orion.c b/drivers/spi/spi-orion.c
index a12ec0814327..5477e7b70902 100644
--- a/drivers/spi/spi-orion.c
+++ b/drivers/spi/spi-orion.c
@@ -432,7 +432,7 @@ orion_spi_write_read(struct spi_device *spi, struct spi_transfer *xfer)
 	struct orion_spi *orion_spi;
 	int cs = spi->chip_select;
- word_len = spi->bits_per_word;
+	word_len = xfer->bits_per_word;
 	count = xfer->len;
orion_spi = spi_master_get_devdata(spi->master);

Can I get a second review of this patch, please? It's a continuation from [1] and it makes it possible to use 16-bit transfers over spidev on spi-orion.

With kind regards,
Jan

[1] https://patchwork.kernel.org/patch/10221395/




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux