Blackfin SPI Driver: use len_in_bytes when we care about the number of bytes transferred
authorMike Frysinger <vapier.adi@gmail.com>
Tue, 7 Apr 2009 02:00:34 +0000 (19:00 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 7 Apr 2009 15:31:04 +0000 (08:31 -0700)
Use len_in_bytes when we care about the number of bytes transferred rather
than the number of spi transactions.  (this value will be the same for
8bit transfers, but not any other sizes)

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/spi/spi_bfin5xx.c

index 7ccd18a..6d3f606 100644 (file)
@@ -804,7 +804,7 @@ static void pump_transfers(unsigned long data)
                        if (bfin_addr_dcachable((unsigned long) drv_data->rx))
                                invalidate_dcache_range((unsigned long) drv_data->rx,
                                                        (unsigned long) (drv_data->rx +
-                                                       drv_data->len));
+                                                       drv_data->len_in_bytes));
 
                        /* clear tx reg soformer data is not shifted out */
                        write_TDBR(drv_data, 0xFFFF);
@@ -830,7 +830,7 @@ static void pump_transfers(unsigned long data)
                        if (bfin_addr_dcachable((unsigned long) drv_data->tx))
                                flush_dcache_range((unsigned long) drv_data->tx,
                                                (unsigned long) (drv_data->tx +
-                                               drv_data->len));
+                                               drv_data->len_in_bytes));
 
                        /* start dma */
                        dma_enable_irq(drv_data->dma_channel);
@@ -893,7 +893,7 @@ static void pump_transfers(unsigned long data)
                        message->state = ERROR_STATE;
                } else {
                        /* Update total byte transfered */
-                       message->actual_length += drv_data->len;
+                       message->actual_length += drv_data->len_in_bytes;
 
                        /* Move to next transfer of this msg */
                        message->state = next_transfer(drv_data);