Allow platfom_data to override the mode bits. This is needed for
supporting the rtc on the Routerstation Pro.
---
.../arch/mips/include/asm/mach-ar71xx/platform.h | 1 +
target/linux/ar71xx/files/drivers/spi/ar71xx_spi.c | 2 ++
2 files changed, 3 insertions(+), 0 deletions(-)
diff --git
a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h
b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h
index 145e79f..0214b80 100644
--- a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h
+++ b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/platform.h
@@ -52,6 +52,7 @@ struct ar71xx_ehci_platform_data {
struct ar71xx_spi_platform_data {
unsigned bus_num;
unsigned num_chipselect;
+ unsigned mode_bits;
u32 (*get_ioc_base)(u8 chip_select, int cs_high, int is_on);
};
diff --git a/target/linux/ar71xx/files/drivers/spi/ar71xx_spi.c
b/target/linux/ar71xx/files/drivers/spi/ar71xx_spi.c
index cb6e1b7..50d0f0e 100644
--- a/target/linux/ar71xx/files/drivers/spi/ar71xx_spi.c
+++ b/target/linux/ar71xx/files/drivers/spi/ar71xx_spi.c
@@ -214,6 +214,8 @@ static int ar71xx_spi_probe(struct platform_device *pdev)
sp->bitbang.master->num_chipselect = pdata->num_chipselect;
if (pdata->get_ioc_base)
sp->get_ioc_base = pdata->get_ioc_base;
+ if (pdata->mode_bits)
+ master->mode_bits = pdata->mode_bits;
} else {
sp->bitbang.master->bus_num = 0;
sp->bitbang.master->num_chipselect = 3;
--
1.6.5
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel