From 3b419e506cbde72169dfe12e1dd402694e304431 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Tue, 13 Nov 2012 08:54:14 +0000 Subject: [PATCH] fixes ar9 / dgn3500 support SVN-Revision: 34180 --- target/linux/lantiq/ar9/config-default | 12 ++++++++++-- .../arch/mips/lantiq/xway/mach-netgear.c | 18 ++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/target/linux/lantiq/ar9/config-default b/target/linux/lantiq/ar9/config-default index 7279cd3be45c..c45826ff82ae 100644 --- a/target/linux/lantiq/ar9/config-default +++ b/target/linux/lantiq/ar9/config-default @@ -1,13 +1,15 @@ CONFIG_ADM6996_PHY=y CONFIG_AR8216_PHY=y -# CONFIG_ATMEL_PWM is not set CONFIG_CLKDEV_LOOKUP=y CONFIG_FSNOTIFY=y CONFIG_HAVE_MACH_CLKDEV=y +CONFIG_HOTPLUG_PCI=y +# CONFIG_HOTPLUG_PCI_CPCI is not set +CONFIG_HOTPLUG_PCI_FAKE=y +# CONFIG_HOTPLUG_PCI_SHPC is not set CONFIG_HW_HAS_PCI=y CONFIG_INPUT=y CONFIG_INPUT_EVDEV=y -# CONFIG_INPUT_GPIO_BUTTONS is not set CONFIG_INPUT_POLLDEV=y CONFIG_IRQ_FORCED_THREADING=y # CONFIG_ISDN is not set @@ -22,8 +24,10 @@ CONFIG_LANTIQ_MACH_NETGEAR=y CONFIG_LANTIQ_MACH_P2601HNFX=y CONFIG_LANTIQ_MACH_WBMR=y # CONFIG_LANTIQ_VRX200 is not set +CONFIG_M25PXX_USE_FAST_READ=y CONFIG_MDIO_BOARDINFO=y CONFIG_MTD_BLOCK2MTD=y +CONFIG_MTD_M25P80=y CONFIG_PCI=y # CONFIG_PCIEPORTBUS is not set # CONFIG_PCIE_LANTIQ is not set @@ -36,5 +40,9 @@ CONFIG_RTL8306_PHY=y # CONFIG_SOC_SVIP is not set CONFIG_SOC_TYPE_XWAY=y CONFIG_SOC_XWAY=y +CONFIG_SPI=y +CONFIG_SPI_BITBANG=y +CONFIG_SPI_GPIO=y +CONFIG_SPI_MASTER=y CONFIG_USB_ARCH_HAS_XHCI=y CONFIG_USB_SUPPORT=y diff --git a/target/linux/lantiq/files-3.3/arch/mips/lantiq/xway/mach-netgear.c b/target/linux/lantiq/files-3.3/arch/mips/lantiq/xway/mach-netgear.c index 29b0728102a4..bb28537bc0d7 100644 --- a/target/linux/lantiq/files-3.3/arch/mips/lantiq/xway/mach-netgear.c +++ b/target/linux/lantiq/files-3.3/arch/mips/lantiq/xway/mach-netgear.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -149,6 +150,22 @@ static int __init setup_ethaddr(char *str) } __setup("ethaddr=", setup_ethaddr); +#define smi_SCK 37 +#define smi_SDA 35 + +static struct rtl8366_platform_data rtl8366rb_data = { + .gpio_sda = smi_SDA, + .gpio_sck = smi_SCK, +}; + +static struct platform_device rtl8366rb_device = { + .name = RTL8366RB_DRIVER_NAME, + .id = -1, + .dev = { + .platform_data = &rtl8366rb_data, + } +}; + static u16 dgn3500_eeprom_data[ATH9K_PLAT_EEP_MAX_WORDS] = {0}; static ssize_t ath_eeprom_read(struct file *filp, struct kobject *kobj, @@ -231,6 +248,7 @@ static void __init dgn3500_init(void) ltq_pci_ath_fixup(14, dgn3500_eeprom_data); /* The usb power is always enabled, protected by a fuse */ xway_register_dwc(-1); + platform_device_register(&rtl8366rb_device); } MIPS_MACHINE(LANTIQ_MACH_DGN3500B, -- 2.30.2