summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorBryan Wu <bryan.wu@analog.com>2007-12-05 08:45:19 +0100
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-12-05 18:21:20 +0100
commitc3061abb9e95920407288cba143dc1af0babf099 (patch)
tree2dcb35cfdbb210fe0c7b9bc5ae81741aa81baa26 /drivers/spi
parentspi: spi_bfin: handle multiple spi_masters (diff)
downloadlinux-c3061abb9e95920407288cba143dc1af0babf099.tar.xz
linux-c3061abb9e95920407288cba143dc1af0babf099.zip
spi: spi_bfin: bugfix for 8..16 bit word sizes
Fix bug in u16_cs_chg_reader to read data_len-2 bytes data firstly, then read out the last 2 bytes data Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi_bfin5xx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/spi/spi_bfin5xx.c b/drivers/spi/spi_bfin5xx.c
index c4c4905e0aa1..25b0efc5910e 100644
--- a/drivers/spi/spi_bfin5xx.c
+++ b/drivers/spi/spi_bfin5xx.c
@@ -501,7 +501,7 @@ static void u16_cs_chg_reader(struct driver_data *drv_data)
cs_active(drv_data, chip);
dummy_read(drv_data);
- while (drv_data->rx < drv_data->rx_end) {
+ while (drv_data->rx < drv_data->rx_end - 2) {
cs_deactive(drv_data, chip);
if (chip->cs_chg_udelay)