]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
spi/mpc512x-psc: optionally keep PSC SS asserted across xfer segmensts
authorAnatolij Gustschin <agust@denx.de>
Wed, 13 Mar 2013 13:57:43 +0000 (14:57 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 12 Apr 2013 16:52:03 +0000 (09:52 -0700)
commit3b9f7811595e796ec810b4459ea2711d9c6d2562
tree1b3282bbf52fe0667f8f91e17f193640d7e9ebde
parent0f9da4da0299fbfb23c6439a348914688ac9c9da
spi/mpc512x-psc: optionally keep PSC SS asserted across xfer segmensts

commit 1ad849aee5f53353ed88d9cd3d68a51b03a7d44f upstream.

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@ifm.com>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/spi/spi-mpc512x-psc.c