ar71xx: Add ath79_register_m25p80_large to support >16MB SPI chips
authorFelix Fietkau <nbd@openwrt.org>
Sat, 19 Dec 2015 11:32:20 +0000 (11:32 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sat, 19 Dec 2015 11:32:20 +0000 (11:32 +0000)
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>
SVN-Revision: 47952

target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.c
target/linux/ar71xx/files/arch/mips/ath79/dev-m25p80.h

index 9323b3123390ac29458566c4a3f69f24ed9aceef..e5831d48839a0a50797fec2d047f777ae98a2f78 100644 (file)
@@ -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)
 {
index 637b41a7d818a4499fc0e95ab5e9bcb91f5e4e53..5e660163013cb0ffac6caec9e429530191944248 100644 (file)
@@ -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 */