* [PATCH] spi: bitbang: initialize bits_per_word as specified by spi message
@ 2011-06-01 16:36 Anatolij Gustschin
[not found] ` <1306946209-28553-1-git-send-email-agust-ynQEQJNshbs@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Anatolij Gustschin @ 2011-06-01 16:36 UTC (permalink / raw)
To: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f, Grant Likely
Cc: Anatolij Gustschin
SPI protocol drivers can submit messages specifying needed bits_per_word
parameter for a message transfer. The bitbang driver currently ignores
bits_per_word given by a singe message and always uses master's
bits_per_word parameter. Only use master's bits_per_word when a
message didn't specify needed bits_per_word for ongoing transfer.
Signed-off-by: Anatolij Gustschin <agust-ynQEQJNshbs@public.gmane.org>
---
drivers/spi/spi_bitbang.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/spi/spi_bitbang.c b/drivers/spi/spi_bitbang.c
index 14a63f6..bb38c83 100644
--- a/drivers/spi/spi_bitbang.c
+++ b/drivers/spi/spi_bitbang.c
@@ -68,7 +68,7 @@ static unsigned bitbang_txrx_8(
unsigned ns,
struct spi_transfer *t
) {
- unsigned bits = spi->bits_per_word;
+ unsigned bits = t->bits_per_word ? : spi->bits_per_word;
unsigned count = t->len;
const u8 *tx = t->tx_buf;
u8 *rx = t->rx_buf;
@@ -94,7 +94,7 @@ static unsigned bitbang_txrx_16(
unsigned ns,
struct spi_transfer *t
) {
- unsigned bits = spi->bits_per_word;
+ unsigned bits = t->bits_per_word ? : spi->bits_per_word;
unsigned count = t->len;
const u16 *tx = t->tx_buf;
u16 *rx = t->rx_buf;
@@ -120,7 +120,7 @@ static unsigned bitbang_txrx_32(
unsigned ns,
struct spi_transfer *t
) {
- unsigned bits = spi->bits_per_word;
+ unsigned bits = t->bits_per_word ? : spi->bits_per_word;
unsigned count = t->len;
const u32 *tx = t->tx_buf;
u32 *rx = t->rx_buf;
--
1.7.1
------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today.
http://p.sf.net/sfu/quest-sfdev2dev
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] spi: bitbang: initialize bits_per_word as specified by spi message
[not found] ` <1306946209-28553-1-git-send-email-agust-ynQEQJNshbs@public.gmane.org>
@ 2011-06-03 21:01 ` Grant Likely
0 siblings, 0 replies; 2+ messages in thread
From: Grant Likely @ 2011-06-03 21:01 UTC (permalink / raw)
To: Anatolij Gustschin; +Cc: spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
On Wed, Jun 01, 2011 at 06:36:49PM +0200, Anatolij Gustschin wrote:
> SPI protocol drivers can submit messages specifying needed bits_per_word
> parameter for a message transfer. The bitbang driver currently ignores
> bits_per_word given by a singe message and always uses master's
> bits_per_word parameter. Only use master's bits_per_word when a
> message didn't specify needed bits_per_word for ongoing transfer.
>
> Signed-off-by: Anatolij Gustschin <agust-ynQEQJNshbs@public.gmane.org>
Looks right to me. Merged.
g.
> ---
> drivers/spi/spi_bitbang.c | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/spi/spi_bitbang.c b/drivers/spi/spi_bitbang.c
> index 14a63f6..bb38c83 100644
> --- a/drivers/spi/spi_bitbang.c
> +++ b/drivers/spi/spi_bitbang.c
> @@ -68,7 +68,7 @@ static unsigned bitbang_txrx_8(
> unsigned ns,
> struct spi_transfer *t
> ) {
> - unsigned bits = spi->bits_per_word;
> + unsigned bits = t->bits_per_word ? : spi->bits_per_word;
> unsigned count = t->len;
> const u8 *tx = t->tx_buf;
> u8 *rx = t->rx_buf;
> @@ -94,7 +94,7 @@ static unsigned bitbang_txrx_16(
> unsigned ns,
> struct spi_transfer *t
> ) {
> - unsigned bits = spi->bits_per_word;
> + unsigned bits = t->bits_per_word ? : spi->bits_per_word;
> unsigned count = t->len;
> const u16 *tx = t->tx_buf;
> u16 *rx = t->rx_buf;
> @@ -120,7 +120,7 @@ static unsigned bitbang_txrx_32(
> unsigned ns,
> struct spi_transfer *t
> ) {
> - unsigned bits = spi->bits_per_word;
> + unsigned bits = t->bits_per_word ? : spi->bits_per_word;
> unsigned count = t->len;
> const u32 *tx = t->tx_buf;
> u32 *rx = t->rx_buf;
> --
> 1.7.1
>
------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Discover what all the cheering's about.
Get your free trial download today.
http://p.sf.net/sfu/quest-dev2dev2
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2011-06-03 21:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-01 16:36 [PATCH] spi: bitbang: initialize bits_per_word as specified by spi message Anatolij Gustschin
[not found] ` <1306946209-28553-1-git-send-email-agust-ynQEQJNshbs@public.gmane.org>
2011-06-03 21:01 ` Grant Likely
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).