[Cerowrt-devel] [PATCH] [lantiq] adds dgn3500 support
John Crispin
blogic at openwrt.org
Tue Nov 13 08:23:39 EST 2012
backport from openwrt AA branch r34183
makes the unit fully functional, spi flash is a bit slow as we use gpio
bitbanging until the irq issue of the hardwrae spi is fixed
Signed-off-by: John Crispin <blogic at openwrt.org>
---
target/linux/lantiq/ar9/config-default | 12 ++++++++++--
target/linux/lantiq/ar9/profiles/002-netgear.mk | 2 +-
target/linux/lantiq/ar9/target.mk | 2 +-
.../files/arch/mips/lantiq/xway/mach-netgear.c | 18 ++++++++++++++++++
4 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/target/linux/lantiq/ar9/config-default b/target/linux/lantiq/ar9/config-default
index 67b6a46..f1ec989 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_WBMR=y
CONFIG_LANTIQ_MACH_P2601HNFX=y
CONFIG_LANTIQ_MACH_H201L=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_TYPE_XWAY=y
CONFIG_SOC_XWAY=y
# CONFIG_SOC_SVIP is not set
+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/ar9/profiles/002-netgear.mk b/target/linux/lantiq/ar9/profiles/002-netgear.mk
index a3c83bb..928dc8e 100644
--- a/target/linux/lantiq/ar9/profiles/002-netgear.mk
+++ b/target/linux/lantiq/ar9/profiles/002-netgear.mk
@@ -1,6 +1,6 @@
define Profile/DGN3500B
NAME:=DGN3500B Netgear
- PACKAGES:= kmod-usb-core kmod-usb-dwc-otg
+ PACKAGES:= kmod-usb-core kmod-usb-dwc-otg kmod-ath9k kmod-ltq-dsl-firmware-b-ar9
endef
define Profile/DGN3500B/Description
diff --git a/target/linux/lantiq/ar9/target.mk b/target/linux/lantiq/ar9/target.mk
index cb57b88..0d35fa0 100644
--- a/target/linux/lantiq/ar9/target.mk
+++ b/target/linux/lantiq/ar9/target.mk
@@ -5,7 +5,7 @@ FEATURES:=squashfs jffs2 atm
DEFAULT_PACKAGES+=kmod-pppoa ppp-mod-pppoa linux-atm atm-tools br2684ctl kmod-ltq-dsl-ar9 ltq-dsl-app \
kmod-input-gpio-keys-polled kmod-ledtrig-netdev kmod-leds-gpio kmod-button-hotplug \
- swconfig
+ swconfig wpad-mini
define Target/Description
Lantiq AR9
diff --git a/target/linux/lantiq/files/arch/mips/lantiq/xway/mach-netgear.c b/target/linux/lantiq/files/arch/mips/lantiq/xway/mach-netgear.c
index 29b0728..bb28537 100644
--- a/target/linux/lantiq/files/arch/mips/lantiq/xway/mach-netgear.c
+++ b/target/linux/lantiq/files/arch/mips/lantiq/xway/mach-netgear.c
@@ -22,6 +22,7 @@
#include <linux/etherdevice.h>
#include <linux/kobject.h>
#include <linux/sysfs.h>
+#include <linux/rtl8366.h>
#include <lantiq_soc.h>
#include <irq.h>
@@ -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,
--
1.7.10.4
More information about the Cerowrt-devel
mailing list