ar71xx: improve SPI flash read/write performance
[openwrt.git] / target / linux / ar71xx / patches-3.2 / 202-spi-ath79-add-missing-HIGH-LOW-SCK-transition.patch
index 0b36ab6..08a76f5 100644 (file)
@@ -1,20 +1,21 @@
-From 0ad8cbbb978bc01de08eadd3357ea188302b83ce Mon Sep 17 00:00:00 2001
+From ea7e40aedae58b7a0f0ccd8658063de499734874 Mon Sep 17 00:00:00 2001
 From: Gabor Juhos <juhosg@openwrt.org>
 Date: Wed, 11 Jan 2012 20:33:41 +0100
 Subject: [PATCH 2/7] spi/ath79: add missing HIGH->LOW SCK transition
 
 Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
 ---
- drivers/spi/spi-ath79.c |    +
- 1 files changed, 1 insertions(+), 0 deletions(-)
+ drivers/spi/spi-ath79.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
 
 --- a/drivers/spi/spi-ath79.c
 +++ b/drivers/spi/spi-ath79.c
-@@ -193,6 +193,7 @@ static u32 ath79_spi_txrx_mode0(struct s
-               ath79_spi_delay(nsecs);
+@@ -200,6 +200,8 @@ static u32 ath79_spi_txrx_mode0(struct s
+               ath79_spi_delay(sp, nsecs);
                ath79_spi_wr(sp, AR71XX_SPI_REG_IOC, out | AR71XX_SPI_IOC_CLK);
-               ath79_spi_delay(nsecs);
-+              ath79_spi_wr(sp, AR71XX_SPI_REG_IOC, out);
+               ath79_spi_delay(sp, nsecs);
++              if (bits == 1)
++                      ath79_spi_wr(sp, AR71XX_SPI_REG_IOC, out);
  
                word <<= 1;
        }