diff mbox

[OpenWrt-Devel,v3,1/2] ar71xx: Add ath79_register_m25p80_large to support >16MB SPI chips

Message ID 3337582.2bTcbfO0Pd@debian64
State Superseded
Headers show

Commit Message

Christian Lamparter Sept. 22, 2015, 5:04 p.m. UTC
From: Chris R Blake <chrisrblake93@gmail.com>

The following patch is to add ath79_register_m25p80_large, which sets
is_flash to false to support bit banging. This is needed on some 32MB+
SPI chips, such as the S25FL256S1

Signed-off-by: Chris R Blake <chrisrblake93@gmail.com>
---
 target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c | 8 ++++++++
 target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h | 1 +
 2 files changed, 9 insertions(+)
diff mbox

Patch

diff --git a/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c b/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c
index 9323b31..e5831d4 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c
@@ -106,6 +106,14 @@  static void add_mtd_concat_notifier(void)
 	register_mtd_user(&not);
 }
 
+void __init ath79_register_m25p80_large(struct flash_platform_data *pdata)
+{
+	ath79_spi_data.bus_num = 0;
+	ath79_spi_data.num_chipselect = 1;
+	ath79_spi0_cdata.is_flash = false;
+	ath79_spi_info[0].platform_data = pdata;
+	ath79_register_spi(&ath79_spi_data, ath79_spi_info, 1);
+}
 
 void __init ath79_register_m25p80_multi(struct flash_platform_data *pdata)
 {
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h b/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h
index 637b41a..5e66016 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h
+++ b/target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h
@@ -12,6 +12,7 @@ 
 #include <linux/spi/flash.h>
 
 void ath79_register_m25p80(struct flash_platform_data *pdata) __init;
+void ath79_register_m25p80_large(struct flash_platform_data *pdata) __init;
 void ath79_register_m25p80_multi(struct flash_platform_data *pdata) __init;
 
 #endif /* _ATH79_DEV_M25P80_H */