* [PATCH] spi: mpc512x-psc: optionally keep PSC SS asserted across xfer segmensts
@ 2013-03-13 13:57 Anatolij Gustschin
[not found] ` <20130401133017.GP18636@opensource.wolfsonmicro.com>
0 siblings, 1 reply; 2+ messages in thread
From: Anatolij Gustschin @ 2013-03-13 13:57 UTC (permalink / raw)
To: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
Cc: Mark Brown, Anatolij Gustschin
Some SPI slave devices require asserted chip select signal across
multiple transfer segments of an SPI message. Currently the driver
always de-asserts the internal SS signal for every single transfer
segment of the message and ignores the 'cs_change' flag of the
transfer description. Disable the internal chip select (SS) only
if this is needed and indicated by the 'cs_change' flag.
Without this change, each partial transfer of a surrounding
multi-part SPI transaction might erroneously change the SS
signal, which might prevent slaves from answering the request
that was sent in a previous transfer segment because the
transaction could be considered aborted (SS was de-asserted
before reading the response).
Reported-by: Gerhard Sittig <gerhard.sittig-Jj5Fu8i2Z9Q@public.gmane.org>
Signed-off-by: Anatolij Gustschin <agust-ynQEQJNshbs@public.gmane.org>
---
drivers/spi/spi-mpc512x-psc.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/spi/spi-mpc512x-psc.c b/drivers/spi/spi-mpc512x-psc.c
index 6b600a2..dfddf33 100644
--- a/drivers/spi/spi-mpc512x-psc.c
+++ b/drivers/spi/spi-mpc512x-psc.c
@@ -168,7 +168,7 @@ static int mpc512x_psc_spi_transfer_rxtx(struct spi_device *spi,
for (i = count; i > 0; i--) {
data = tx_buf ? *tx_buf++ : 0;
- if (len == EOFBYTE)
+ if (len == EOFBYTE && t->cs_change)
setbits32(&fifo->txcmd, MPC512x_PSC_FIFO_EOF);
out_8(&fifo->txdata_8, data);
len--;
--
1.7.5.4
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] spi: mpc512x-psc: optionally keep PSC SS asserted across xfer segmensts
[not found] ` <20130401133017.GP18636-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
@ 2013-04-01 14:19 ` Anatolij Gustschin
0 siblings, 0 replies; 2+ messages in thread
From: Anatolij Gustschin @ 2013-04-01 14:19 UTC (permalink / raw)
To: Mark Brown; +Cc: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
On Mon, 1 Apr 2013 14:30:17 +0100
Mark Brown <broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org> wrote:
> On Wed, Mar 13, 2013 at 02:57:43PM +0100, Anatolij Gustschin wrote:
> > Some SPI slave devices require asserted chip select signal across
> > multiple transfer segments of an SPI message. Currently the driver
>
> This isn't some devices, it's the standard behaviour for the API -
> drivers and frameworks can split up a SPI transfer into as many pieces
> as amuses them.
>
> Anyway, applied.
Thanks!
Could you also apply this one ?
https://patchwork.kernel.org/patch/2251911
Thanks,
Anatolij
------------------------------------------------------------------------------
Own the Future-Intel® Level Up Game Demo Contest 2013
Rise to greatness in Intel's independent game demo contest.
Compete for recognition, cash, and the chance to get your game
on Steam. $5K grand prize plus 10 genre and skill prizes.
Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-04-01 14:19 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-13 13:57 [PATCH] spi: mpc512x-psc: optionally keep PSC SS asserted across xfer segmensts Anatolij Gustschin
[not found] ` <20130401133017.GP18636@opensource.wolfsonmicro.com>
[not found] ` <20130401133017.GP18636-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2013-04-01 14:19 ` Anatolij Gustschin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).