From d5666b98fa7a5e9441cf0c0977eb03f1b3611555 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Mon, 13 Jun 2016 21:50:13 +0200 Subject: lantiq: fix fritz7320 wifi support Signed-off-by: John Crispin --- ...-owrt-lantiq-wifi-and-ethernet-eeprom-handling.patch | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'target/linux/lantiq/patches-4.4') diff --git a/target/linux/lantiq/patches-4.4/0035-owrt-lantiq-wifi-and-ethernet-eeprom-handling.patch b/target/linux/lantiq/patches-4.4/0035-owrt-lantiq-wifi-and-ethernet-eeprom-handling.patch index 91a884d2ea..07e6a001eb 100644 --- a/target/linux/lantiq/patches-4.4/0035-owrt-lantiq-wifi-and-ethernet-eeprom-handling.patch +++ b/target/linux/lantiq/patches-4.4/0035-owrt-lantiq-wifi-and-ethernet-eeprom-handling.patch @@ -30,7 +30,7 @@ Signed-off-by: John Crispin +#endif /* _PCI_ATH_FIXUP */ --- a/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h +++ b/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h -@@ -104,5 +104,8 @@ int xrx200_gphy_boot(struct device *dev, +@@ -104,5 +104,8 @@ extern void ltq_pmu_enable(unsigned int module); extern void ltq_pmu_disable(unsigned int module); @@ -41,7 +41,7 @@ Signed-off-by: John Crispin #endif /* _LTQ_XWAY_H__ */ --- a/arch/mips/lantiq/xway/Makefile +++ b/arch/mips/lantiq/xway/Makefile -@@ -2,4 +2,7 @@ obj-y := prom.o sysctrl.o clk.o reset.o +@@ -2,4 +2,7 @@ obj-y += vmmc.o tffs.o @@ -51,7 +51,7 @@ Signed-off-by: John Crispin obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o --- /dev/null +++ b/arch/mips/lantiq/xway/ath_eep.c -@@ -0,0 +1,298 @@ +@@ -0,0 +1,307 @@ +/* + * Copyright (C) 2011 Luca Olivetti + * Copyright (C) 2011 John Crispin @@ -104,6 +104,7 @@ Signed-off-by: John Crispin + const __be32 *list; + const char *part; + phandle phandle; ++ u16 dev_ids[2] = { 0 }; + + if ((list = of_get_property(np, "ath,eep-flash", &i)) && i == 2 * + sizeof(*list) && (phandle = be32_to_cpup(list++)) && @@ -188,6 +189,14 @@ Signed-off-by: John Crispin + + } + ++ if (!of_property_read_u16_array(np, "ath,device-id", dev_ids, 2)) { ++ struct pci_dev *d = NULL; ++ ++ while ((d = pci_get_device(PCI_VENDOR_ID_ATHEROS, ++ dev_ids[0], d)) != NULL) ++ d->device = dev_ids[1]; ++ } ++ + if (!of_property_read_u32(np, "ath,led-pin", &led_pin)) { + ath9k_pdata.led_pin = led_pin; + dev_info(&pdev->dev, "using led pin %d.\n", led_pin); @@ -615,7 +624,7 @@ Signed-off-by: John Crispin +device_initcall(of_ralink_eeprom_init); --- a/drivers/net/ethernet/lantiq_etop.c +++ b/drivers/net/ethernet/lantiq_etop.c -@@ -840,7 +840,11 @@ ltq_etop_init(struct net_device *dev) +@@ -840,7 +840,11 @@ if (err) goto err_hw; -- cgit v1.2.3