Enable bitbang access for flash ath79 driver and 4 bytes address.
Currently ath79 driver uses ioremap to access flash. Switch to
bitbang to operatte SPI directly.
Change-Id: Ia24fd8a072df0a374c1865ae7d3a4b513b62309d
diff --git a/arch/mips/ath79/dev-m25p80.c b/arch/mips/ath79/dev-m25p80.c
index c8bafe2..98e7b10 100644
--- a/arch/mips/ath79/dev-m25p80.c
+++ b/arch/mips/ath79/dev-m25p80.c
@@ -33,7 +33,7 @@
.bus_num = 0,
.chip_select = 0,
.max_speed_hz = 25000000,
- .modalias = "m25p80",
+ .modalias = "mx25l25655e",
.controller_data = &ath79_spi0_cdata,
},
{
diff --git a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
index 0559488..b7d5b83 100644
--- a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
+++ b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
@@ -32,7 +32,7 @@
#define AR71XX_OHCI_BASE 0x1c000000
#define AR71XX_OHCI_SIZE 0x1000
#define AR71XX_SPI_BASE 0x1f000000
-#define AR71XX_SPI_SIZE 0x01000000
+#define AR71XX_SPI_SIZE 0x02000000
#define AR71XX_DDR_CTRL_BASE (AR71XX_APB_BASE + 0x00000000)
#define AR71XX_DDR_CTRL_SIZE 0x100
diff --git a/drivers/spi/spi-ath79.c b/drivers/spi/spi-ath79.c
index 07e2a14..8bef37c 100644
--- a/drivers/spi/spi-ath79.c
+++ b/drivers/spi/spi-ath79.c
@@ -460,10 +460,14 @@
return ret;
cdata = spi->controller_data;
+/*
+ Disable ioremap way to access flash, use bitbang directly.
+ Checking with QCA.
if (cdata->is_flash)
sp->bitbang.txrx_bufs = ath79_spi_txrx_bufs;
else
- sp->bitbang.txrx_bufs = spi_bitbang_bufs;
+*/
+ sp->bitbang.txrx_bufs = spi_bitbang_bufs;
return ret;
}