Quellcode durchsuchen

kernel/3.10: refresh all target patches

Signed-off-by: Gabor Juhos <[email protected]>

SVN-Revision: 38182
Gabor Juhos vor 12 Jahren
Ursprung
Commit
0380904acb
48 geänderte Dateien mit 199 neuen und 564 gelöschten Zeilen
  1. 2 2
      target/linux/ar71xx/patches-3.10/404-mtd-wrt160nl-trx-parser.patch
  2. 3 3
      target/linux/ar71xx/patches-3.10/405-mtd-tp-link-partition-parser.patch
  3. 2 2
      target/linux/atheros/patches-3.10/130-watchdog.patch
  4. 3 10
      target/linux/imx6/patches-3.10/0009-of-pci-Provide-support-for-parsing-PCI-DT-ranges-pro.patch
  5. 1 3
      target/linux/imx6/patches-3.10/0010-ARM-imx-Add-LVDS-general-purpose-clocks-to-i.MX6Q.patch
  6. 0 2
      target/linux/imx6/patches-3.10/0011-ARM-imx6q-Add-PCIe-bits-to-GPR-syscon-definition.patch
  7. 6 12
      target/linux/imx6/patches-3.10/0012-PCI-imx6-Add-support-for-i.MX6-PCIe-controller.patch
  8. 2 2
      target/linux/imx6/patches-3.10/011-pci-tweaks.patch
  9. 3 58
      target/linux/lantiq/patches-3.10/0001-MIPS-lantiq-add-pcie-driver.patch
  10. 0 8
      target/linux/lantiq/patches-3.10/0002-MIPS-lantiq-adds-minimal-dcdc-driver.patch
  11. 0 6
      target/linux/lantiq/patches-3.10/0004-MIPS-lantiq-falcon-add-cpu-feature-override.h.patch
  12. 1 6
      target/linux/lantiq/patches-3.10/0005-MIPS-lantiq-falcon-fix-asc-clock-definition.patch
  13. 1 8
      target/linux/lantiq/patches-3.10/0006-MIPS-lantiq-dtb-image-hack.patch
  14. 0 8
      target/linux/lantiq/patches-3.10/0007-MIPS-lantiq-handle-vmmc-memory-reservation.patch
  15. 4 23
      target/linux/lantiq/patches-3.10/0009-MIPS-lantiq-add-atm-hack.patch
  16. 14 26
      target/linux/lantiq/patches-3.10/0010-MIPS-lantiq-wifi-and-ethernet-eeprom-handling.patch
  17. 1 6
      target/linux/lantiq/patches-3.10/0011-MIPS-lantiq-add-reset-controller-api-support.patch
  18. 2 7
      target/linux/lantiq/patches-3.10/0012-MTD-m25p80-allow-loading-mtd-name-from-OF.patch
  19. 1 11
      target/linux/lantiq/patches-3.10/0013-MTD-lantiq-Add-NAND-support-on-Lantiq-Falcon-SoC.patch
  20. 1 6
      target/linux/lantiq/patches-3.10/0014-MTD-lantiq-handle-NO_XIP-on-cfi0001-flash.patch
  21. 1 6
      target/linux/lantiq/patches-3.10/0015-MTD-lantiq-xway-fix-invalid-operator.patch
  22. 1 6
      target/linux/lantiq/patches-3.10/0016-MTD-lantiq-xway-the-latched-command-should-be-persis.patch
  23. 0 5
      target/linux/lantiq/patches-3.10/0017-MTD-lantiq-xway-remove-endless-loop.patch
  24. 2 7
      target/linux/lantiq/patches-3.10/0018-MTD-lantiq-xway-add-missing-write_buf-and-read_buf-t.patch
  25. 1 12
      target/linux/lantiq/patches-3.10/0019-NET-lantiq-adds-PHY11G-firmware-blobs.patch
  26. 0 13
      target/linux/lantiq/patches-3.10/0020-NET-MIPS-lantiq-adds-xrx200-net.patch
  27. 41 48
      target/linux/lantiq/patches-3.10/0021-NET-MIPS-lantiq-update-etop-driver-for-devicetree.patch
  28. 3 10
      target/linux/lantiq/patches-3.10/0022-NET-multi-phy-support.patch
  29. 1 8
      target/linux/lantiq/patches-3.10/0023-NET-add-of_get_mac_address_mtd.patch
  30. 1 11
      target/linux/lantiq/patches-3.10/0024-GPIO-MIPS-lantiq-add-gpio-driver-for-falcon-SoC.patch
  31. 10 23
      target/linux/lantiq/patches-3.10/0025-GPIO-add-gpio_export_with_name.patch
  32. 4 9
      target/linux/lantiq/patches-3.10/0026-pinctrl-lantiq-fix-up-pinmux.patch
  33. 6 11
      target/linux/lantiq/patches-3.10/0027-pinctrl-lantiq-add-missing-gphy-led-setup.patch
  34. 4 9
      target/linux/lantiq/patches-3.10/0028-pinctrl-lantiq-add-missing-pin-definition-to-falcon-.patch
  35. 1 6
      target/linux/lantiq/patches-3.10/0029-serial-MIPS-lantiq-add-clk_enable-call-to-driver.patch
  36. 0 5
      target/linux/lantiq/patches-3.10/0030-serial-MIPS-lantiq-fix-clock-error-check.patch
  37. 2 15
      target/linux/lantiq/patches-3.10/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch
  38. 1 8
      target/linux/lantiq/patches-3.10/0032-USB-fix-roothub-for-IFXHCD.patch
  39. 2 12
      target/linux/lantiq/patches-3.10/0033-SPI-MIPS-lantiq-adds-spi-xway.patch
  40. 1 8
      target/linux/lantiq/patches-3.10/0034-reset-Fix-compile-when-reset-RESET_CONTROLLER-is-not.patch
  41. 1 12
      target/linux/lantiq/patches-3.10/0101-timer-backport.patch
  42. 2 2
      target/linux/ramips/patches-3.10/0004-watchdog-MIPS-add-ralink-watchdog-driver.patch
  43. 13 23
      target/linux/ramips/patches-3.10/0006-GPIO-MIPS-ralink-add-gpio-driver-for-ralink-SoC.patch
  44. 34 58
      target/linux/ramips/patches-3.10/0122-pinmux.patch
  45. 4 4
      target/linux/ramips/patches-3.10/0202-owrt-USB-adds-dwc_otg.patch
  46. 1 1
      target/linux/ramips/patches-3.10/0204-owrt-mtd-split-remove-padding.patch
  47. 14 22
      target/linux/ramips/patches-3.10/0205-uvc-add-iPassion-iP2970-support.patch
  48. 1 1
      target/linux/x86/patches-3.10/012-export_erase_write.patch

+ 2 - 2
target/linux/ar71xx/patches-3.10/404-mtd-wrt160nl-trx-parser.patch

@@ -1,6 +1,6 @@
 --- a/drivers/mtd/Kconfig
 --- a/drivers/mtd/Kconfig
 +++ b/drivers/mtd/Kconfig
 +++ b/drivers/mtd/Kconfig
-@@ -176,6 +176,12 @@ config MTD_BCM47XX_PARTS
+@@ -208,6 +208,12 @@ config MTD_BCM47XX_PARTS
  	  This provides partitions parser for devices based on BCM47xx
  	  This provides partitions parser for devices based on BCM47xx
  	  boards.
  	  boards.
  
  
@@ -15,7 +15,7 @@
  	depends on ADM5120 || ATHEROS_AR231X || ATHEROS_AR71XX || ATH79
  	depends on ADM5120 || ATHEROS_AR231X || ATHEROS_AR71XX || ATH79
 --- a/drivers/mtd/Makefile
 --- a/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
-@@ -14,6 +14,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
+@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
  obj-$(CONFIG_MTD_BCM63XX_PARTS)	+= bcm63xxpart.o
  obj-$(CONFIG_MTD_BCM63XX_PARTS)	+= bcm63xxpart.o
  obj-$(CONFIG_MTD_BCM47XX_PARTS)	+= bcm47xxpart.o
  obj-$(CONFIG_MTD_BCM47XX_PARTS)	+= bcm47xxpart.o
  obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o
  obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o

+ 3 - 3
target/linux/ar71xx/patches-3.10/405-mtd-tp-link-partition-parser.patch

@@ -1,6 +1,6 @@
 --- a/drivers/mtd/Kconfig
 --- a/drivers/mtd/Kconfig
 +++ b/drivers/mtd/Kconfig
 +++ b/drivers/mtd/Kconfig
-@@ -178,7 +178,7 @@ config MTD_BCM47XX_PARTS
+@@ -210,7 +210,7 @@ config MTD_BCM47XX_PARTS
  
  
  config MTD_WRT160NL_PARTS
  config MTD_WRT160NL_PARTS
  	tristate "Linksys WRT160NL partitioning support"
  	tristate "Linksys WRT160NL partitioning support"
@@ -9,7 +9,7 @@
  	---help---
  	---help---
  	   Linksys WRT160NL partitioning support
  	   Linksys WRT160NL partitioning support
  
  
-@@ -198,6 +198,12 @@ config MTD_MYLOADER_PARTS
+@@ -230,6 +230,12 @@ config MTD_MYLOADER_PARTS
  	  You will still need the parsing functions to be called by the driver
  	  You will still need the parsing functions to be called by the driver
  	  for your particular device. It won't happen automatically.
  	  for your particular device. It won't happen automatically.
  
  
@@ -24,7 +24,7 @@
  config MTD_BLKDEVS
  config MTD_BLKDEVS
 --- a/drivers/mtd/Makefile
 --- a/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
 +++ b/drivers/mtd/Makefile
-@@ -14,6 +14,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
+@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
  obj-$(CONFIG_MTD_BCM63XX_PARTS)	+= bcm63xxpart.o
  obj-$(CONFIG_MTD_BCM63XX_PARTS)	+= bcm63xxpart.o
  obj-$(CONFIG_MTD_BCM47XX_PARTS)	+= bcm47xxpart.o
  obj-$(CONFIG_MTD_BCM47XX_PARTS)	+= bcm47xxpart.o
  obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o
  obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o

+ 2 - 2
target/linux/atheros/patches-3.10/130-watchdog.patch

@@ -202,7 +202,7 @@
 +module_exit(exit_ar2315_wdt);
 +module_exit(exit_ar2315_wdt);
 --- a/drivers/watchdog/Kconfig
 --- a/drivers/watchdog/Kconfig
 +++ b/drivers/watchdog/Kconfig
 +++ b/drivers/watchdog/Kconfig
-@@ -1104,6 +1104,12 @@ config LANTIQ_WDT
+@@ -1113,6 +1113,12 @@ config LANTIQ_WDT
  	help
  	help
  	  Hardware driver for the Lantiq SoC Watchdog Timer.
  	  Hardware driver for the Lantiq SoC Watchdog Timer.
  
  
@@ -217,7 +217,7 @@
  # POWERPC Architecture
  # POWERPC Architecture
 --- a/drivers/watchdog/Makefile
 --- a/drivers/watchdog/Makefile
 +++ b/drivers/watchdog/Makefile
 +++ b/drivers/watchdog/Makefile
-@@ -130,6 +130,7 @@ obj-$(CONFIG_WDT_MTX1) += mtx-1_wdt.o
+@@ -131,6 +131,7 @@ obj-$(CONFIG_GPIO_WDT) += gpio_wdt.o
  obj-$(CONFIG_PNX833X_WDT) += pnx833x_wdt.o
  obj-$(CONFIG_PNX833X_WDT) += pnx833x_wdt.o
  obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
  obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
  obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
  obj-$(CONFIG_AR7_WDT) += ar7_wdt.o

+ 3 - 10
target/linux/imx6/patches-3.10/0009-of-pci-Provide-support-for-parsing-PCI-DT-ranges-pro.patch

@@ -45,11 +45,9 @@ Signed-off-by: Jason Cooper <[email protected]>
  include/linux/of_address.h | 48 +++++++++++++++++++++++++++++++++
  include/linux/of_address.h | 48 +++++++++++++++++++++++++++++++++
  2 files changed, 115 insertions(+)
  2 files changed, 115 insertions(+)
 
 
-diff --git a/drivers/of/address.c b/drivers/of/address.c
-index 04da786..fdd0636 100644
 --- a/drivers/of/address.c
 --- a/drivers/of/address.c
 +++ b/drivers/of/address.c
 +++ b/drivers/of/address.c
-@@ -227,6 +227,73 @@ int of_pci_address_to_resource(struct device_node *dev, int bar,
+@@ -231,6 +231,73 @@ int of_pci_address_to_resource(struct de
  	return __of_address_to_resource(dev, addrp, size, flags, NULL, r);
  	return __of_address_to_resource(dev, addrp, size, flags, NULL, r);
  }
  }
  EXPORT_SYMBOL_GPL(of_pci_address_to_resource);
  EXPORT_SYMBOL_GPL(of_pci_address_to_resource);
@@ -123,8 +121,6 @@ index 04da786..fdd0636 100644
  #endif /* CONFIG_PCI */
  #endif /* CONFIG_PCI */
  
  
  /*
  /*
-diff --git a/include/linux/of_address.h b/include/linux/of_address.h
-index 0506eb5..4c2e6f2 100644
 --- a/include/linux/of_address.h
 --- a/include/linux/of_address.h
 +++ b/include/linux/of_address.h
 +++ b/include/linux/of_address.h
 @@ -4,6 +4,36 @@
 @@ -4,6 +4,36 @@
@@ -164,7 +160,7 @@ index 0506eb5..4c2e6f2 100644
  #ifdef CONFIG_OF_ADDRESS
  #ifdef CONFIG_OF_ADDRESS
  extern u64 of_translate_address(struct device_node *np, const __be32 *addr);
  extern u64 of_translate_address(struct device_node *np, const __be32 *addr);
  extern bool of_can_translate_address(struct device_node *dev);
  extern bool of_can_translate_address(struct device_node *dev);
-@@ -27,6 +57,11 @@ static inline unsigned long pci_address_to_pio(phys_addr_t addr) { return -1; }
+@@ -27,6 +57,11 @@ static inline unsigned long pci_address_
  #define pci_address_to_pio pci_address_to_pio
  #define pci_address_to_pio pci_address_to_pio
  #endif
  #endif
  
  
@@ -176,7 +172,7 @@ index 0506eb5..4c2e6f2 100644
  #else /* CONFIG_OF_ADDRESS */
  #else /* CONFIG_OF_ADDRESS */
  #ifndef of_address_to_resource
  #ifndef of_address_to_resource
  static inline int of_address_to_resource(struct device_node *dev, int index,
  static inline int of_address_to_resource(struct device_node *dev, int index,
-@@ -53,6 +88,19 @@ static inline const __be32 *of_get_address(struct device_node *dev, int index,
+@@ -53,6 +88,19 @@ static inline const __be32 *of_get_addre
  {
  {
  	return NULL;
  	return NULL;
  }
  }
@@ -196,6 +192,3 @@ index 0506eb5..4c2e6f2 100644
  #endif /* CONFIG_OF_ADDRESS */
  #endif /* CONFIG_OF_ADDRESS */
  
  
  
  
--- 
-1.8.4
-

+ 1 - 3
target/linux/imx6/patches-3.10/0010-ARM-imx-Add-LVDS-general-purpose-clocks-to-i.MX6Q.patch

@@ -10,8 +10,6 @@ Signed-off-by: Sean Cross <[email protected]>
  arch/arm/mach-imx/clk-imx6q.c                      |   20 +++++++++++++++++++-
  arch/arm/mach-imx/clk-imx6q.c                      |   20 +++++++++++++++++++-
  2 files changed, 23 insertions(+), 1 deletion(-)
  2 files changed, 23 insertions(+), 1 deletion(-)
 
 
-diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
-index 9181a24..d94be84 100644
 --- a/arch/arm/mach-imx/clk-imx6q.c
 --- a/arch/arm/mach-imx/clk-imx6q.c
 +++ b/arch/arm/mach-imx/clk-imx6q.c
 +++ b/arch/arm/mach-imx/clk-imx6q.c
 @@ -205,6 +205,11 @@ static const char *vpu_axi_sels[]	= { "a
 @@ -205,6 +205,11 @@ static const char *vpu_axi_sels[]	= { "a
@@ -36,7 +34,7 @@ index 9181a24..d94be84 100644
  };
  };
  
  
  static struct clk *clk[clk_max];
  static struct clk *clk[clk_max];
-@@ -340,6 +347,18 @@ int __init mx6q_clocks_init(void)
+@@ -340,6 +346,18 @@ int __init mx6q_clocks_init(void)
  			base + 0xe0, 0, 2, 0, clk_enet_ref_table,
  			base + 0xe0, 0, 2, 0, clk_enet_ref_table,
  			&imx_ccm_lock);
  			&imx_ccm_lock);
  
  

+ 0 - 2
target/linux/imx6/patches-3.10/0011-ARM-imx6q-Add-PCIe-bits-to-GPR-syscon-definition.patch

@@ -8,8 +8,6 @@ Signed-off-by: Sean Cross <[email protected]>
  include/linux/mfd/syscon/imx6q-iomuxc-gpr.h |    8 ++++++++
  include/linux/mfd/syscon/imx6q-iomuxc-gpr.h |    8 ++++++++
  1 file changed, 8 insertions(+)
  1 file changed, 8 insertions(+)
 
 
-diff --git a/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h b/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h
-index b6bdcd6..e00e9f3 100644
 --- a/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h
 --- a/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h
 +++ b/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h
 +++ b/include/linux/mfd/syscon/imx6q-iomuxc-gpr.h
 @@ -241,6 +241,12 @@
 @@ -241,6 +241,12 @@

+ 6 - 12
target/linux/imx6/patches-3.10/0012-PCI-imx6-Add-support-for-i.MX6-PCIe-controller.patch

@@ -17,12 +17,10 @@ Acked-by: Sascha Hauer <[email protected]>
  7 files changed, 611 insertions(+), 1 deletion(-)
  7 files changed, 611 insertions(+), 1 deletion(-)
  create mode 100644 drivers/pci/host/pci-imx6.c
  create mode 100644 drivers/pci/host/pci-imx6.c
 
 
-diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
-index ccd55c2..125202e 100644
 --- a/arch/arm/boot/dts/imx6qdl.dtsi
 --- a/arch/arm/boot/dts/imx6qdl.dtsi
 +++ b/arch/arm/boot/dts/imx6qdl.dtsi
 +++ b/arch/arm/boot/dts/imx6qdl.dtsi
-@@ -116,6 +116,22 @@
- 			arm,data-latency = <4 2 3>;
+@@ -108,6 +108,22 @@
+ 			cache-level = <2>;
  		};
  		};
  
  
 +		pcie: pcie@0x01000000 {
 +		pcie: pcie@0x01000000 {
@@ -44,11 +42,9 @@ index ccd55c2..125202e 100644
  		pmu {
  		pmu {
  			compatible = "arm,cortex-a9-pmu";
  			compatible = "arm,cortex-a9-pmu";
  			interrupts = <0 94 0x04>;
  			interrupts = <0 94 0x04>;
-diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
-index 29a8af6..e6ac281 100644
 --- a/arch/arm/mach-imx/Kconfig
 --- a/arch/arm/mach-imx/Kconfig
 +++ b/arch/arm/mach-imx/Kconfig
 +++ b/arch/arm/mach-imx/Kconfig
-@@ -801,6 +801,8 @@ config SOC_IMX6Q
+@@ -806,6 +806,8 @@ config SOC_IMX6Q
  	select HAVE_IMX_SRC
  	select HAVE_IMX_SRC
  	select HAVE_SMP
  	select HAVE_SMP
  	select MFD_SYSCON
  	select MFD_SYSCON
@@ -57,13 +53,11 @@ index 29a8af6..e6ac281 100644
  	select PINCTRL
  	select PINCTRL
  	select PINCTRL_IMX6Q
  	select PINCTRL_IMX6Q
  	select PL310_ERRATA_588369 if CACHE_PL310
  	select PL310_ERRATA_588369 if CACHE_PL310
-diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
-index d94be84..6956995 100644
 --- a/arch/arm/mach-imx/clk-imx6q.c
 --- a/arch/arm/mach-imx/clk-imx6q.c
 +++ b/arch/arm/mach-imx/clk-imx6q.c
 +++ b/arch/arm/mach-imx/clk-imx6q.c
-@@ -621,6 +621,10 @@ static void __init imx6q_clocks_init(struct device_node *ccm_node)
- 	if (ret)
- 		pr_warn("failed to set up CLKO: %d\n", ret);
+@@ -586,6 +586,10 @@ int __init mx6q_clocks_init(void)
+ 		clk_prepare_enable(clk[usbphy2_gate]);
+ 	}
  
  
 +	/* All existing boards with PCIe use LVDS1 */
 +	/* All existing boards with PCIe use LVDS1 */
 +	if (IS_ENABLED(CONFIG_PCI_IMX6))
 +	if (IS_ENABLED(CONFIG_PCI_IMX6))

+ 2 - 2
target/linux/imx6/patches-3.10/011-pci-tweaks.patch

@@ -11,7 +11,7 @@
  		};
  		};
 --- a/drivers/pci/host/pci-imx6.c
 --- a/drivers/pci/host/pci-imx6.c
 +++ b/drivers/pci/host/pci-imx6.c
 +++ b/drivers/pci/host/pci-imx6.c
-@@ -200,12 +200,6 @@
+@@ -200,12 +200,6 @@ static int pcie_phy_write(void __iomem *
  static int imx6q_pcie_abort_handler(unsigned long addr,
  static int imx6q_pcie_abort_handler(unsigned long addr,
  		unsigned int fsr, struct pt_regs *regs)
  		unsigned int fsr, struct pt_regs *regs)
  {
  {
@@ -24,7 +24,7 @@
  	return 0;
  	return 0;
  }
  }
  
  
-@@ -322,7 +316,7 @@
+@@ -322,7 +316,7 @@ static void imx6_pcie_host_init(struct p
  			IMX6Q_GPR12_PCIE_CTL_2, 1 << 10);
  			IMX6Q_GPR12_PCIE_CTL_2, 1 << 10);
  
  
  	while (!dw_pcie_link_up(pp)) {
  	while (!dw_pcie_link_up(pp)) {

+ 3 - 58
target/linux/lantiq/patches-3.10/0001-MIPS-lantiq-add-pcie-driver.patch

@@ -38,8 +38,6 @@ Subject: [PATCH 01/34] MIPS: lantiq: add pcie driver
  create mode 100644 arch/mips/pci/ifxmips_pcie_vr9.h
  create mode 100644 arch/mips/pci/ifxmips_pcie_vr9.h
  create mode 100644 arch/mips/pci/pcie-lantiq.h
  create mode 100644 arch/mips/pci/pcie-lantiq.h
 
 
-diff --git a/arch/mips/lantiq/Kconfig b/arch/mips/lantiq/Kconfig
-index c002191..1621b1d 100644
 --- a/arch/mips/lantiq/Kconfig
 --- a/arch/mips/lantiq/Kconfig
 +++ b/arch/mips/lantiq/Kconfig
 +++ b/arch/mips/lantiq/Kconfig
 @@ -17,6 +17,7 @@ config SOC_XWAY
 @@ -17,6 +17,7 @@ config SOC_XWAY
@@ -66,8 +64,6 @@ index c002191..1621b1d 100644
  config XRX200_PHY_FW
  config XRX200_PHY_FW
  	bool "XRX200 PHY firmware loader"
  	bool "XRX200 PHY firmware loader"
  	depends on SOC_XWAY
  	depends on SOC_XWAY
-diff --git a/arch/mips/lantiq/xway/sysctrl.c b/arch/mips/lantiq/xway/sysctrl.c
-index c24924f..e30dde8 100644
 --- a/arch/mips/lantiq/xway/sysctrl.c
 --- a/arch/mips/lantiq/xway/sysctrl.c
 +++ b/arch/mips/lantiq/xway/sysctrl.c
 +++ b/arch/mips/lantiq/xway/sysctrl.c
 @@ -377,6 +377,8 @@ void __init ltq_soc_init(void)
 @@ -377,6 +377,8 @@ void __init ltq_soc_init(void)
@@ -79,11 +75,9 @@ index c24924f..e30dde8 100644
  	} else if (of_machine_is_compatible("lantiq,ar9")) {
  	} else if (of_machine_is_compatible("lantiq,ar9")) {
  		clkdev_add_static(ltq_ar9_cpu_hz(), ltq_ar9_fpi_hz(),
  		clkdev_add_static(ltq_ar9_cpu_hz(), ltq_ar9_fpi_hz(),
  				ltq_ar9_fpi_hz(), CLOCK_250M);
  				ltq_ar9_fpi_hz(), CLOCK_250M);
-diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile
-index 2cb1d31..8ba7fff 100644
 --- a/arch/mips/pci/Makefile
 --- a/arch/mips/pci/Makefile
 +++ b/arch/mips/pci/Makefile
 +++ b/arch/mips/pci/Makefile
-@@ -41,6 +41,8 @@ obj-$(CONFIG_SIBYTE_BCM1x80)	+= pci-bcm1480.o pci-bcm1480ht.o
+@@ -41,6 +41,8 @@ obj-$(CONFIG_SIBYTE_BCM1x80)	+= pci-bcm1
  obj-$(CONFIG_SNI_RM)		+= fixup-sni.o ops-sni.o
  obj-$(CONFIG_SNI_RM)		+= fixup-sni.o ops-sni.o
  obj-$(CONFIG_LANTIQ)		+= fixup-lantiq.o
  obj-$(CONFIG_LANTIQ)		+= fixup-lantiq.o
  obj-$(CONFIG_PCI_LANTIQ)	+= pci-lantiq.o ops-lantiq.o
  obj-$(CONFIG_PCI_LANTIQ)	+= pci-lantiq.o ops-lantiq.o
@@ -92,9 +86,6 @@ index 2cb1d31..8ba7fff 100644
  obj-$(CONFIG_TANBAC_TB0219)	+= fixup-tb0219.o
  obj-$(CONFIG_TANBAC_TB0219)	+= fixup-tb0219.o
  obj-$(CONFIG_TANBAC_TB0226)	+= fixup-tb0226.o
  obj-$(CONFIG_TANBAC_TB0226)	+= fixup-tb0226.o
  obj-$(CONFIG_TANBAC_TB0287)	+= fixup-tb0287.o
  obj-$(CONFIG_TANBAC_TB0287)	+= fixup-tb0287.o
-diff --git a/arch/mips/pci/fixup-lantiq-pcie.c b/arch/mips/pci/fixup-lantiq-pcie.c
-new file mode 100644
-index 0000000..3325e24
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/fixup-lantiq-pcie.c
 +++ b/arch/mips/pci/fixup-lantiq-pcie.c
 @@ -0,0 +1,82 @@
 @@ -0,0 +1,82 @@
@@ -180,8 +171,6 @@ index 0000000..3325e24
 +
 +
 +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LANTIQ, PCI_DEVICE_ID_LANTIQ_PCIE,
 +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LANTIQ, PCI_DEVICE_ID_LANTIQ_PCIE,
 +     ifx_pcie_rc_class_early_fixup);
 +     ifx_pcie_rc_class_early_fixup);
-diff --git a/arch/mips/pci/fixup-lantiq.c b/arch/mips/pci/fixup-lantiq.c
-index 6c829df..50ec0b5 100644
 --- a/arch/mips/pci/fixup-lantiq.c
 --- a/arch/mips/pci/fixup-lantiq.c
 +++ b/arch/mips/pci/fixup-lantiq.c
 +++ b/arch/mips/pci/fixup-lantiq.c
 @@ -11,11 +11,12 @@
 @@ -11,11 +11,12 @@
@@ -198,7 +187,7 @@ index 6c829df..50ec0b5 100644
  
  
  	if (ltq_pci_plat_dev_init)
  	if (ltq_pci_plat_dev_init)
  		return ltq_pci_plat_dev_init(dev);
  		return ltq_pci_plat_dev_init(dev);
-@@ -28,6 +29,8 @@ int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
+@@ -28,6 +29,8 @@ int __init pcibios_map_irq(const struct
  	struct of_irq dev_irq;
  	struct of_irq dev_irq;
  	int irq;
  	int irq;
  
  
@@ -207,9 +196,6 @@ index 6c829df..50ec0b5 100644
  	if (of_irq_map_pci(dev, &dev_irq)) {
  	if (of_irq_map_pci(dev, &dev_irq)) {
  		dev_err(&dev->dev, "trying to map irq for unknown slot:%d pin:%d\n",
  		dev_err(&dev->dev, "trying to map irq for unknown slot:%d pin:%d\n",
  			slot, pin);
  			slot, pin);
-diff --git a/arch/mips/pci/ifxmips_pci_common.h b/arch/mips/pci/ifxmips_pci_common.h
-new file mode 100644
-index 0000000..46f4cb2
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pci_common.h
 +++ b/arch/mips/pci/ifxmips_pci_common.h
 @@ -0,0 +1,57 @@
 @@ -0,0 +1,57 @@
@@ -270,9 +256,6 @@ index 0000000..46f4cb2
 +
 +
 +#endif /* IFXMIPS_PCI_COMMON_H */
 +#endif /* IFXMIPS_PCI_COMMON_H */
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie.c b/arch/mips/pci/ifxmips_pcie.c
-new file mode 100644
-index 0000000..4128898
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie.c
 +++ b/arch/mips/pci/ifxmips_pcie.c
 @@ -0,0 +1,1099 @@
 @@ -0,0 +1,1099 @@
@@ -1375,9 +1358,6 @@ index 0000000..4128898
 +MODULE_SUPPORTED_DEVICE("Infineon builtin PCIe RC module");
 +MODULE_SUPPORTED_DEVICE("Infineon builtin PCIe RC module");
 +MODULE_DESCRIPTION("Infineon builtin PCIe RC driver");
 +MODULE_DESCRIPTION("Infineon builtin PCIe RC driver");
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie.h b/arch/mips/pci/ifxmips_pcie.h
-new file mode 100644
-index 0000000..c6f92f5
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie.h
 +++ b/arch/mips/pci/ifxmips_pcie.h
 @@ -0,0 +1,135 @@
 @@ -0,0 +1,135 @@
@@ -1516,9 +1496,6 @@ index 0000000..c6f92f5
 +
 +
 +#endif  /* IFXMIPS_PCIE_H */
 +#endif  /* IFXMIPS_PCIE_H */
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_ar10.h b/arch/mips/pci/ifxmips_pcie_ar10.h
-new file mode 100644
-index 0000000..99ff463
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_ar10.h
 +++ b/arch/mips/pci/ifxmips_pcie_ar10.h
 @@ -0,0 +1,290 @@
 @@ -0,0 +1,290 @@
@@ -1812,9 +1789,6 @@ index 0000000..99ff463
 +}
 +}
 +
 +
 +#endif /* IFXMIPS_PCIE_AR10_H */
 +#endif /* IFXMIPS_PCIE_AR10_H */
-diff --git a/arch/mips/pci/ifxmips_pcie_msi.c b/arch/mips/pci/ifxmips_pcie_msi.c
-new file mode 100644
-index 0000000..bffd6fa
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_msi.c
 +++ b/arch/mips/pci/ifxmips_pcie_msi.c
 @@ -0,0 +1,392 @@
 @@ -0,0 +1,392 @@
@@ -2210,9 +2184,6 @@ index 0000000..bffd6fa
 +MODULE_SUPPORTED_DEVICE("Infineon PCIe IP builtin MSI PIC module");
 +MODULE_SUPPORTED_DEVICE("Infineon PCIe IP builtin MSI PIC module");
 +MODULE_DESCRIPTION("Infineon PCIe IP builtin MSI PIC driver");
 +MODULE_DESCRIPTION("Infineon PCIe IP builtin MSI PIC driver");
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_phy.c b/arch/mips/pci/ifxmips_pcie_phy.c
-new file mode 100644
-index 0000000..f5b0f13
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_phy.c
 +++ b/arch/mips/pci/ifxmips_pcie_phy.c
 @@ -0,0 +1,478 @@
 @@ -0,0 +1,478 @@
@@ -2694,9 +2665,6 @@ index 0000000..f5b0f13
 +#endif
 +#endif
 +}
 +}
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_pm.c b/arch/mips/pci/ifxmips_pcie_pm.c
-new file mode 100644
-index 0000000..a10ecad
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_pm.c
 +++ b/arch/mips/pci/ifxmips_pcie_pm.c
 @@ -0,0 +1,176 @@
 @@ -0,0 +1,176 @@
@@ -2876,9 +2844,6 @@ index 0000000..a10ecad
 +    ifx_pmcu_unregister(&pmcuUnRegister);
 +    ifx_pmcu_unregister(&pmcuUnRegister);
 +}
 +}
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_pm.h b/arch/mips/pci/ifxmips_pcie_pm.h
-new file mode 100644
-index 0000000..6ece20d
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_pm.h
 +++ b/arch/mips/pci/ifxmips_pcie_pm.h
 @@ -0,0 +1,36 @@
 @@ -0,0 +1,36 @@
@@ -2918,9 +2883,6 @@ index 0000000..6ece20d
 +
 +
 +#endif /* IFXMIPS_PCIE_PM_H  */
 +#endif /* IFXMIPS_PCIE_PM_H  */
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_reg.h b/arch/mips/pci/ifxmips_pcie_reg.h
-new file mode 100644
-index 0000000..e7e4b6c
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_reg.h
 +++ b/arch/mips/pci/ifxmips_pcie_reg.h
 @@ -0,0 +1,1001 @@
 @@ -0,0 +1,1001 @@
@@ -3925,9 +3887,6 @@ index 0000000..e7e4b6c
 +
 +
 +#endif /* IFXMIPS_PCIE_REG_H */
 +#endif /* IFXMIPS_PCIE_REG_H */
 +
 +
-diff --git a/arch/mips/pci/ifxmips_pcie_vr9.h b/arch/mips/pci/ifxmips_pcie_vr9.h
-new file mode 100644
-index 0000000..57d9368
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/ifxmips_pcie_vr9.h
 +++ b/arch/mips/pci/ifxmips_pcie_vr9.h
 @@ -0,0 +1,271 @@
 @@ -0,0 +1,271 @@
@@ -4202,8 +4161,6 @@ index 0000000..57d9368
 +
 +
 +#endif /* IFXMIPS_PCIE_VR9_H */
 +#endif /* IFXMIPS_PCIE_VR9_H */
 +
 +
-diff --git a/arch/mips/pci/pci.c b/arch/mips/pci/pci.c
-index 594e60d..2e75400 100644
 --- a/arch/mips/pci/pci.c
 --- a/arch/mips/pci/pci.c
 +++ b/arch/mips/pci/pci.c
 +++ b/arch/mips/pci/pci.c
 @@ -266,6 +266,31 @@ static int __init pcibios_init(void)
 @@ -266,6 +266,31 @@ static int __init pcibios_init(void)
@@ -4238,9 +4195,6 @@ index 594e60d..2e75400 100644
  static int pcibios_enable_resources(struct pci_dev *dev, int mask)
  static int pcibios_enable_resources(struct pci_dev *dev, int mask)
  {
  {
  	u16 cmd, old_cmd;
  	u16 cmd, old_cmd;
-diff --git a/arch/mips/pci/pcie-lantiq.h b/arch/mips/pci/pcie-lantiq.h
-new file mode 100644
-index 0000000..d877c23
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/pci/pcie-lantiq.h
 +++ b/arch/mips/pci/pcie-lantiq.h
 @@ -0,0 +1,1305 @@
 @@ -0,0 +1,1305 @@
@@ -5549,8 +5503,6 @@ index 0000000..d877c23
 +
 +
 +#endif /* IFXMIPS_PCIE_VR9_H */
 +#endif /* IFXMIPS_PCIE_VR9_H */
 +
 +
-diff --git a/drivers/pci/pcie/aer/Kconfig b/drivers/pci/pcie/aer/Kconfig
-index 50e94e0..4bf848f 100644
 --- a/drivers/pci/pcie/aer/Kconfig
 --- a/drivers/pci/pcie/aer/Kconfig
 +++ b/drivers/pci/pcie/aer/Kconfig
 +++ b/drivers/pci/pcie/aer/Kconfig
 @@ -5,7 +5,7 @@
 @@ -5,7 +5,7 @@
@@ -5562,11 +5514,9 @@ index 50e94e0..4bf848f 100644
  	help
  	help
  	  This enables PCI Express Root Port Advanced Error Reporting
  	  This enables PCI Express Root Port Advanced Error Reporting
  	  (AER) driver support. Error reporting messages sent to Root
  	  (AER) driver support. Error reporting messages sent to Root
-diff --git a/include/linux/pci.h b/include/linux/pci.h
-index 3a24e4f..25b0349 100644
 --- a/include/linux/pci.h
 --- a/include/linux/pci.h
 +++ b/include/linux/pci.h
 +++ b/include/linux/pci.h
-@@ -1082,6 +1082,8 @@ void pci_walk_bus(struct pci_bus *top, int (*cb)(struct pci_dev *, void *),
+@@ -1082,6 +1082,8 @@ void pci_walk_bus(struct pci_bus *top, i
  int pci_cfg_space_size_ext(struct pci_dev *dev);
  int pci_cfg_space_size_ext(struct pci_dev *dev);
  int pci_cfg_space_size(struct pci_dev *dev);
  int pci_cfg_space_size(struct pci_dev *dev);
  unsigned char pci_bus_max_busnr(struct pci_bus *bus);
  unsigned char pci_bus_max_busnr(struct pci_bus *bus);
@@ -5575,8 +5525,6 @@ index 3a24e4f..25b0349 100644
  void pci_setup_bridge(struct pci_bus *bus);
  void pci_setup_bridge(struct pci_bus *bus);
  resource_size_t pcibios_window_alignment(struct pci_bus *bus,
  resource_size_t pcibios_window_alignment(struct pci_bus *bus,
  					 unsigned long type);
  					 unsigned long type);
-diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
-index c129162..c503ac9 100644
 --- a/include/linux/pci_ids.h
 --- a/include/linux/pci_ids.h
 +++ b/include/linux/pci_ids.h
 +++ b/include/linux/pci_ids.h
 @@ -1042,6 +1042,12 @@
 @@ -1042,6 +1042,12 @@
@@ -5592,6 +5540,3 @@ index c129162..c503ac9 100644
  #define PCI_VENDOR_ID_WINBOND		0x10ad
  #define PCI_VENDOR_ID_WINBOND		0x10ad
  #define PCI_DEVICE_ID_WINBOND_82C105	0x0105
  #define PCI_DEVICE_ID_WINBOND_82C105	0x0105
  #define PCI_DEVICE_ID_WINBOND_83C553	0x0565
  #define PCI_DEVICE_ID_WINBOND_83C553	0x0565
--- 
-1.7.10.4
-

+ 0 - 8
target/linux/lantiq/patches-3.10/0002-MIPS-lantiq-adds-minimal-dcdc-driver.patch

@@ -15,8 +15,6 @@ Patchwork: http://patchwork.linux-mips.org/patch/5677/
  2 files changed, 64 insertions(+), 1 deletion(-)
  2 files changed, 64 insertions(+), 1 deletion(-)
  create mode 100644 arch/mips/lantiq/xway/dcdc.c
  create mode 100644 arch/mips/lantiq/xway/dcdc.c
 
 
-diff --git a/arch/mips/lantiq/xway/Makefile b/arch/mips/lantiq/xway/Makefile
-index 7a13660..087497d 100644
 --- a/arch/mips/lantiq/xway/Makefile
 --- a/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 @@ -1,3 +1,3 @@
 @@ -1,3 +1,3 @@
@@ -24,9 +22,6 @@ index 7a13660..087497d 100644
 +obj-y := prom.o sysctrl.o clk.o reset.o dma.o gptu.o dcdc.o
 +obj-y := prom.o sysctrl.o clk.o reset.o dma.o gptu.o dcdc.o
  
  
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
-diff --git a/arch/mips/lantiq/xway/dcdc.c b/arch/mips/lantiq/xway/dcdc.c
-new file mode 100644
-index 0000000..7688ac0
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/lantiq/xway/dcdc.c
 +++ b/arch/mips/lantiq/xway/dcdc.c
 @@ -0,0 +1,63 @@
 @@ -0,0 +1,63 @@
@@ -93,6 +88,3 @@ index 0000000..7688ac0
 +}
 +}
 +
 +
 +arch_initcall(dcdc_init);
 +arch_initcall(dcdc_init);
--- 
-1.7.10.4
-

+ 0 - 6
target/linux/lantiq/patches-3.10/0004-MIPS-lantiq-falcon-add-cpu-feature-override.h.patch

@@ -15,9 +15,6 @@ Patchwork: http://patchwork.linux-mips.org/patch/5658/
  1 file changed, 58 insertions(+)
  1 file changed, 58 insertions(+)
  create mode 100644 arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h
  create mode 100644 arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h
 
 
-diff --git a/arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h b/arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h
-new file mode 100644
-index 0000000..096a100
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h
 +++ b/arch/mips/include/asm/mach-lantiq/falcon/cpu-feature-overrides.h
 @@ -0,0 +1,58 @@
 @@ -0,0 +1,58 @@
@@ -79,6 +76,3 @@ index 0000000..096a100
 +#define cpu_icache_line_size()	32
 +#define cpu_icache_line_size()	32
 +
 +
 +#endif /* __ASM_MACH_FALCON_CPU_FEATURE_OVERRIDES_H */
 +#endif /* __ASM_MACH_FALCON_CPU_FEATURE_OVERRIDES_H */
--- 
-1.7.10.4
-

+ 1 - 6
target/linux/lantiq/patches-3.10/0005-MIPS-lantiq-falcon-fix-asc-clock-definition.patch

@@ -14,8 +14,6 @@ Patchwork: http://patchwork.linux-mips.org/patch/5659/
  arch/mips/lantiq/falcon/sysctrl.c |    5 ++++-
  arch/mips/lantiq/falcon/sysctrl.c |    5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)
  1 file changed, 4 insertions(+), 1 deletion(-)
 
 
-diff --git a/arch/mips/lantiq/falcon/sysctrl.c b/arch/mips/lantiq/falcon/sysctrl.c
-index ff4894a..8f1866d 100644
 --- a/arch/mips/lantiq/falcon/sysctrl.c
 --- a/arch/mips/lantiq/falcon/sysctrl.c
 +++ b/arch/mips/lantiq/falcon/sysctrl.c
 +++ b/arch/mips/lantiq/falcon/sysctrl.c
 @@ -48,6 +48,7 @@
 @@ -48,6 +48,7 @@
@@ -26,7 +24,7 @@ index ff4894a..8f1866d 100644
  #define ACTS_ASC1_ACT	0x00000800
  #define ACTS_ASC1_ACT	0x00000800
  #define ACTS_I2C_ACT	0x00004000
  #define ACTS_I2C_ACT	0x00004000
  #define ACTS_P0		0x00010000
  #define ACTS_P0		0x00010000
-@@ -108,6 +109,7 @@ static void sysctl_deactivate(struct clk *clk)
+@@ -108,6 +109,7 @@ static void sysctl_deactivate(struct clk
  static int sysctl_clken(struct clk *clk)
  static int sysctl_clken(struct clk *clk)
  {
  {
  	sysctl_w32(clk->module, clk->bits, SYSCTL_CLKEN);
  	sysctl_w32(clk->module, clk->bits, SYSCTL_CLKEN);
@@ -43,6 +41,3 @@ index ff4894a..8f1866d 100644
 +	clkdev_add_sys("1e100c00.serial", SYSCTL_SYS1, ACTS_ASC0_ACT);
 +	clkdev_add_sys("1e100c00.serial", SYSCTL_SYS1, ACTS_ASC0_ACT);
  	clkdev_add_sys("1e200000.i2c", SYSCTL_SYS1, ACTS_I2C_ACT);
  	clkdev_add_sys("1e200000.i2c", SYSCTL_SYS1, ACTS_I2C_ACT);
  }
  }
--- 
-1.7.10.4
-

+ 1 - 8
target/linux/lantiq/patches-3.10/0006-MIPS-lantiq-dtb-image-hack.patch

@@ -9,8 +9,6 @@ Signed-off-by: John Crispin <[email protected]>
  arch/mips/lantiq/prom.c   |    4 +++-
  arch/mips/lantiq/prom.c   |    4 +++-
  2 files changed, 3 insertions(+), 3 deletions(-)
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 
-diff --git a/arch/mips/lantiq/Makefile b/arch/mips/lantiq/Makefile
-index d6bdc57..690257a 100644
 --- a/arch/mips/lantiq/Makefile
 --- a/arch/mips/lantiq/Makefile
 +++ b/arch/mips/lantiq/Makefile
 +++ b/arch/mips/lantiq/Makefile
 @@ -6,8 +6,6 @@
 @@ -6,8 +6,6 @@
@@ -22,11 +20,9 @@ index d6bdc57..690257a 100644
  obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
  obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
  
  
  obj-$(CONFIG_SOC_TYPE_XWAY) += xway/
  obj-$(CONFIG_SOC_TYPE_XWAY) += xway/
-diff --git a/arch/mips/lantiq/prom.c b/arch/mips/lantiq/prom.c
-index 9f9e875..72b183a 100644
 --- a/arch/mips/lantiq/prom.c
 --- a/arch/mips/lantiq/prom.c
 +++ b/arch/mips/lantiq/prom.c
 +++ b/arch/mips/lantiq/prom.c
-@@ -57,6 +57,8 @@ static void __init prom_init_cmdline(void)
+@@ -57,6 +57,8 @@ static void __init prom_init_cmdline(voi
  	}
  	}
  }
  }
  
  
@@ -44,6 +40,3 @@ index 9f9e875..72b183a 100644
  }
  }
  
  
  void __init device_tree_init(void)
  void __init device_tree_init(void)
--- 
-1.7.10.4
-

+ 0 - 8
target/linux/lantiq/patches-3.10/0007-MIPS-lantiq-handle-vmmc-memory-reservation.patch

@@ -10,8 +10,6 @@ Signed-off-by: John Crispin <[email protected]>
  2 files changed, 65 insertions(+)
  2 files changed, 65 insertions(+)
  create mode 100644 arch/mips/lantiq/xway/vmmc.c
  create mode 100644 arch/mips/lantiq/xway/vmmc.c
 
 
-diff --git a/arch/mips/lantiq/xway/Makefile b/arch/mips/lantiq/xway/Makefile
-index 087497d..a2edc53 100644
 --- a/arch/mips/lantiq/xway/Makefile
 --- a/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 @@ -1,3 +1,5 @@
 @@ -1,3 +1,5 @@
@@ -20,9 +18,6 @@ index 087497d..a2edc53 100644
 +obj-y += vmmc.o
 +obj-y += vmmc.o
 +
 +
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
-diff --git a/arch/mips/lantiq/xway/vmmc.c b/arch/mips/lantiq/xway/vmmc.c
-new file mode 100644
-index 0000000..6dedf77
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/lantiq/xway/vmmc.c
 +++ b/arch/mips/lantiq/xway/vmmc.c
 @@ -0,0 +1,63 @@
 @@ -0,0 +1,63 @@
@@ -89,6 +84,3 @@ index 0000000..6dedf77
 +};
 +};
 +
 +
 +module_platform_driver(vmmc_driver);
 +module_platform_driver(vmmc_driver);
--- 
-1.7.10.4
-

+ 4 - 23
target/linux/lantiq/patches-3.10/0009-MIPS-lantiq-add-atm-hack.patch

@@ -16,9 +16,6 @@ Signed-off-by: John Crispin <[email protected]>
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_atm.h
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_atm.h
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_ptm.h
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_ptm.h
 
 
-diff --git a/arch/mips/include/asm/mach-lantiq/lantiq_atm.h b/arch/mips/include/asm/mach-lantiq/lantiq_atm.h
-new file mode 100644
-index 0000000..bf045a9
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_atm.h
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_atm.h
 @@ -0,0 +1,196 @@
 @@ -0,0 +1,196 @@
@@ -218,9 +215,6 @@ index 0000000..bf045a9
 +
 +
 +#endif  //  IFX_ATM_H
 +#endif  //  IFX_ATM_H
 +
 +
-diff --git a/arch/mips/include/asm/mach-lantiq/lantiq_ptm.h b/arch/mips/include/asm/mach-lantiq/lantiq_ptm.h
-new file mode 100644
-index 0000000..698e5c3
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_ptm.h
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_ptm.h
 @@ -0,0 +1,203 @@
 @@ -0,0 +1,203 @@
@@ -427,8 +421,6 @@ index 0000000..698e5c3
 +
 +
 +#endif  //  IFX_PTM_H
 +#endif  //  IFX_PTM_H
 +
 +
-diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
-index 5119487..6d2c486 100644
 --- a/arch/mips/lantiq/irq.c
 --- a/arch/mips/lantiq/irq.c
 +++ b/arch/mips/lantiq/irq.c
 +++ b/arch/mips/lantiq/irq.c
 @@ -14,6 +14,7 @@
 @@ -14,6 +14,7 @@
@@ -439,7 +431,7 @@ index 5119487..6d2c486 100644
  
  
  #include <asm/bootinfo.h>
  #include <asm/bootinfo.h>
  #include <asm/irq_cpu.h>
  #include <asm/irq_cpu.h>
-@@ -99,6 +100,7 @@ void ltq_mask_and_ack_irq(struct irq_data *d)
+@@ -99,6 +100,7 @@ void ltq_mask_and_ack_irq(struct irq_dat
  	ltq_icu_w32(im, ltq_icu_r32(im, ier) & ~BIT(offset), ier);
  	ltq_icu_w32(im, ltq_icu_r32(im, ier) & ~BIT(offset), ier);
  	ltq_icu_w32(im, BIT(offset), isr);
  	ltq_icu_w32(im, BIT(offset), isr);
  }
  }
@@ -447,11 +439,9 @@ index 5119487..6d2c486 100644
  
  
  static void ltq_ack_irq(struct irq_data *d)
  static void ltq_ack_irq(struct irq_data *d)
  {
  {
-diff --git a/arch/mips/mm/cache.c b/arch/mips/mm/cache.c
-index 5aeb3eb..11aa4e6 100644
 --- a/arch/mips/mm/cache.c
 --- a/arch/mips/mm/cache.c
 +++ b/arch/mips/mm/cache.c
 +++ b/arch/mips/mm/cache.c
-@@ -58,6 +58,8 @@ void (*_dma_cache_wback)(unsigned long start, unsigned long size);
+@@ -59,6 +59,8 @@ void (*_dma_cache_wback)(unsigned long s
  void (*_dma_cache_inv)(unsigned long start, unsigned long size);
  void (*_dma_cache_inv)(unsigned long start, unsigned long size);
  
  
  EXPORT_SYMBOL(_dma_cache_wback_inv);
  EXPORT_SYMBOL(_dma_cache_wback_inv);
@@ -460,8 +450,6 @@ index 5aeb3eb..11aa4e6 100644
  
  
  #endif /* CONFIG_DMA_NONCOHERENT */
  #endif /* CONFIG_DMA_NONCOHERENT */
  
  
-diff --git a/include/uapi/linux/atm.h b/include/uapi/linux/atm.h
-index 88399db..78c8bbc 100644
 --- a/include/uapi/linux/atm.h
 --- a/include/uapi/linux/atm.h
 +++ b/include/uapi/linux/atm.h
 +++ b/include/uapi/linux/atm.h
 @@ -130,8 +130,14 @@
 @@ -130,8 +130,14 @@
@@ -479,11 +467,9 @@ index 88399db..78c8bbc 100644
  struct atm_trafprm {
  struct atm_trafprm {
  	unsigned char	traffic_class;	/* traffic class (ATM_UBR, ...) */
  	unsigned char	traffic_class;	/* traffic class (ATM_UBR, ...) */
  	int		max_pcr;	/* maximum PCR in cells per second */
  	int		max_pcr;	/* maximum PCR in cells per second */
-diff --git a/net/atm/common.c b/net/atm/common.c
-index 737bef5..959008d 100644
 --- a/net/atm/common.c
 --- a/net/atm/common.c
 +++ b/net/atm/common.c
 +++ b/net/atm/common.c
-@@ -62,11 +62,17 @@ static void vcc_remove_socket(struct sock *sk)
+@@ -62,11 +62,17 @@ static void vcc_remove_socket(struct soc
  	write_unlock_irq(&vcc_sklist_lock);
  	write_unlock_irq(&vcc_sklist_lock);
  }
  }
  
  
@@ -501,11 +487,9 @@ index 737bef5..959008d 100644
  	if (sk_wmem_alloc_get(sk) && !atm_may_send(vcc, size)) {
  	if (sk_wmem_alloc_get(sk) && !atm_may_send(vcc, size)) {
  		pr_debug("Sorry: wmem_alloc = %d, size = %d, sndbuf = %d\n",
  		pr_debug("Sorry: wmem_alloc = %d, size = %d, sndbuf = %d\n",
  			 sk_wmem_alloc_get(sk), size, sk->sk_sndbuf);
  			 sk_wmem_alloc_get(sk), size, sk->sk_sndbuf);
-diff --git a/net/atm/proc.c b/net/atm/proc.c
-index bbb6461..ecb584a 100644
 --- a/net/atm/proc.c
 --- a/net/atm/proc.c
 +++ b/net/atm/proc.c
 +++ b/net/atm/proc.c
-@@ -154,7 +154,7 @@ static void *vcc_seq_next(struct seq_file *seq, void *v, loff_t *pos)
+@@ -154,7 +154,7 @@ static void *vcc_seq_next(struct seq_fil
  static void pvc_info(struct seq_file *seq, struct atm_vcc *vcc)
  static void pvc_info(struct seq_file *seq, struct atm_vcc *vcc)
  {
  {
  	static const char *const class_name[] = {
  	static const char *const class_name[] = {
@@ -514,6 +498,3 @@ index bbb6461..ecb584a 100644
  	static const char *const aal_name[] = {
  	static const char *const aal_name[] = {
  		"---",	"1",	"2",	"3/4",	/*  0- 3 */
  		"---",	"1",	"2",	"3/4",	/*  0- 3 */
  		"???",	"5",	"???",	"???",	/*  4- 7 */
  		"???",	"5",	"???",	"???",	/*  4- 7 */
--- 
-1.7.10.4
-

+ 14 - 26
target/linux/lantiq/patches-3.10/0010-MIPS-lantiq-wifi-and-ethernet-eeprom-handling.patch

@@ -17,10 +17,8 @@ Signed-off-by: John Crispin <[email protected]>
  create mode 100644 arch/mips/lantiq/xway/pci-ath-fixup.c
  create mode 100644 arch/mips/lantiq/xway/pci-ath-fixup.c
  create mode 100644 arch/mips/lantiq/xway/rt_eep.c
  create mode 100644 arch/mips/lantiq/xway/rt_eep.c
 
 
-Index: linux-3.10.12/arch/mips/include/asm/mach-lantiq/pci-ath-fixup.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.12/arch/mips/include/asm/mach-lantiq/pci-ath-fixup.h	2013-09-17 22:32:50.385021711 +0200
+--- /dev/null
++++ b/arch/mips/include/asm/mach-lantiq/pci-ath-fixup.h
 @@ -0,0 +1,6 @@
 @@ -0,0 +1,6 @@
 +#ifndef _PCI_ATH_FIXUP
 +#ifndef _PCI_ATH_FIXUP
 +#define _PCI_ATH_FIXUP
 +#define _PCI_ATH_FIXUP
@@ -28,11 +26,9 @@ Index: linux-3.10.12/arch/mips/include/asm/mach-lantiq/pci-ath-fixup.h
 +void ltq_pci_ath_fixup(unsigned slot, u16 *cal_data) __init;
 +void ltq_pci_ath_fixup(unsigned slot, u16 *cal_data) __init;
 +
 +
 +#endif /* _PCI_ATH_FIXUP */
 +#endif /* _PCI_ATH_FIXUP */
-Index: linux-3.10.12/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h
-===================================================================
---- linux-3.10.12.orig/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h	2013-09-14 15:55:12.000000000 +0200
-+++ linux-3.10.12/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h	2013-09-17 22:32:50.389021711 +0200
-@@ -90,5 +90,8 @@
+--- a/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h
++++ b/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h
+@@ -90,5 +90,8 @@ int xrx200_gphy_boot(struct device *dev,
  extern void ltq_pmu_enable(unsigned int module);
  extern void ltq_pmu_enable(unsigned int module);
  extern void ltq_pmu_disable(unsigned int module);
  extern void ltq_pmu_disable(unsigned int module);
  
  
@@ -41,21 +37,17 @@ Index: linux-3.10.12/arch/mips/include/asm/mach-lantiq/xway/lantiq_soc.h
 +
 +
  #endif /* CONFIG_SOC_TYPE_XWAY */
  #endif /* CONFIG_SOC_TYPE_XWAY */
  #endif /* _LTQ_XWAY_H__ */
  #endif /* _LTQ_XWAY_H__ */
-Index: linux-3.10.12/arch/mips/lantiq/xway/Makefile
-===================================================================
---- linux-3.10.12.orig/arch/mips/lantiq/xway/Makefile	2013-09-17 22:32:50.305021707 +0200
-+++ linux-3.10.12/arch/mips/lantiq/xway/Makefile	2013-09-18 02:41:31.613659574 +0200
-@@ -2,4 +2,6 @@
+--- a/arch/mips/lantiq/xway/Makefile
++++ b/arch/mips/lantiq/xway/Makefile
+@@ -2,4 +2,6 @@ obj-y := prom.o sysctrl.o clk.o reset.o
  
  
  obj-y += vmmc.o
  obj-y += vmmc.o
  
  
 +obj-$(CONFIG_PCI) += ath_eep.o rt_eep.o pci-ath-fixup.o
 +obj-$(CONFIG_PCI) += ath_eep.o rt_eep.o pci-ath-fixup.o
 +
 +
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
  obj-$(CONFIG_XRX200_PHY_FW) += xrx200_phy_fw.o
-Index: linux-3.10.12/arch/mips/lantiq/xway/ath_eep.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.12/arch/mips/lantiq/xway/ath_eep.c	2013-09-18 02:41:28.525659442 +0200
+--- /dev/null
++++ b/arch/mips/lantiq/xway/ath_eep.c
 @@ -0,0 +1,250 @@
 @@ -0,0 +1,250 @@
 +/*
 +/*
 + *  Copyright (C) 2011 Luca Olivetti <[email protected]>
 + *  Copyright (C) 2011 Luca Olivetti <[email protected]>
@@ -307,10 +299,8 @@ Index: linux-3.10.12/arch/mips/lantiq/xway/ath_eep.c
 +	return platform_driver_probe(&ath5k_eeprom_driver, of_ath5k_eeprom_probe);
 +	return platform_driver_probe(&ath5k_eeprom_driver, of_ath5k_eeprom_probe);
 +}
 +}
 +device_initcall(of_ath5k_eeprom_init);
 +device_initcall(of_ath5k_eeprom_init);
-Index: linux-3.10.12/arch/mips/lantiq/xway/pci-ath-fixup.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.12/arch/mips/lantiq/xway/pci-ath-fixup.c	2013-09-17 22:32:50.389021711 +0200
+--- /dev/null
++++ b/arch/mips/lantiq/xway/pci-ath-fixup.c
 @@ -0,0 +1,109 @@
 @@ -0,0 +1,109 @@
 +/*
 +/*
 + *  Atheros AP94 reference board PCI initialization
 + *  Atheros AP94 reference board PCI initialization
@@ -421,10 +411,8 @@ Index: linux-3.10.12/arch/mips/lantiq/xway/pci-ath-fixup.c
 +	ath_fixups[ath_num_fixups].cal_data = cal_data;
 +	ath_fixups[ath_num_fixups].cal_data = cal_data;
 +	ath_num_fixups++;
 +	ath_num_fixups++;
 +}
 +}
-Index: linux-3.10.12/arch/mips/lantiq/xway/rt_eep.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.12/arch/mips/lantiq/xway/rt_eep.c	2013-09-17 22:32:50.389021711 +0200
+--- /dev/null
++++ b/arch/mips/lantiq/xway/rt_eep.c
 @@ -0,0 +1,60 @@
 @@ -0,0 +1,60 @@
 +/*
 +/*
 + *  Copyright (C) 2011 John Crispin <[email protected]>
 + *  Copyright (C) 2011 John Crispin <[email protected]>

+ 1 - 6
target/linux/lantiq/patches-3.10/0011-MIPS-lantiq-add-reset-controller-api-support.patch

@@ -11,8 +11,6 @@ Signed-off-by: John Crispin <[email protected]>
  arch/mips/lantiq/xway/reset.c |   61 +++++++++++++++++++++++++++++++++++++++++
  arch/mips/lantiq/xway/reset.c |   61 +++++++++++++++++++++++++++++++++++++++++
  1 file changed, 61 insertions(+)
  1 file changed, 61 insertions(+)
 
 
-diff --git a/arch/mips/lantiq/xway/reset.c b/arch/mips/lantiq/xway/reset.c
-index 1fa0f17..a1e06b7 100644
 --- a/arch/mips/lantiq/xway/reset.c
 --- a/arch/mips/lantiq/xway/reset.c
 +++ b/arch/mips/lantiq/xway/reset.c
 +++ b/arch/mips/lantiq/xway/reset.c
 @@ -14,6 +14,7 @@
 @@ -14,6 +14,7 @@
@@ -23,7 +21,7 @@ index 1fa0f17..a1e06b7 100644
  
  
  #include <asm/reboot.h>
  #include <asm/reboot.h>
  
  
-@@ -113,6 +114,66 @@ void ltq_reset_once(unsigned int module, ulong u)
+@@ -113,6 +114,66 @@ void ltq_reset_once(unsigned int module,
  	ltq_rcu_w32(ltq_rcu_r32(RCU_RST_REQ) & ~module, RCU_RST_REQ);
  	ltq_rcu_w32(ltq_rcu_r32(RCU_RST_REQ) & ~module, RCU_RST_REQ);
  }
  }
  
  
@@ -90,6 +88,3 @@ index 1fa0f17..a1e06b7 100644
  static void ltq_machine_restart(char *command)
  static void ltq_machine_restart(char *command)
  {
  {
  	local_irq_disable();
  	local_irq_disable();
--- 
-1.7.10.4
-

+ 2 - 7
target/linux/lantiq/patches-3.10/0012-MTD-m25p80-allow-loading-mtd-name-from-OF.patch

@@ -12,11 +12,9 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/mtd/devices/m25p80.c |    5 +++++
  drivers/mtd/devices/m25p80.c |    5 +++++
  1 file changed, 5 insertions(+)
  1 file changed, 5 insertions(+)
 
 
-diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c
-index 2f3d2a5..1828704 100644
 --- a/drivers/mtd/devices/m25p80.c
 --- a/drivers/mtd/devices/m25p80.c
 +++ b/drivers/mtd/devices/m25p80.c
 +++ b/drivers/mtd/devices/m25p80.c
-@@ -909,10 +909,13 @@ static int m25p_probe(struct spi_device *spi)
+@@ -925,10 +925,13 @@ static int m25p_probe(struct spi_device
  	unsigned			i;
  	unsigned			i;
  	struct mtd_part_parser_data	ppdata;
  	struct mtd_part_parser_data	ppdata;
  	struct device_node __maybe_unused *np = spi->dev.of_node;
  	struct device_node __maybe_unused *np = spi->dev.of_node;
@@ -30,7 +28,7 @@ index 2f3d2a5..1828704 100644
  #endif
  #endif
  
  
  	/* Platform data helps sort out which chip type we have, as
  	/* Platform data helps sort out which chip type we have, as
-@@ -988,6 +991,8 @@ static int m25p_probe(struct spi_device *spi)
+@@ -1004,6 +1007,8 @@ static int m25p_probe(struct spi_device
  
  
  	if (data && data->name)
  	if (data && data->name)
  		flash->mtd.name = data->name;
  		flash->mtd.name = data->name;
@@ -39,6 +37,3 @@ index 2f3d2a5..1828704 100644
  	else
  	else
  		flash->mtd.name = dev_name(&spi->dev);
  		flash->mtd.name = dev_name(&spi->dev);
  
  
--- 
-1.7.10.4
-

+ 1 - 11
target/linux/lantiq/patches-3.10/0013-MTD-lantiq-Add-NAND-support-on-Lantiq-Falcon-SoC.patch

@@ -16,8 +16,6 @@ Signed-off-by: John Crispin <[email protected]>
  3 files changed, 92 insertions(+)
  3 files changed, 92 insertions(+)
  create mode 100644 drivers/mtd/nand/falcon_nand.c
  create mode 100644 drivers/mtd/nand/falcon_nand.c
 
 
-diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
-index a60f6c1..74b1323 100644
 --- a/drivers/mtd/nand/Kconfig
 --- a/drivers/mtd/nand/Kconfig
 +++ b/drivers/mtd/nand/Kconfig
 +++ b/drivers/mtd/nand/Kconfig
 @@ -544,4 +544,12 @@ config MTD_NAND_XWAY
 @@ -544,4 +544,12 @@ config MTD_NAND_XWAY
@@ -33,20 +31,15 @@ index a60f6c1..74b1323 100644
 +	  attached to the External Bus Unit (EBU).
 +	  attached to the External Bus Unit (EBU).
 +
 +
  endif # MTD_NAND
  endif # MTD_NAND
-diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile
-index bb81891..feb7c9d 100644
 --- a/drivers/mtd/nand/Makefile
 --- a/drivers/mtd/nand/Makefile
 +++ b/drivers/mtd/nand/Makefile
 +++ b/drivers/mtd/nand/Makefile
-@@ -50,5 +50,6 @@ obj-$(CONFIG_MTD_NAND_JZ4740)		+= jz4740_nand.o
+@@ -50,5 +50,6 @@ obj-$(CONFIG_MTD_NAND_JZ4740)		+= jz4740
  obj-$(CONFIG_MTD_NAND_GPMI_NAND)	+= gpmi-nand/
  obj-$(CONFIG_MTD_NAND_GPMI_NAND)	+= gpmi-nand/
  obj-$(CONFIG_MTD_NAND_XWAY)		+= xway_nand.o
  obj-$(CONFIG_MTD_NAND_XWAY)		+= xway_nand.o
  obj-$(CONFIG_MTD_NAND_BCM47XXNFLASH)	+= bcm47xxnflash/
  obj-$(CONFIG_MTD_NAND_BCM47XXNFLASH)	+= bcm47xxnflash/
 +obj-$(CONFIG_MTD_NAND_FALCON)		+= falcon_nand.o
 +obj-$(CONFIG_MTD_NAND_FALCON)		+= falcon_nand.o
  
  
  nand-objs := nand_base.o nand_bbt.o
  nand-objs := nand_base.o nand_bbt.o
-diff --git a/drivers/mtd/nand/falcon_nand.c b/drivers/mtd/nand/falcon_nand.c
-new file mode 100644
-index 0000000..13458d3
 --- /dev/null
 --- /dev/null
 +++ b/drivers/mtd/nand/falcon_nand.c
 +++ b/drivers/mtd/nand/falcon_nand.c
 @@ -0,0 +1,83 @@
 @@ -0,0 +1,83 @@
@@ -133,6 +126,3 @@ index 0000000..13458d3
 +}
 +}
 +
 +
 +arch_initcall(falcon_register_nand);
 +arch_initcall(falcon_register_nand);
--- 
-1.7.10.4
-

+ 1 - 6
target/linux/lantiq/patches-3.10/0014-MTD-lantiq-handle-NO_XIP-on-cfi0001-flash.patch

@@ -7,11 +7,9 @@ Subject: [PATCH 14/34] MTD: lantiq: handle NO_XIP on cfi0001 flash
  drivers/mtd/maps/lantiq-flash.c |    6 +++++-
  drivers/mtd/maps/lantiq-flash.c |    6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)
  1 file changed, 5 insertions(+), 1 deletion(-)
 
 
-diff --git a/drivers/mtd/maps/lantiq-flash.c b/drivers/mtd/maps/lantiq-flash.c
-index d7ac65d..95b155a 100644
 --- a/drivers/mtd/maps/lantiq-flash.c
 --- a/drivers/mtd/maps/lantiq-flash.c
 +++ b/drivers/mtd/maps/lantiq-flash.c
 +++ b/drivers/mtd/maps/lantiq-flash.c
-@@ -134,7 +134,11 @@ ltq_mtd_probe(struct platform_device *pdev)
+@@ -134,7 +134,11 @@ ltq_mtd_probe(struct platform_device *pd
  	}
  	}
  
  
  	ltq_mtd->map = kzalloc(sizeof(struct map_info), GFP_KERNEL);
  	ltq_mtd->map = kzalloc(sizeof(struct map_info), GFP_KERNEL);
@@ -24,6 +22,3 @@ index d7ac65d..95b155a 100644
  	ltq_mtd->map->size = resource_size(ltq_mtd->res);
  	ltq_mtd->map->size = resource_size(ltq_mtd->res);
  	ltq_mtd->map->virt = devm_ioremap_resource(&pdev->dev, ltq_mtd->res);
  	ltq_mtd->map->virt = devm_ioremap_resource(&pdev->dev, ltq_mtd->res);
  	if (IS_ERR(ltq_mtd->map->virt)) {
  	if (IS_ERR(ltq_mtd->map->virt)) {
--- 
-1.7.10.4
-

+ 1 - 6
target/linux/lantiq/patches-3.10/0015-MTD-lantiq-xway-fix-invalid-operator.patch

@@ -11,11 +11,9 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/mtd/nand/xway_nand.c |    2 +-
  drivers/mtd/nand/xway_nand.c |    2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 
-diff --git a/drivers/mtd/nand/xway_nand.c b/drivers/mtd/nand/xway_nand.c
-index 3f81dc8..169a91d 100644
 --- a/drivers/mtd/nand/xway_nand.c
 --- a/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
-@@ -124,7 +124,7 @@ static unsigned char xway_read_byte(struct mtd_info *mtd)
+@@ -124,7 +124,7 @@ static unsigned char xway_read_byte(stru
  	int ret;
  	int ret;
  
  
  	spin_lock_irqsave(&ebu_lock, flags);
  	spin_lock_irqsave(&ebu_lock, flags);
@@ -24,6 +22,3 @@ index 3f81dc8..169a91d 100644
  	spin_unlock_irqrestore(&ebu_lock, flags);
  	spin_unlock_irqrestore(&ebu_lock, flags);
  
  
  	return ret;
  	return ret;
--- 
-1.7.10.4
-

+ 1 - 6
target/linux/lantiq/patches-3.10/0016-MTD-lantiq-xway-the-latched-command-should-be-persis.patch

@@ -9,8 +9,6 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/mtd/nand/xway_nand.c |   12 ++++++------
  drivers/mtd/nand/xway_nand.c |   12 ++++++------
  1 file changed, 6 insertions(+), 6 deletions(-)
  1 file changed, 6 insertions(+), 6 deletions(-)
 
 
-diff --git a/drivers/mtd/nand/xway_nand.c b/drivers/mtd/nand/xway_nand.c
-index 169a91d..7f2bdd1 100644
 --- a/drivers/mtd/nand/xway_nand.c
 --- a/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 @@ -54,6 +54,8 @@
 @@ -54,6 +54,8 @@
@@ -22,7 +20,7 @@ index 169a91d..7f2bdd1 100644
  static void xway_reset_chip(struct nand_chip *chip)
  static void xway_reset_chip(struct nand_chip *chip)
  {
  {
  	unsigned long nandaddr = (unsigned long) chip->IO_ADDR_W;
  	unsigned long nandaddr = (unsigned long) chip->IO_ADDR_W;
-@@ -94,17 +96,15 @@ static void xway_cmd_ctrl(struct mtd_info *mtd, int cmd, unsigned int ctrl)
+@@ -94,17 +96,15 @@ static void xway_cmd_ctrl(struct mtd_inf
  	unsigned long flags;
  	unsigned long flags;
  
  
  	if (ctrl & NAND_CTRL_CHANGE) {
  	if (ctrl & NAND_CTRL_CHANGE) {
@@ -44,6 +42,3 @@ index 169a91d..7f2bdd1 100644
  		while ((ltq_ebu_r32(EBU_NAND_WAIT) & NAND_WAIT_WR_C) == 0)
  		while ((ltq_ebu_r32(EBU_NAND_WAIT) & NAND_WAIT_WR_C) == 0)
  			;
  			;
  		spin_unlock_irqrestore(&ebu_lock, flags);
  		spin_unlock_irqrestore(&ebu_lock, flags);
--- 
-1.7.10.4
-

+ 0 - 5
target/linux/lantiq/patches-3.10/0017-MTD-lantiq-xway-remove-endless-loop.patch

@@ -12,8 +12,6 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/mtd/nand/xway_nand.c |   10 ++++++++--
  drivers/mtd/nand/xway_nand.c |   10 ++++++++--
  1 file changed, 8 insertions(+), 2 deletions(-)
  1 file changed, 8 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/mtd/nand/xway_nand.c b/drivers/mtd/nand/xway_nand.c
-index 7f2bdd1..8d14f1b 100644
 --- a/drivers/mtd/nand/xway_nand.c
 --- a/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 @@ -59,16 +59,22 @@ static u32 xway_latchcmd;
 @@ -59,16 +59,22 @@ static u32 xway_latchcmd;
@@ -41,6 +39,3 @@ index 7f2bdd1..8d14f1b 100644
  	spin_unlock_irqrestore(&ebu_lock, flags);
  	spin_unlock_irqrestore(&ebu_lock, flags);
  }
  }
  
  
--- 
-1.7.10.4
-

+ 2 - 7
target/linux/lantiq/patches-3.10/0018-MTD-lantiq-xway-add-missing-write_buf-and-read_buf-t.patch

@@ -9,11 +9,9 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/mtd/nand/xway_nand.c |   28 ++++++++++++++++++++++++++++
  drivers/mtd/nand/xway_nand.c |   28 ++++++++++++++++++++++++++++
  1 file changed, 28 insertions(+)
  1 file changed, 28 insertions(+)
 
 
-diff --git a/drivers/mtd/nand/xway_nand.c b/drivers/mtd/nand/xway_nand.c
-index 8d14f1b..f813a55 100644
 --- a/drivers/mtd/nand/xway_nand.c
 --- a/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
 +++ b/drivers/mtd/nand/xway_nand.c
-@@ -136,6 +136,32 @@ static unsigned char xway_read_byte(struct mtd_info *mtd)
+@@ -136,6 +136,32 @@ static unsigned char xway_read_byte(stru
  	return ret;
  	return ret;
  }
  }
  
  
@@ -46,7 +44,7 @@ index 8d14f1b..f813a55 100644
  static int xway_nand_probe(struct platform_device *pdev)
  static int xway_nand_probe(struct platform_device *pdev)
  {
  {
  	struct nand_chip *this = platform_get_drvdata(pdev);
  	struct nand_chip *this = platform_get_drvdata(pdev);
-@@ -181,6 +207,8 @@ static struct platform_nand_data xway_nand_data = {
+@@ -181,6 +207,8 @@ static struct platform_nand_data xway_na
  		.dev_ready	= xway_dev_ready,
  		.dev_ready	= xway_dev_ready,
  		.select_chip	= xway_select_chip,
  		.select_chip	= xway_select_chip,
  		.read_byte	= xway_read_byte,
  		.read_byte	= xway_read_byte,
@@ -55,6 +53,3 @@ index 8d14f1b..f813a55 100644
  	}
  	}
  };
  };
  
  
--- 
-1.7.10.4
-

+ 1 - 12
target/linux/lantiq/patches-3.10/0019-NET-lantiq-adds-PHY11G-firmware-blobs.patch

@@ -12,11 +12,9 @@ Signed-off-by: John Crispin <[email protected]>
  create mode 100644 firmware/lantiq/COPYING
  create mode 100644 firmware/lantiq/COPYING
  create mode 100644 firmware/lantiq/README
  create mode 100644 firmware/lantiq/README
 
 
-diff --git a/firmware/Makefile b/firmware/Makefile
-index cbb09ce..c8697df 100644
 --- a/firmware/Makefile
 --- a/firmware/Makefile
 +++ b/firmware/Makefile
 +++ b/firmware/Makefile
-@@ -134,6 +134,9 @@ fw-shipped-$(CONFIG_USB_SERIAL_KEYSPAN_PDA) += keyspan_pda/keyspan_pda.fw
+@@ -134,6 +134,9 @@ fw-shipped-$(CONFIG_USB_SERIAL_KEYSPAN_P
  fw-shipped-$(CONFIG_USB_SERIAL_XIRCOM) += keyspan_pda/xircom_pgs.fw
  fw-shipped-$(CONFIG_USB_SERIAL_XIRCOM) += keyspan_pda/xircom_pgs.fw
  fw-shipped-$(CONFIG_USB_VICAM) += vicam/firmware.fw
  fw-shipped-$(CONFIG_USB_VICAM) += vicam/firmware.fw
  fw-shipped-$(CONFIG_VIDEO_CPIA2) += cpia2/stv0672_vp4.bin
  fw-shipped-$(CONFIG_VIDEO_CPIA2) += cpia2/stv0672_vp4.bin
@@ -26,9 +24,6 @@ index cbb09ce..c8697df 100644
  fw-shipped-$(CONFIG_YAM) += yam/1200.bin yam/9600.bin
  fw-shipped-$(CONFIG_YAM) += yam/1200.bin yam/9600.bin
  
  
  fw-shipped-all := $(fw-shipped-y) $(fw-shipped-m) $(fw-shipped-)
  fw-shipped-all := $(fw-shipped-y) $(fw-shipped-m) $(fw-shipped-)
-diff --git a/firmware/lantiq/COPYING b/firmware/lantiq/COPYING
-new file mode 100644
-index 0000000..5ec70b2
 --- /dev/null
 --- /dev/null
 +++ b/firmware/lantiq/COPYING
 +++ b/firmware/lantiq/COPYING
 @@ -0,0 +1,286 @@
 @@ -0,0 +1,286 @@
@@ -318,9 +313,6 @@ index 0000000..5ec70b2
 +POSSIBILITY OF SUCH DAMAGES.
 +POSSIBILITY OF SUCH DAMAGES.
 +
 +
 +		     END OF TERMS AND CONDITIONS
 +		     END OF TERMS AND CONDITIONS
-diff --git a/firmware/lantiq/README b/firmware/lantiq/README
-new file mode 100644
-index 0000000..cb1a10a
 --- /dev/null
 --- /dev/null
 +++ b/firmware/lantiq/README
 +++ b/firmware/lantiq/README
 @@ -0,0 +1,45 @@
 @@ -0,0 +1,45 @@
@@ -369,6 +361,3 @@ index 0000000..cb1a10a
 +# GPHY core on Lantiq XWAY VR9 v1.1
 +# GPHY core on Lantiq XWAY VR9 v1.1
 +lantiq/vr9_phy11g_a2x.bin
 +lantiq/vr9_phy11g_a2x.bin
 +lantiq/vr9_phy22f_a2x.bin
 +lantiq/vr9_phy22f_a2x.bin
--- 
-1.7.10.4
-

+ 0 - 13
target/linux/lantiq/patches-3.10/0020-NET-MIPS-lantiq-adds-xrx200-net.patch

@@ -12,8 +12,6 @@ Subject: [PATCH 20/34] NET: MIPS: lantiq: adds xrx200-net
  create mode 100644 drivers/net/ethernet/lantiq_pce.h
  create mode 100644 drivers/net/ethernet/lantiq_pce.h
  create mode 100644 drivers/net/ethernet/lantiq_xrx200.c
  create mode 100644 drivers/net/ethernet/lantiq_xrx200.c
 
 
-diff --git a/drivers/net/ethernet/Kconfig b/drivers/net/ethernet/Kconfig
-index ed956e0..9261fe4 100644
 --- a/drivers/net/ethernet/Kconfig
 --- a/drivers/net/ethernet/Kconfig
 +++ b/drivers/net/ethernet/Kconfig
 +++ b/drivers/net/ethernet/Kconfig
 @@ -83,7 +83,13 @@ config LANTIQ_ETOP
 @@ -83,7 +83,13 @@ config LANTIQ_ETOP
@@ -31,8 +29,6 @@ index ed956e0..9261fe4 100644
  
  
  source "drivers/net/ethernet/marvell/Kconfig"
  source "drivers/net/ethernet/marvell/Kconfig"
  source "drivers/net/ethernet/mellanox/Kconfig"
  source "drivers/net/ethernet/mellanox/Kconfig"
-diff --git a/drivers/net/ethernet/Makefile b/drivers/net/ethernet/Makefile
-index 8268d85..e8410d8 100644
 --- a/drivers/net/ethernet/Makefile
 --- a/drivers/net/ethernet/Makefile
 +++ b/drivers/net/ethernet/Makefile
 +++ b/drivers/net/ethernet/Makefile
 @@ -36,6 +36,7 @@ obj-$(CONFIG_IP1000) += icplus/
 @@ -36,6 +36,7 @@ obj-$(CONFIG_IP1000) += icplus/
@@ -43,9 +39,6 @@ index 8268d85..e8410d8 100644
  obj-$(CONFIG_NET_VENDOR_MARVELL) += marvell/
  obj-$(CONFIG_NET_VENDOR_MARVELL) += marvell/
  obj-$(CONFIG_NET_VENDOR_MELLANOX) += mellanox/
  obj-$(CONFIG_NET_VENDOR_MELLANOX) += mellanox/
  obj-$(CONFIG_NET_VENDOR_MICREL) += micrel/
  obj-$(CONFIG_NET_VENDOR_MICREL) += micrel/
-diff --git a/drivers/net/ethernet/lantiq_pce.h b/drivers/net/ethernet/lantiq_pce.h
-new file mode 100644
-index 0000000..0c38efe
 --- /dev/null
 --- /dev/null
 +++ b/drivers/net/ethernet/lantiq_pce.h
 +++ b/drivers/net/ethernet/lantiq_pce.h
 @@ -0,0 +1,163 @@
 @@ -0,0 +1,163 @@
@@ -212,9 +205,6 @@ index 0000000..0c38efe
 +	MC_ENTRY(0x0000, 0x0000, 39, OUT_NONE,   0, INSTR,   FLAG_END,   0),
 +	MC_ENTRY(0x0000, 0x0000, 39, OUT_NONE,   0, INSTR,   FLAG_END,   0),
 +	MC_ENTRY(0x0000, 0x0000, 39, OUT_NONE,   0, INSTR,   FLAG_END,   0),
 +	MC_ENTRY(0x0000, 0x0000, 39, OUT_NONE,   0, INSTR,   FLAG_END,   0),
 +};
 +};
-diff --git a/drivers/net/ethernet/lantiq_xrx200.c b/drivers/net/ethernet/lantiq_xrx200.c
-new file mode 100644
-index 0000000..2d40c64
 --- /dev/null
 --- /dev/null
 +++ b/drivers/net/ethernet/lantiq_xrx200.c
 +++ b/drivers/net/ethernet/lantiq_xrx200.c
 @@ -0,0 +1,1203 @@
 @@ -0,0 +1,1203 @@
@@ -1421,6 +1411,3 @@ index 0000000..2d40c64
 +MODULE_AUTHOR("John Crispin <[email protected]>");
 +MODULE_AUTHOR("John Crispin <[email protected]>");
 +MODULE_DESCRIPTION("Lantiq SoC XRX200 ethernet");
 +MODULE_DESCRIPTION("Lantiq SoC XRX200 ethernet");
 +MODULE_LICENSE("GPL");
 +MODULE_LICENSE("GPL");
--- 
-1.7.10.4
-

+ 41 - 48
target/linux/lantiq/patches-3.10/0021-NET-MIPS-lantiq-update-etop-driver-for-devicetree.patch

@@ -7,8 +7,6 @@ Subject: [PATCH 21/34] NET: MIPS: lantiq: update etop driver for devicetree
  drivers/net/ethernet/lantiq_etop.c |  501 +++++++++++++++++++++++++-----------
  drivers/net/ethernet/lantiq_etop.c |  501 +++++++++++++++++++++++++-----------
  1 file changed, 355 insertions(+), 146 deletions(-)
  1 file changed, 355 insertions(+), 146 deletions(-)
 
 
-diff --git a/drivers/net/ethernet/lantiq_etop.c b/drivers/net/ethernet/lantiq_etop.c
-index bfdb0686..cdc0c0e 100644
 --- a/drivers/net/ethernet/lantiq_etop.c
 --- a/drivers/net/ethernet/lantiq_etop.c
 +++ b/drivers/net/ethernet/lantiq_etop.c
 +++ b/drivers/net/ethernet/lantiq_etop.c
 @@ -12,7 +12,7 @@
 @@ -12,7 +12,7 @@
@@ -35,15 +33,13 @@ index bfdb0686..cdc0c0e 100644
  #define ETOP_MII_REVERSE	0xe
  #define ETOP_MII_REVERSE	0xe
  #define ETOP_PLEN_UNDER		0x40
  #define ETOP_PLEN_UNDER		0x40
  #define ETOP_CGEN		0x800
  #define ETOP_CGEN		0x800
--
++#define ETOP_CFG_MII0		0x01
+ 
 -/* use 2 static channels for TX/RX */
 -/* use 2 static channels for TX/RX */
 -#define LTQ_ETOP_TX_CHANNEL	1
 -#define LTQ_ETOP_TX_CHANNEL	1
 -#define LTQ_ETOP_RX_CHANNEL	6
 -#define LTQ_ETOP_RX_CHANNEL	6
 -#define IS_TX(x)		(x == LTQ_ETOP_TX_CHANNEL)
 -#define IS_TX(x)		(x == LTQ_ETOP_TX_CHANNEL)
 -#define IS_RX(x)		(x == LTQ_ETOP_RX_CHANNEL)
 -#define IS_RX(x)		(x == LTQ_ETOP_RX_CHANNEL)
--
-+#define ETOP_CFG_MII0		0x01
-+
 +#define LTQ_GBIT_MDIO_CTL	0xCC
 +#define LTQ_GBIT_MDIO_CTL	0xCC
 +#define LTQ_GBIT_MDIO_DATA	0xd0
 +#define LTQ_GBIT_MDIO_DATA	0xd0
 +#define LTQ_GBIT_GCTL0		0x68
 +#define LTQ_GBIT_GCTL0		0x68
@@ -74,7 +70,7 @@ index bfdb0686..cdc0c0e 100644
 +#define MDIO_XR9_REG_OFFSET	0
 +#define MDIO_XR9_REG_OFFSET	0
 +#define MDIO_XR9_ADDR_OFFSET	5
 +#define MDIO_XR9_ADDR_OFFSET	5
 +#define MDIO_XR9_WR_OFFSET	16
 +#define MDIO_XR9_WR_OFFSET	16
-+
+ 
 +#define LTQ_DMA_ETOP	((of_machine_is_compatible("lantiq,ase")) ? \
 +#define LTQ_DMA_ETOP	((of_machine_is_compatible("lantiq,ase")) ? \
 +			(INT_NUM_IM3_IRL0) : (INT_NUM_IM2_IRL0))
 +			(INT_NUM_IM3_IRL0) : (INT_NUM_IM2_IRL0))
 +
 +
@@ -142,7 +138,7 @@ index bfdb0686..cdc0c0e 100644
  	if (!ch->skb[ch->dma.desc])
  	if (!ch->skb[ch->dma.desc])
  		return -ENOMEM;
  		return -ENOMEM;
  	ch->dma.desc_base[ch->dma.desc].addr = dma_map_single(NULL,
  	ch->dma.desc_base[ch->dma.desc].addr = dma_map_single(NULL,
-@@ -149,8 +202,11 @@ ltq_etop_hw_receive(struct ltq_etop_chan *ch)
+@@ -149,8 +202,11 @@ ltq_etop_hw_receive(struct ltq_etop_chan
  	spin_unlock_irqrestore(&priv->lock, flags);
  	spin_unlock_irqrestore(&priv->lock, flags);
  
  
  	skb_put(skb, len);
  	skb_put(skb, len);
@@ -154,7 +150,7 @@ index bfdb0686..cdc0c0e 100644
  }
  }
  
  
  static int
  static int
-@@ -158,8 +214,10 @@ ltq_etop_poll_rx(struct napi_struct *napi, int budget)
+@@ -158,8 +214,10 @@ ltq_etop_poll_rx(struct napi_struct *nap
  {
  {
  	struct ltq_etop_chan *ch = container_of(napi,
  	struct ltq_etop_chan *ch = container_of(napi,
  				struct ltq_etop_chan, napi);
  				struct ltq_etop_chan, napi);
@@ -165,7 +161,7 @@ index bfdb0686..cdc0c0e 100644
  
  
  	while ((rx < budget) && !complete) {
  	while ((rx < budget) && !complete) {
  		struct ltq_dma_desc *desc = &ch->dma.desc_base[ch->dma.desc];
  		struct ltq_dma_desc *desc = &ch->dma.desc_base[ch->dma.desc];
-@@ -173,7 +231,9 @@ ltq_etop_poll_rx(struct napi_struct *napi, int budget)
+@@ -173,7 +231,9 @@ ltq_etop_poll_rx(struct napi_struct *nap
  	}
  	}
  	if (complete || !rx) {
  	if (complete || !rx) {
  		napi_complete(&ch->napi);
  		napi_complete(&ch->napi);
@@ -175,7 +171,7 @@ index bfdb0686..cdc0c0e 100644
  	}
  	}
  	return rx;
  	return rx;
  }
  }
-@@ -185,12 +245,14 @@ ltq_etop_poll_tx(struct napi_struct *napi, int budget)
+@@ -185,12 +245,14 @@ ltq_etop_poll_tx(struct napi_struct *nap
  		container_of(napi, struct ltq_etop_chan, napi);
  		container_of(napi, struct ltq_etop_chan, napi);
  	struct ltq_etop_priv *priv = netdev_priv(ch->netdev);
  	struct ltq_etop_priv *priv = netdev_priv(ch->netdev);
  	struct netdev_queue *txq =
  	struct netdev_queue *txq =
@@ -191,7 +187,7 @@ index bfdb0686..cdc0c0e 100644
  		dev_kfree_skb_any(ch->skb[ch->tx_free]);
  		dev_kfree_skb_any(ch->skb[ch->tx_free]);
  		ch->skb[ch->tx_free] = NULL;
  		ch->skb[ch->tx_free] = NULL;
  		memset(&ch->dma.desc_base[ch->tx_free], 0,
  		memset(&ch->dma.desc_base[ch->tx_free], 0,
-@@ -203,7 +265,9 @@ ltq_etop_poll_tx(struct napi_struct *napi, int budget)
+@@ -203,7 +265,9 @@ ltq_etop_poll_tx(struct napi_struct *nap
  	if (netif_tx_queue_stopped(txq))
  	if (netif_tx_queue_stopped(txq))
  		netif_tx_start_queue(txq);
  		netif_tx_start_queue(txq);
  	napi_complete(&ch->napi);
  	napi_complete(&ch->napi);
@@ -215,7 +211,7 @@ index bfdb0686..cdc0c0e 100644
  	return IRQ_HANDLED;
  	return IRQ_HANDLED;
  }
  }
  
  
-@@ -225,7 +290,7 @@ ltq_etop_free_channel(struct net_device *dev, struct ltq_etop_chan *ch)
+@@ -225,7 +290,7 @@ ltq_etop_free_channel(struct net_device
  	ltq_dma_free(&ch->dma);
  	ltq_dma_free(&ch->dma);
  	if (ch->dma.irq)
  	if (ch->dma.irq)
  		free_irq(ch->dma.irq, priv);
  		free_irq(ch->dma.irq, priv);
@@ -280,17 +276,17 @@ index bfdb0686..cdc0c0e 100644
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
 -	int i;
 -	int i;
 +	int mii_mode = priv->mii_mode;
 +	int mii_mode = priv->mii_mode;
-+
-+	clk_enable(priv->clk_ppe);
  
  
 -	ltq_pmu_enable(PMU_PPE);
 -	ltq_pmu_enable(PMU_PPE);
++	clk_enable(priv->clk_ppe);
+ 
+-	switch (priv->pldata->mii_mode) {
 +	if (of_machine_is_compatible("lantiq,ar9")) {
 +	if (of_machine_is_compatible("lantiq,ar9")) {
 +		ltq_etop_gbit_init(dev);
 +		ltq_etop_gbit_init(dev);
 +		/* force the etops link to the gbit to MII */
 +		/* force the etops link to the gbit to MII */
 +		mii_mode = PHY_INTERFACE_MODE_MII;
 +		mii_mode = PHY_INTERFACE_MODE_MII;
 +	}
 +	}
- 
--	switch (priv->pldata->mii_mode) {
++
 +	switch (mii_mode) {
 +	switch (mii_mode) {
  	case PHY_INTERFACE_MODE_RMII:
  	case PHY_INTERFACE_MODE_RMII:
  		ltq_etop_w32_mask(ETOP_MII_MASK,
  		ltq_etop_w32_mask(ETOP_MII_MASK,
@@ -386,7 +382,7 @@ index bfdb0686..cdc0c0e 100644
  }
  }
  
  
  static void
  static void
-@@ -312,7 +445,10 @@ ltq_etop_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
+@@ -312,7 +445,10 @@ ltq_etop_get_settings(struct net_device
  {
  {
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  
  
@@ -398,7 +394,7 @@ index bfdb0686..cdc0c0e 100644
  }
  }
  
  
  static int
  static int
-@@ -320,7 +456,10 @@ ltq_etop_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
+@@ -320,7 +456,10 @@ ltq_etop_set_settings(struct net_device
  {
  {
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  
  
@@ -410,7 +406,7 @@ index bfdb0686..cdc0c0e 100644
  }
  }
  
  
  static int
  static int
-@@ -328,7 +467,10 @@ ltq_etop_nway_reset(struct net_device *dev)
+@@ -328,7 +467,10 @@ ltq_etop_nway_reset(struct net_device *d
  {
  {
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  
  
@@ -422,7 +418,7 @@ index bfdb0686..cdc0c0e 100644
  }
  }
  
  
  static const struct ethtool_ops ltq_etop_ethtool_ops = {
  static const struct ethtool_ops ltq_etop_ethtool_ops = {
-@@ -339,6 +481,39 @@ static const struct ethtool_ops ltq_etop_ethtool_ops = {
+@@ -339,6 +481,39 @@ static const struct ethtool_ops ltq_etop
  };
  };
  
  
  static int
  static int
@@ -462,18 +458,11 @@ index bfdb0686..cdc0c0e 100644
  ltq_etop_mdio_wr(struct mii_bus *bus, int phy_addr, int phy_reg, u16 phy_data)
  ltq_etop_mdio_wr(struct mii_bus *bus, int phy_addr, int phy_reg, u16 phy_data)
  {
  {
  	u32 val = MDIO_REQUEST |
  	u32 val = MDIO_REQUEST |
-@@ -379,14 +554,18 @@ ltq_etop_mdio_probe(struct net_device *dev)
+@@ -379,14 +554,18 @@ ltq_etop_mdio_probe(struct net_device *d
  {
  {
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct phy_device *phydev = NULL;
  	struct phy_device *phydev = NULL;
 -	int phy_addr;
 -	int phy_addr;
--
--	for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) {
--		if (priv->mii_bus->phy_map[phy_addr]) {
--			phydev = priv->mii_bus->phy_map[phy_addr];
--			break;
--		}
--	}
 +	u32 phy_supported =  (SUPPORTED_10baseT_Half
 +	u32 phy_supported =  (SUPPORTED_10baseT_Half
 +			| SUPPORTED_10baseT_Full
 +			| SUPPORTED_10baseT_Full
 +			| SUPPORTED_100baseT_Half
 +			| SUPPORTED_100baseT_Half
@@ -481,7 +470,13 @@ index bfdb0686..cdc0c0e 100644
 +			| SUPPORTED_Autoneg
 +			| SUPPORTED_Autoneg
 +			| SUPPORTED_MII
 +			| SUPPORTED_MII
 +			| SUPPORTED_TP);
 +			| SUPPORTED_TP);
-+
+ 
+-	for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) {
+-		if (priv->mii_bus->phy_map[phy_addr]) {
+-			phydev = priv->mii_bus->phy_map[phy_addr];
+-			break;
+-		}
+-	}
 +	if (of_machine_is_compatible("lantiq,ase"))
 +	if (of_machine_is_compatible("lantiq,ase"))
 +		phydev = priv->mii_bus->phy_map[8];
 +		phydev = priv->mii_bus->phy_map[8];
 +	else
 +	else
@@ -489,7 +484,7 @@ index bfdb0686..cdc0c0e 100644
  
  
  	if (!phydev) {
  	if (!phydev) {
  		netdev_err(dev, "no PHY found\n");
  		netdev_err(dev, "no PHY found\n");
-@@ -394,21 +573,18 @@ ltq_etop_mdio_probe(struct net_device *dev)
+@@ -394,21 +573,18 @@ ltq_etop_mdio_probe(struct net_device *d
  	}
  	}
  
  
  	phydev = phy_connect(dev, dev_name(&phydev->dev),
  	phydev = phy_connect(dev, dev_name(&phydev->dev),
@@ -516,7 +511,7 @@ index bfdb0686..cdc0c0e 100644
  	phydev->advertising = phydev->supported;
  	phydev->advertising = phydev->supported;
  	priv->phydev = phydev;
  	priv->phydev = phydev;
  	pr_info("%s: attached PHY [%s] (phy_addr=%s, irq=%d)\n",
  	pr_info("%s: attached PHY [%s] (phy_addr=%s, irq=%d)\n",
-@@ -433,8 +609,13 @@ ltq_etop_mdio_init(struct net_device *dev)
+@@ -433,8 +609,13 @@ ltq_etop_mdio_init(struct net_device *de
  	}
  	}
  
  
  	priv->mii_bus->priv = dev;
  	priv->mii_bus->priv = dev;
@@ -572,6 +567,12 @@ index bfdb0686..cdc0c0e 100644
 -	phy_stop(priv->phydev);
 -	phy_stop(priv->phydev);
 -	for (i = 0; i < MAX_DMA_CHAN; i++) {
 -	for (i = 0; i < MAX_DMA_CHAN; i++) {
 -		struct ltq_etop_chan *ch = &priv->ch[i];
 -		struct ltq_etop_chan *ch = &priv->ch[i];
+-
+-		if (!IS_RX(i) && !IS_TX(i))
+-			continue;
+-		napi_disable(&ch->napi);
+-		ltq_dma_close(&ch->dma);
+-	}
 +	if (priv->phydev)
 +	if (priv->phydev)
 +		phy_stop(priv->phydev);
 +		phy_stop(priv->phydev);
 +	napi_disable(&priv->txch.napi);
 +	napi_disable(&priv->txch.napi);
@@ -581,16 +582,11 @@ index bfdb0686..cdc0c0e 100644
 +	ltq_dma_close(&priv->txch.dma);
 +	ltq_dma_close(&priv->txch.dma);
 +	ltq_dma_close(&priv->rxch.dma);
 +	ltq_dma_close(&priv->rxch.dma);
 +	spin_unlock_irqrestore(&priv->lock, flags);
 +	spin_unlock_irqrestore(&priv->lock, flags);
- 
--		if (!IS_RX(i) && !IS_TX(i))
--			continue;
--		napi_disable(&ch->napi);
--		ltq_dma_close(&ch->dma);
--	}
++
  	return 0;
  	return 0;
  }
  }
  
  
-@@ -523,16 +707,16 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
+@@ -523,16 +707,16 @@ ltq_etop_tx(struct sk_buff *skb, struct
  	int queue = skb_get_queue_mapping(skb);
  	int queue = skb_get_queue_mapping(skb);
  	struct netdev_queue *txq = netdev_get_tx_queue(dev, queue);
  	struct netdev_queue *txq = netdev_get_tx_queue(dev, queue);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
  	struct ltq_etop_priv *priv = netdev_priv(dev);
@@ -612,7 +608,7 @@ index bfdb0686..cdc0c0e 100644
  		netdev_err(dev, "tx ring full\n");
  		netdev_err(dev, "tx ring full\n");
  		netif_tx_stop_queue(txq);
  		netif_tx_stop_queue(txq);
  		return NETDEV_TX_BUSY;
  		return NETDEV_TX_BUSY;
-@@ -540,7 +724,7 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
+@@ -540,7 +724,7 @@ ltq_etop_tx(struct sk_buff *skb, struct
  
  
  	/* dma needs to start on a 16 byte aligned address */
  	/* dma needs to start on a 16 byte aligned address */
  	byte_offset = CPHYSADDR(skb->data) % 16;
  	byte_offset = CPHYSADDR(skb->data) % 16;
@@ -621,7 +617,7 @@ index bfdb0686..cdc0c0e 100644
  
  
  	dev->trans_start = jiffies;
  	dev->trans_start = jiffies;
  
  
-@@ -550,11 +734,11 @@ ltq_etop_tx(struct sk_buff *skb, struct net_device *dev)
+@@ -550,11 +734,11 @@ ltq_etop_tx(struct sk_buff *skb, struct
  	wmb();
  	wmb();
  	desc->ctl = LTQ_DMA_OWN | LTQ_DMA_SOP | LTQ_DMA_EOP |
  	desc->ctl = LTQ_DMA_OWN | LTQ_DMA_SOP | LTQ_DMA_EOP |
  		LTQ_DMA_TX_OFFSET(byte_offset) | (len & LTQ_DMA_SIZE_MASK);
  		LTQ_DMA_TX_OFFSET(byte_offset) | (len & LTQ_DMA_SIZE_MASK);
@@ -682,7 +678,7 @@ index bfdb0686..cdc0c0e 100644
  	return 0;
  	return 0;
  
  
  err_netdev:
  err_netdev:
-@@ -680,6 +863,9 @@ ltq_etop_tx_timeout(struct net_device *dev)
+@@ -680,6 +863,9 @@ ltq_etop_tx_timeout(struct net_device *d
  	err = ltq_etop_hw_init(dev);
  	err = ltq_etop_hw_init(dev);
  	if (err)
  	if (err)
  		goto err_hw;
  		goto err_hw;
@@ -692,7 +688,7 @@ index bfdb0686..cdc0c0e 100644
  	dev->trans_start = jiffies;
  	dev->trans_start = jiffies;
  	netif_wake_queue(dev);
  	netif_wake_queue(dev);
  	return;
  	return;
-@@ -703,14 +889,18 @@ static const struct net_device_ops ltq_eth_netdev_ops = {
+@@ -703,14 +889,18 @@ static const struct net_device_ops ltq_e
  	.ndo_tx_timeout = ltq_etop_tx_timeout,
  	.ndo_tx_timeout = ltq_etop_tx_timeout,
  };
  };
  
  
@@ -715,7 +711,7 @@ index bfdb0686..cdc0c0e 100644
  
  
  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
  	if (!res) {
  	if (!res) {
-@@ -736,30 +926,58 @@ ltq_etop_probe(struct platform_device *pdev)
+@@ -736,30 +926,58 @@ ltq_etop_probe(struct platform_device *p
  		goto err_out;
  		goto err_out;
  	}
  	}
  
  
@@ -789,7 +785,7 @@ index bfdb0686..cdc0c0e 100644
  
  
  	err = register_netdev(dev);
  	err = register_netdev(dev);
  	if (err)
  	if (err)
-@@ -788,32 +1006,23 @@ ltq_etop_remove(struct platform_device *pdev)
+@@ -788,32 +1006,23 @@ ltq_etop_remove(struct platform_device *
  	return 0;
  	return 0;
  }
  }
  
  
@@ -831,6 +827,3 @@ index bfdb0686..cdc0c0e 100644
  
  
  MODULE_AUTHOR("John Crispin <[email protected]>");
  MODULE_AUTHOR("John Crispin <[email protected]>");
  MODULE_DESCRIPTION("Lantiq SoC ETOP");
  MODULE_DESCRIPTION("Lantiq SoC ETOP");
--- 
-1.7.10.4
-

+ 3 - 10
target/linux/lantiq/patches-3.10/0022-NET-multi-phy-support.patch

@@ -9,11 +9,9 @@ Signed-off-by: John Crispin <[email protected]>
  include/linux/phy.h   |    2 +-
  include/linux/phy.h   |    2 +-
  2 files changed, 7 insertions(+), 4 deletions(-)
  2 files changed, 7 insertions(+), 4 deletions(-)
 
 
-diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
-index 38f0b31..ad64a75 100644
 --- a/drivers/net/phy/phy.c
 --- a/drivers/net/phy/phy.c
 +++ b/drivers/net/phy/phy.c
 +++ b/drivers/net/phy/phy.c
-@@ -773,7 +773,8 @@ void phy_state_machine(struct work_struct *work)
+@@ -820,7 +820,8 @@ void phy_state_machine(struct work_struc
  			 * negotiation for now */
  			 * negotiation for now */
  			if (!phydev->link) {
  			if (!phydev->link) {
  				phydev->state = PHY_NOLINK;
  				phydev->state = PHY_NOLINK;
@@ -23,7 +21,7 @@ index 38f0b31..ad64a75 100644
  				phydev->adjust_link(phydev->attached_dev);
  				phydev->adjust_link(phydev->attached_dev);
  				break;
  				break;
  			}
  			}
-@@ -843,7 +844,8 @@ void phy_state_machine(struct work_struct *work)
+@@ -890,7 +891,8 @@ void phy_state_machine(struct work_struc
  				netif_carrier_on(phydev->attached_dev);
  				netif_carrier_on(phydev->attached_dev);
  			} else {
  			} else {
  				phydev->state = PHY_NOLINK;
  				phydev->state = PHY_NOLINK;
@@ -33,7 +31,7 @@ index 38f0b31..ad64a75 100644
  			}
  			}
  
  
  			phydev->adjust_link(phydev->attached_dev);
  			phydev->adjust_link(phydev->attached_dev);
-@@ -855,7 +857,8 @@ void phy_state_machine(struct work_struct *work)
+@@ -902,7 +904,8 @@ void phy_state_machine(struct work_struc
  		case PHY_HALTED:
  		case PHY_HALTED:
  			if (phydev->link) {
  			if (phydev->link) {
  				phydev->link = 0;
  				phydev->link = 0;
@@ -43,8 +41,6 @@ index 38f0b31..ad64a75 100644
  				phydev->adjust_link(phydev->attached_dev);
  				phydev->adjust_link(phydev->attached_dev);
  			}
  			}
  			break;
  			break;
-diff --git a/include/linux/phy.h b/include/linux/phy.h
-index 9e11039..9a8ca78 100644
 --- a/include/linux/phy.h
 --- a/include/linux/phy.h
 +++ b/include/linux/phy.h
 +++ b/include/linux/phy.h
 @@ -298,7 +298,7 @@ struct phy_device {
 @@ -298,7 +298,7 @@ struct phy_device {
@@ -56,6 +52,3 @@ index 9e11039..9a8ca78 100644
  	enum phy_state state;
  	enum phy_state state;
  
  
  	u32 dev_flags;
  	u32 dev_flags;
--- 
-1.7.10.4
-

+ 1 - 8
target/linux/lantiq/patches-3.10/0023-NET-add-of_get_mac_address_mtd.patch

@@ -14,8 +14,6 @@ Signed-off-by: John Crispin <[email protected]>
  include/linux/of_net.h |    1 +
  include/linux/of_net.h |    1 +
  2 files changed, 38 insertions(+)
  2 files changed, 38 insertions(+)
 
 
-diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
-index ffab033..15f4a71 100644
 --- a/drivers/of/of_net.c
 --- a/drivers/of/of_net.c
 +++ b/drivers/of/of_net.c
 +++ b/drivers/of/of_net.c
 @@ -10,6 +10,7 @@
 @@ -10,6 +10,7 @@
@@ -26,7 +24,7 @@ index ffab033..15f4a71 100644
  
  
  /**
  /**
   * It maps 'enum phy_interface_t' found in include/linux/phy.h
   * It maps 'enum phy_interface_t' found in include/linux/phy.h
-@@ -92,3 +93,39 @@ const void *of_get_mac_address(struct device_node *np)
+@@ -92,3 +93,39 @@ const void *of_get_mac_address(struct de
  	return NULL;
  	return NULL;
  }
  }
  EXPORT_SYMBOL(of_get_mac_address);
  EXPORT_SYMBOL(of_get_mac_address);
@@ -66,8 +64,6 @@ index ffab033..15f4a71 100644
 +	return ret;
 +	return ret;
 +}
 +}
 +EXPORT_SYMBOL_GPL(of_get_mac_address_mtd);
 +EXPORT_SYMBOL_GPL(of_get_mac_address_mtd);
-diff --git a/include/linux/of_net.h b/include/linux/of_net.h
-index 61bf53b..6e6b4a9 100644
 --- a/include/linux/of_net.h
 --- a/include/linux/of_net.h
 +++ b/include/linux/of_net.h
 +++ b/include/linux/of_net.h
 @@ -11,6 +11,7 @@
 @@ -11,6 +11,7 @@
@@ -78,6 +74,3 @@ index 61bf53b..6e6b4a9 100644
  #else
  #else
  static inline const int of_get_phy_mode(struct device_node *np)
  static inline const int of_get_phy_mode(struct device_node *np)
  {
  {
--- 
-1.7.10.4
-

+ 1 - 11
target/linux/lantiq/patches-3.10/0024-GPIO-MIPS-lantiq-add-gpio-driver-for-falcon-SoC.patch

@@ -17,8 +17,6 @@ Cc: [email protected]
  3 files changed, 354 insertions(+)
  3 files changed, 354 insertions(+)
  create mode 100644 drivers/gpio/gpio-falcon.c
  create mode 100644 drivers/gpio/gpio-falcon.c
 
 
-diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
-index 573c449..59b8764 100644
 --- a/drivers/gpio/Kconfig
 --- a/drivers/gpio/Kconfig
 +++ b/drivers/gpio/Kconfig
 +++ b/drivers/gpio/Kconfig
 @@ -135,6 +135,11 @@ config GPIO_EP93XX
 @@ -135,6 +135,11 @@ config GPIO_EP93XX
@@ -33,11 +31,9 @@ index 573c449..59b8764 100644
  config GPIO_MM_LANTIQ
  config GPIO_MM_LANTIQ
  	bool "Lantiq Memory mapped GPIOs"
  	bool "Lantiq Memory mapped GPIOs"
  	depends on LANTIQ && SOC_XWAY
  	depends on LANTIQ && SOC_XWAY
-diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
-index 0cb2d65..542960d 100644
 --- a/drivers/gpio/Makefile
 --- a/drivers/gpio/Makefile
 +++ b/drivers/gpio/Makefile
 +++ b/drivers/gpio/Makefile
-@@ -24,6 +24,7 @@ obj-$(CONFIG_GPIO_DA9055)	+= gpio-da9055.o
+@@ -24,6 +24,7 @@ obj-$(CONFIG_GPIO_DA9055)	+= gpio-da9055
  obj-$(CONFIG_ARCH_DAVINCI)	+= gpio-davinci.o
  obj-$(CONFIG_ARCH_DAVINCI)	+= gpio-davinci.o
  obj-$(CONFIG_GPIO_EM)		+= gpio-em.o
  obj-$(CONFIG_GPIO_EM)		+= gpio-em.o
  obj-$(CONFIG_GPIO_EP93XX)	+= gpio-ep93xx.o
  obj-$(CONFIG_GPIO_EP93XX)	+= gpio-ep93xx.o
@@ -45,9 +41,6 @@ index 0cb2d65..542960d 100644
  obj-$(CONFIG_GPIO_GE_FPGA)	+= gpio-ge.o
  obj-$(CONFIG_GPIO_GE_FPGA)	+= gpio-ge.o
  obj-$(CONFIG_GPIO_GRGPIO)	+= gpio-grgpio.o
  obj-$(CONFIG_GPIO_GRGPIO)	+= gpio-grgpio.o
  obj-$(CONFIG_GPIO_ICH)		+= gpio-ich.o
  obj-$(CONFIG_GPIO_ICH)		+= gpio-ich.o
-diff --git a/drivers/gpio/gpio-falcon.c b/drivers/gpio/gpio-falcon.c
-new file mode 100644
-index 0000000..ae3bdfb
 --- /dev/null
 --- /dev/null
 +++ b/drivers/gpio/gpio-falcon.c
 +++ b/drivers/gpio/gpio-falcon.c
 @@ -0,0 +1,348 @@
 @@ -0,0 +1,348 @@
@@ -399,6 +392,3 @@ index 0000000..ae3bdfb
 +}
 +}
 +
 +
 +subsys_initcall(falcon_gpio_init);
 +subsys_initcall(falcon_gpio_init);
--- 
-1.7.10.4
-

+ 10 - 23
target/linux/lantiq/patches-3.10/0025-GPIO-add-gpio_export_with_name.patch

@@ -14,8 +14,6 @@ Signed-off-by: John Crispin <[email protected]>
  include/linux/gpio.h                            |   26 ++++++++-
  include/linux/gpio.h                            |   26 ++++++++-
  5 files changed, 172 insertions(+), 12 deletions(-)
  5 files changed, 172 insertions(+), 12 deletions(-)
 
 
-diff --git a/Documentation/devicetree/bindings/gpio/gpio.txt b/Documentation/devicetree/bindings/gpio/gpio.txt
-index d933af3..c264748 100644
 --- a/Documentation/devicetree/bindings/gpio/gpio.txt
 --- a/Documentation/devicetree/bindings/gpio/gpio.txt
 +++ b/Documentation/devicetree/bindings/gpio/gpio.txt
 +++ b/Documentation/devicetree/bindings/gpio/gpio.txt
 @@ -112,3 +112,63 @@ where,
 @@ -112,3 +112,63 @@ where,
@@ -82,8 +80,6 @@ index d933af3..c264748 100644
 +		gpio-export,output = <1>;
 +		gpio-export,output = <1>;
 +	};
 +	};
 +};
 +};
-diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c
-index 665f953..15ec5e5 100644
 --- a/drivers/gpio/gpiolib-of.c
 --- a/drivers/gpio/gpiolib-of.c
 +++ b/drivers/gpio/gpiolib-of.c
 +++ b/drivers/gpio/gpiolib-of.c
 @@ -21,6 +21,8 @@
 @@ -21,6 +21,8 @@
@@ -95,7 +91,7 @@ index 665f953..15ec5e5 100644
  
  
  /* Private data structure for of_gpiochip_find_and_xlate */
  /* Private data structure for of_gpiochip_find_and_xlate */
  struct gg_data {
  struct gg_data {
-@@ -242,3 +244,69 @@ void of_gpiochip_remove(struct gpio_chip *chip)
+@@ -242,3 +244,69 @@ void of_gpiochip_remove(struct gpio_chip
  	if (chip->of_node)
  	if (chip->of_node)
  		of_node_put(chip->of_node);
  		of_node_put(chip->of_node);
  }
  }
@@ -165,11 +161,9 @@ index 665f953..15ec5e5 100644
 +	return platform_driver_probe(&gpio_export_driver, of_gpio_export_probe);
 +	return platform_driver_probe(&gpio_export_driver, of_gpio_export_probe);
 +}
 +}
 +device_initcall(of_gpio_export_init);
 +device_initcall(of_gpio_export_init);
-diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
-index c2534d6..8697c82 100644
 --- a/drivers/gpio/gpiolib.c
 --- a/drivers/gpio/gpiolib.c
 +++ b/drivers/gpio/gpiolib.c
 +++ b/drivers/gpio/gpiolib.c
-@@ -96,7 +96,7 @@ static int gpiod_get_value(const struct gpio_desc *desc);
+@@ -96,7 +96,7 @@ static int gpiod_get_value(const struct
  static void gpiod_set_value(struct gpio_desc *desc, int value);
  static void gpiod_set_value(struct gpio_desc *desc, int value);
  static int gpiod_cansleep(const struct gpio_desc *desc);
  static int gpiod_cansleep(const struct gpio_desc *desc);
  static int gpiod_to_irq(const struct gpio_desc *desc);
  static int gpiod_to_irq(const struct gpio_desc *desc);
@@ -178,7 +172,7 @@ index c2534d6..8697c82 100644
  static int gpiod_export_link(struct device *dev, const char *name,
  static int gpiod_export_link(struct device *dev, const char *name,
  			     struct gpio_desc *desc);
  			     struct gpio_desc *desc);
  static int gpiod_sysfs_set_active_low(struct gpio_desc *desc, int value);
  static int gpiod_sysfs_set_active_low(struct gpio_desc *desc, int value);
-@@ -674,7 +674,7 @@ static ssize_t export_store(struct class *class,
+@@ -674,7 +674,7 @@ static ssize_t export_store(struct class
  			status = -ENODEV;
  			status = -ENODEV;
  		goto done;
  		goto done;
  	}
  	}
@@ -208,7 +202,7 @@ index c2534d6..8697c82 100644
  {
  {
  	unsigned long		flags;
  	unsigned long		flags;
  	int			status;
  	int			status;
-@@ -783,6 +784,8 @@ static int gpiod_export(struct gpio_desc *desc, bool direction_may_change)
+@@ -783,6 +784,8 @@ static int gpiod_export(struct gpio_desc
  		goto fail_unlock;
  		goto fail_unlock;
  	}
  	}
  
  
@@ -232,7 +226,7 @@ index c2534d6..8697c82 100644
  
  
  static int match_export(struct device *dev, const void *data)
  static int match_export(struct device *dev, const void *data)
  {
  {
-@@ -1092,7 +1095,7 @@ static inline void gpiochip_unexport(struct gpio_chip *chip)
+@@ -1092,7 +1095,7 @@ static inline void gpiochip_unexport(str
  }
  }
  
  
  static inline int gpiod_export(struct gpio_desc *desc,
  static inline int gpiod_export(struct gpio_desc *desc,
@@ -241,7 +235,7 @@ index c2534d6..8697c82 100644
  {
  {
  	return -ENOSYS;
  	return -ENOSYS;
  }
  }
-@@ -1521,6 +1524,9 @@ int gpio_request_one(unsigned gpio, unsigned long flags, const char *label)
+@@ -1521,6 +1524,9 @@ int gpio_request_one(unsigned gpio, unsi
  	if (flags & GPIOF_OPEN_SOURCE)
  	if (flags & GPIOF_OPEN_SOURCE)
  		set_bit(FLAG_OPEN_SOURCE, &desc->flags);
  		set_bit(FLAG_OPEN_SOURCE, &desc->flags);
  
  
@@ -251,7 +245,7 @@ index c2534d6..8697c82 100644
  	if (flags & GPIOF_DIR_IN)
  	if (flags & GPIOF_DIR_IN)
  		err = gpiod_direction_input(desc);
  		err = gpiod_direction_input(desc);
  	else
  	else
-@@ -1531,7 +1537,7 @@ int gpio_request_one(unsigned gpio, unsigned long flags, const char *label)
+@@ -1531,7 +1537,7 @@ int gpio_request_one(unsigned gpio, unsi
  		goto free_gpio;
  		goto free_gpio;
  
  
  	if (flags & GPIOF_EXPORT) {
  	if (flags & GPIOF_EXPORT) {
@@ -260,11 +254,9 @@ index c2534d6..8697c82 100644
  		if (err)
  		if (err)
  			goto free_gpio;
  			goto free_gpio;
  	}
  	}
-diff --git a/include/asm-generic/gpio.h b/include/asm-generic/gpio.h
-index bde6469..3290572 100644
 --- a/include/asm-generic/gpio.h
 --- a/include/asm-generic/gpio.h
 +++ b/include/asm-generic/gpio.h
 +++ b/include/asm-generic/gpio.h
-@@ -202,7 +202,8 @@ extern void gpio_free_array(const struct gpio *array, size_t num);
+@@ -202,7 +202,8 @@ extern void gpio_free_array(const struct
   * A sysfs interface can be exported by individual drivers if they want,
   * A sysfs interface can be exported by individual drivers if they want,
   * but more typically is configured entirely from userspace.
   * but more typically is configured entirely from userspace.
   */
   */
@@ -284,8 +276,6 @@ index bde6469..3290572 100644
  {
  {
  	return -ENOSYS;
  	return -ENOSYS;
  }
  }
-diff --git a/include/linux/gpio.h b/include/linux/gpio.h
-index 552e3f4..07bbbcc7 100644
 --- a/include/linux/gpio.h
 --- a/include/linux/gpio.h
 +++ b/include/linux/gpio.h
 +++ b/include/linux/gpio.h
 @@ -27,6 +27,9 @@
 @@ -27,6 +27,9 @@
@@ -298,7 +288,7 @@ index 552e3f4..07bbbcc7 100644
  /**
  /**
   * struct gpio - a structure describing a GPIO with configuration
   * struct gpio - a structure describing a GPIO with configuration
   * @gpio:	the GPIO number
   * @gpio:	the GPIO number
-@@ -169,7 +172,8 @@ static inline void gpio_set_value_cansleep(unsigned gpio, int value)
+@@ -169,7 +172,8 @@ static inline void gpio_set_value_cansle
  	WARN_ON(1);
  	WARN_ON(1);
  }
  }
  
  
@@ -308,7 +298,7 @@ index 552e3f4..07bbbcc7 100644
  {
  {
  	/* GPIO can never have been requested or set as {in,out}put */
  	/* GPIO can never have been requested or set as {in,out}put */
  	WARN_ON(1);
  	WARN_ON(1);
-@@ -236,4 +240,24 @@ int devm_gpio_request_one(struct device *dev, unsigned gpio,
+@@ -236,4 +240,24 @@ int devm_gpio_request_one(struct device
  			  unsigned long flags, const char *label);
  			  unsigned long flags, const char *label);
  void devm_gpio_free(struct device *dev, unsigned int gpio);
  void devm_gpio_free(struct device *dev, unsigned int gpio);
  
  
@@ -333,6 +323,3 @@ index 552e3f4..07bbbcc7 100644
 +}
 +}
 +
 +
  #endif /* __LINUX_GPIO_H */
  #endif /* __LINUX_GPIO_H */
--- 
-1.7.10.4
-

+ 4 - 9
target/linux/lantiq/patches-3.10/0026-pinctrl-lantiq-fix-up-pinmux.patch

@@ -10,11 +10,9 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/pinctrl/pinctrl-xway.c |   28 ++++++++++++++++++++++++++--
  drivers/pinctrl/pinctrl-xway.c |   28 ++++++++++++++++++++++++++--
  1 file changed, 26 insertions(+), 2 deletions(-)
  1 file changed, 26 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
-index e92132c..e40b2e6 100644
 --- a/drivers/pinctrl/pinctrl-xway.c
 --- a/drivers/pinctrl/pinctrl-xway.c
 +++ b/drivers/pinctrl/pinctrl-xway.c
 +++ b/drivers/pinctrl/pinctrl-xway.c
-@@ -564,10 +564,9 @@ static struct pinctrl_desc xway_pctrl_desc = {
+@@ -564,10 +564,9 @@ static struct pinctrl_desc xway_pctrl_de
  	.confops	= &xway_pinconf_ops,
  	.confops	= &xway_pinconf_ops,
  };
  };
  
  
@@ -26,7 +24,7 @@ index e92132c..e40b2e6 100644
  	int port = PORT(pin);
  	int port = PORT(pin);
  	u32 alt1_reg = GPIO_ALT1(pin);
  	u32 alt1_reg = GPIO_ALT1(pin);
  
  
-@@ -587,6 +586,14 @@ static inline int xway_mux_apply(struct pinctrl_dev *pctrldev,
+@@ -587,6 +586,14 @@ static inline int xway_mux_apply(struct
  	return 0;
  	return 0;
  }
  }
  
  
@@ -41,7 +39,7 @@ index e92132c..e40b2e6 100644
  static const struct ltq_cfg_param xway_cfg_params[] = {
  static const struct ltq_cfg_param xway_cfg_params[] = {
  	{"lantiq,pull",		LTQ_PINCONF_PARAM_PULL},
  	{"lantiq,pull",		LTQ_PINCONF_PARAM_PULL},
  	{"lantiq,open-drain",	LTQ_PINCONF_PARAM_OPEN_DRAIN},
  	{"lantiq,open-drain",	LTQ_PINCONF_PARAM_OPEN_DRAIN},
-@@ -631,6 +638,10 @@ static int xway_gpio_dir_out(struct gpio_chip *chip, unsigned int pin, int val)
+@@ -631,6 +638,10 @@ static int xway_gpio_dir_out(struct gpio
  {
  {
  	struct ltq_pinmux_info *info = dev_get_drvdata(chip->dev);
  	struct ltq_pinmux_info *info = dev_get_drvdata(chip->dev);
  
  
@@ -52,7 +50,7 @@ index e92132c..e40b2e6 100644
  	gpio_setbit(info->membase[0], GPIO_DIR(pin), PORT_PIN(pin));
  	gpio_setbit(info->membase[0], GPIO_DIR(pin), PORT_PIN(pin));
  	xway_gpio_set(chip, pin, val);
  	xway_gpio_set(chip, pin, val);
  
  
-@@ -651,6 +662,18 @@ static void xway_gpio_free(struct gpio_chip *chip, unsigned offset)
+@@ -651,6 +662,18 @@ static void xway_gpio_free(struct gpio_c
  	pinctrl_free_gpio(gpio);
  	pinctrl_free_gpio(gpio);
  }
  }
  
  
@@ -79,6 +77,3 @@ index e92132c..e40b2e6 100644
  	.base = -1,
  	.base = -1,
  };
  };
  
  
--- 
-1.7.10.4
-

+ 6 - 11
target/linux/lantiq/patches-3.10/0027-pinctrl-lantiq-add-missing-gphy-led-setup.patch

@@ -10,8 +10,6 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/pinctrl/pinctrl-xway.c |   30 ++++++++++++++++++++++++------
  drivers/pinctrl/pinctrl-xway.c |   30 ++++++++++++++++++++++++------
  1 file changed, 24 insertions(+), 6 deletions(-)
  1 file changed, 24 insertions(+), 6 deletions(-)
 
 
-diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
-index e40b2e6..b159fd5 100644
 --- a/drivers/pinctrl/pinctrl-xway.c
 --- a/drivers/pinctrl/pinctrl-xway.c
 +++ b/drivers/pinctrl/pinctrl-xway.c
 +++ b/drivers/pinctrl/pinctrl-xway.c
 @@ -102,6 +102,7 @@ enum xway_mux {
 @@ -102,6 +102,7 @@ enum xway_mux {
@@ -22,7 +20,7 @@ index e40b2e6..b159fd5 100644
  	XWAY_MUX_NONE = 0xffff,
  	XWAY_MUX_NONE = 0xffff,
  };
  };
  
  
-@@ -109,12 +110,12 @@ static const struct ltq_mfp_pin xway_mfp[] = {
+@@ -109,12 +110,12 @@ static const struct ltq_mfp_pin xway_mfp
  	/*       pin    f0	f1	f2	f3   */
  	/*       pin    f0	f1	f2	f3   */
  	MFP_XWAY(GPIO0, GPIO,	EXIN,	NONE,	TDM),
  	MFP_XWAY(GPIO0, GPIO,	EXIN,	NONE,	TDM),
  	MFP_XWAY(GPIO1, GPIO,	EXIN,	NONE,	NONE),
  	MFP_XWAY(GPIO1, GPIO,	EXIN,	NONE,	NONE),
@@ -38,7 +36,7 @@ index e40b2e6..b159fd5 100644
  	MFP_XWAY(GPIO8, GPIO,	CGU,	NMI,	NONE),
  	MFP_XWAY(GPIO8, GPIO,	CGU,	NMI,	NONE),
  	MFP_XWAY(GPIO9, GPIO,	ASC,	SPI,	EXIN),
  	MFP_XWAY(GPIO9, GPIO,	ASC,	SPI,	EXIN),
  	MFP_XWAY(GPIO10, GPIO,	ASC,	SPI,	NONE),
  	MFP_XWAY(GPIO10, GPIO,	ASC,	SPI,	NONE),
-@@ -151,10 +152,10 @@ static const struct ltq_mfp_pin xway_mfp[] = {
+@@ -151,10 +152,10 @@ static const struct ltq_mfp_pin xway_mfp
  	MFP_XWAY(GPIO41, GPIO,	NONE,	NONE,	NONE),
  	MFP_XWAY(GPIO41, GPIO,	NONE,	NONE,	NONE),
  	MFP_XWAY(GPIO42, GPIO,	MDIO,	NONE,	NONE),
  	MFP_XWAY(GPIO42, GPIO,	MDIO,	NONE,	NONE),
  	MFP_XWAY(GPIO43, GPIO,	MDIO,	NONE,	NONE),
  	MFP_XWAY(GPIO43, GPIO,	MDIO,	NONE,	NONE),
@@ -52,7 +50,7 @@ index e40b2e6..b159fd5 100644
  	MFP_XWAY(GPIO48, GPIO,	EBU,	NONE,	NONE),
  	MFP_XWAY(GPIO48, GPIO,	EBU,	NONE,	NONE),
  	MFP_XWAY(GPIO49, GPIO,	EBU,	NONE,	NONE),
  	MFP_XWAY(GPIO49, GPIO,	EBU,	NONE,	NONE),
  	MFP_XWAY(GPIO50, GPIO,	NONE,	NONE,	NONE),
  	MFP_XWAY(GPIO50, GPIO,	NONE,	NONE,	NONE),
-@@ -208,6 +209,13 @@ static const unsigned pins_stp[] = {GPIO4, GPIO5, GPIO6};
+@@ -208,6 +209,13 @@ static const unsigned pins_stp[] = {GPIO
  static const unsigned pins_nmi[] = {GPIO8};
  static const unsigned pins_nmi[] = {GPIO8};
  static const unsigned pins_mdio[] = {GPIO42, GPIO43};
  static const unsigned pins_mdio[] = {GPIO42, GPIO43};
  
  
@@ -66,7 +64,7 @@ index e40b2e6..b159fd5 100644
  static const unsigned pins_ebu_a24[] = {GPIO13};
  static const unsigned pins_ebu_a24[] = {GPIO13};
  static const unsigned pins_ebu_clk[] = {GPIO21};
  static const unsigned pins_ebu_clk[] = {GPIO21};
  static const unsigned pins_ebu_cs1[] = {GPIO23};
  static const unsigned pins_ebu_cs1[] = {GPIO23};
-@@ -322,6 +330,12 @@ static const struct ltq_pin_group xway_grps[] = {
+@@ -322,6 +330,12 @@ static const struct ltq_pin_group xway_g
  	GRP_MUX("gnt4", PCI, pins_pci_gnt4),
  	GRP_MUX("gnt4", PCI, pins_pci_gnt4),
  	GRP_MUX("req4", PCI, pins_pci_gnt4),
  	GRP_MUX("req4", PCI, pins_pci_gnt4),
  	GRP_MUX("mdio", MDIO, pins_mdio),
  	GRP_MUX("mdio", MDIO, pins_mdio),
@@ -79,7 +77,7 @@ index e40b2e6..b159fd5 100644
  };
  };
  
  
  static const struct ltq_pin_group ase_grps[] = {
  static const struct ltq_pin_group ase_grps[] = {
-@@ -365,6 +379,9 @@ static const char * const xway_nmi_grps[] = {"nmi"};
+@@ -365,6 +379,9 @@ static const char * const xway_nmi_grps[
  
  
  /* ar9/vr9/gr9 */
  /* ar9/vr9/gr9 */
  static const char * const xrx_mdio_grps[] = {"mdio"};
  static const char * const xrx_mdio_grps[] = {"mdio"};
@@ -89,7 +87,7 @@ index e40b2e6..b159fd5 100644
  static const char * const xrx_ebu_grps[] = {"ebu a23", "ebu a24",
  static const char * const xrx_ebu_grps[] = {"ebu a23", "ebu a24",
  						"ebu a25", "ebu cs1",
  						"ebu a25", "ebu cs1",
  						"ebu wait", "ebu clk",
  						"ebu wait", "ebu clk",
-@@ -414,6 +431,7 @@ static const struct ltq_pmx_func xrx_funcs[] = {
+@@ -414,6 +431,7 @@ static const struct ltq_pmx_func xrx_fun
  	{"pci",		ARRAY_AND_SIZE(xrx_pci_grps)},
  	{"pci",		ARRAY_AND_SIZE(xrx_pci_grps)},
  	{"ebu",		ARRAY_AND_SIZE(xrx_ebu_grps)},
  	{"ebu",		ARRAY_AND_SIZE(xrx_ebu_grps)},
  	{"mdio",	ARRAY_AND_SIZE(xrx_mdio_grps)},
  	{"mdio",	ARRAY_AND_SIZE(xrx_mdio_grps)},
@@ -97,6 +95,3 @@ index e40b2e6..b159fd5 100644
  };
  };
  
  
  static const struct ltq_pmx_func ase_funcs[] = {
  static const struct ltq_pmx_func ase_funcs[] = {
--- 
-1.7.10.4
-

+ 4 - 9
target/linux/lantiq/patches-3.10/0028-pinctrl-lantiq-add-missing-pin-definition-to-falcon-.patch

@@ -12,8 +12,6 @@ Acked-by: John Crispin <[email protected]>
  drivers/pinctrl/pinctrl-falcon.c |    7 +++++--
  drivers/pinctrl/pinctrl-falcon.c |    7 +++++--
  1 file changed, 5 insertions(+), 2 deletions(-)
  1 file changed, 5 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/pinctrl/pinctrl-falcon.c b/drivers/pinctrl/pinctrl-falcon.c
-index f9b2a1d..4e731f2 100644
 --- a/drivers/pinctrl/pinctrl-falcon.c
 --- a/drivers/pinctrl/pinctrl-falcon.c
 +++ b/drivers/pinctrl/pinctrl-falcon.c
 +++ b/drivers/pinctrl/pinctrl-falcon.c
 @@ -75,6 +75,7 @@ enum falcon_mux {
 @@ -75,6 +75,7 @@ enum falcon_mux {
@@ -24,7 +22,7 @@ index f9b2a1d..4e731f2 100644
  	FALCON_MUX_MDIO,
  	FALCON_MUX_MDIO,
  	FALCON_MUX_LED,
  	FALCON_MUX_LED,
  	FALCON_MUX_SPI,
  	FALCON_MUX_SPI,
-@@ -114,7 +115,7 @@ static struct ltq_mfp_pin falcon_mfp[] = {
+@@ -114,7 +115,7 @@ static struct ltq_mfp_pin falcon_mfp[] =
  	MFP_FALCON(GPIO2,	GPIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO2,	GPIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO3,	GPIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO3,	GPIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO4,	NTR,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO4,	NTR,	GPIO,   NONE,   NONE),
@@ -33,7 +31,7 @@ index f9b2a1d..4e731f2 100644
  	MFP_FALCON(GPIO6,	RST,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO6,	RST,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO7,	MDIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO7,	MDIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO8,	MDIO,	GPIO,   NONE,   NONE),
  	MFP_FALCON(GPIO8,	MDIO,	GPIO,   NONE,   NONE),
-@@ -168,6 +169,7 @@ static struct ltq_mfp_pin falcon_mfp[] = {
+@@ -168,6 +169,7 @@ static struct ltq_mfp_pin falcon_mfp[] =
  static const unsigned pins_por[] = {GPIO0};
  static const unsigned pins_por[] = {GPIO0};
  static const unsigned pins_ntr[] = {GPIO4};
  static const unsigned pins_ntr[] = {GPIO4};
  static const unsigned pins_ntr8k[] = {GPIO5};
  static const unsigned pins_ntr8k[] = {GPIO5};
@@ -41,7 +39,7 @@ index f9b2a1d..4e731f2 100644
  static const unsigned pins_hrst[] = {GPIO6};
  static const unsigned pins_hrst[] = {GPIO6};
  static const unsigned pins_mdio[] = {GPIO7, GPIO8};
  static const unsigned pins_mdio[] = {GPIO7, GPIO8};
  static const unsigned pins_bled[] = {GPIO9, GPIO10, GPIO11,
  static const unsigned pins_bled[] = {GPIO9, GPIO10, GPIO11,
-@@ -186,6 +188,7 @@ static struct ltq_pin_group falcon_grps[] = {
+@@ -186,6 +188,7 @@ static struct ltq_pin_group falcon_grps[
  	GRP_MUX("por", RST, pins_por),
  	GRP_MUX("por", RST, pins_por),
  	GRP_MUX("ntr", NTR, pins_ntr),
  	GRP_MUX("ntr", NTR, pins_ntr),
  	GRP_MUX("ntr8k", NTR, pins_ntr8k),
  	GRP_MUX("ntr8k", NTR, pins_ntr8k),
@@ -49,7 +47,7 @@ index f9b2a1d..4e731f2 100644
  	GRP_MUX("hrst", RST, pins_hrst),
  	GRP_MUX("hrst", RST, pins_hrst),
  	GRP_MUX("mdio", MDIO, pins_mdio),
  	GRP_MUX("mdio", MDIO, pins_mdio),
  	GRP_MUX("bootled", LED, pins_bled),
  	GRP_MUX("bootled", LED, pins_bled),
-@@ -201,7 +204,7 @@ static struct ltq_pin_group falcon_grps[] = {
+@@ -201,7 +204,7 @@ static struct ltq_pin_group falcon_grps[
  };
  };
  
  
  static const char * const ltq_rst_grps[] = {"por", "hrst"};
  static const char * const ltq_rst_grps[] = {"por", "hrst"};
@@ -58,6 +56,3 @@ index f9b2a1d..4e731f2 100644
  static const char * const ltq_mdio_grps[] = {"mdio"};
  static const char * const ltq_mdio_grps[] = {"mdio"};
  static const char * const ltq_bled_grps[] = {"bootled"};
  static const char * const ltq_bled_grps[] = {"bootled"};
  static const char * const ltq_asc_grps[] = {"asc0", "asc1"};
  static const char * const ltq_asc_grps[] = {"asc0", "asc1"};
--- 
-1.7.10.4
-

+ 1 - 6
target/linux/lantiq/patches-3.10/0029-serial-MIPS-lantiq-add-clk_enable-call-to-driver.patch

@@ -11,11 +11,9 @@ Acked-by: John Crispin <[email protected]>
  drivers/tty/serial/lantiq.c |    3 +++
  drivers/tty/serial/lantiq.c |    3 +++
  1 file changed, 3 insertions(+)
  1 file changed, 3 insertions(+)
 
 
-diff --git a/drivers/tty/serial/lantiq.c b/drivers/tty/serial/lantiq.c
-index 15733da..93ac046 100644
 --- a/drivers/tty/serial/lantiq.c
 --- a/drivers/tty/serial/lantiq.c
 +++ b/drivers/tty/serial/lantiq.c
 +++ b/drivers/tty/serial/lantiq.c
-@@ -636,6 +636,9 @@ lqasc_console_setup(struct console *co, char *options)
+@@ -636,6 +636,9 @@ lqasc_console_setup(struct console *co,
  
  
  	port = &ltq_port->port;
  	port = &ltq_port->port;
  
  
@@ -25,6 +23,3 @@ index 15733da..93ac046 100644
  	port->uartclk = clk_get_rate(ltq_port->fpiclk);
  	port->uartclk = clk_get_rate(ltq_port->fpiclk);
  
  
  	if (options)
  	if (options)
--- 
-1.7.10.4
-

+ 0 - 5
target/linux/lantiq/patches-3.10/0030-serial-MIPS-lantiq-fix-clock-error-check.patch

@@ -10,8 +10,6 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/tty/serial/lantiq.c |    4 ++--
  drivers/tty/serial/lantiq.c |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/tty/serial/lantiq.c b/drivers/tty/serial/lantiq.c
-index 93ac046..88d01e0 100644
 --- a/drivers/tty/serial/lantiq.c
 --- a/drivers/tty/serial/lantiq.c
 +++ b/drivers/tty/serial/lantiq.c
 +++ b/drivers/tty/serial/lantiq.c
 @@ -318,7 +318,7 @@ lqasc_startup(struct uart_port *port)
 @@ -318,7 +318,7 @@ lqasc_startup(struct uart_port *port)
@@ -32,6 +30,3 @@ index 93ac046..88d01e0 100644
  		clk_disable(ltq_port->clk);
  		clk_disable(ltq_port->clk);
  }
  }
  
  
--- 
-1.7.10.4
-

+ 2 - 15
target/linux/lantiq/patches-3.10/0031-I2C-MIPS-lantiq-add-FALC-ON-i2c-bus-master.patch

@@ -16,11 +16,9 @@ Signed-off-by: John Crispin <[email protected]>
  create mode 100644 drivers/i2c/busses/i2c-lantiq.c
  create mode 100644 drivers/i2c/busses/i2c-lantiq.c
  create mode 100644 drivers/i2c/busses/i2c-lantiq.h
  create mode 100644 drivers/i2c/busses/i2c-lantiq.h
 
 
-diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
-index 631736e..0f0522b 100644
 --- a/drivers/i2c/busses/Kconfig
 --- a/drivers/i2c/busses/Kconfig
 +++ b/drivers/i2c/busses/Kconfig
 +++ b/drivers/i2c/busses/Kconfig
-@@ -494,6 +494,16 @@ config I2C_IOP3XX
+@@ -495,6 +495,16 @@ config I2C_IOP3XX
  	  This driver can also be built as a module.  If so, the module
  	  This driver can also be built as a module.  If so, the module
  	  will be called i2c-iop3xx.
  	  will be called i2c-iop3xx.
  
  
@@ -37,11 +35,9 @@ index 631736e..0f0522b 100644
  config I2C_MPC
  config I2C_MPC
  	tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
  	tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx"
  	depends on PPC
  	depends on PPC
-diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile
-index 8f4fc23..3273061 100644
 --- a/drivers/i2c/busses/Makefile
 --- a/drivers/i2c/busses/Makefile
 +++ b/drivers/i2c/busses/Makefile
 +++ b/drivers/i2c/busses/Makefile
-@@ -48,6 +48,7 @@ obj-$(CONFIG_I2C_IBM_IIC)	+= i2c-ibm_iic.o
+@@ -48,6 +48,7 @@ obj-$(CONFIG_I2C_IBM_IIC)	+= i2c-ibm_iic
  obj-$(CONFIG_I2C_IMX)		+= i2c-imx.o
  obj-$(CONFIG_I2C_IMX)		+= i2c-imx.o
  obj-$(CONFIG_I2C_INTEL_MID)	+= i2c-intel-mid.o
  obj-$(CONFIG_I2C_INTEL_MID)	+= i2c-intel-mid.o
  obj-$(CONFIG_I2C_IOP3XX)	+= i2c-iop3xx.o
  obj-$(CONFIG_I2C_IOP3XX)	+= i2c-iop3xx.o
@@ -49,9 +45,6 @@ index 8f4fc23..3273061 100644
  obj-$(CONFIG_I2C_MPC)		+= i2c-mpc.o
  obj-$(CONFIG_I2C_MPC)		+= i2c-mpc.o
  obj-$(CONFIG_I2C_MV64XXX)	+= i2c-mv64xxx.o
  obj-$(CONFIG_I2C_MV64XXX)	+= i2c-mv64xxx.o
  obj-$(CONFIG_I2C_MXS)		+= i2c-mxs.o
  obj-$(CONFIG_I2C_MXS)		+= i2c-mxs.o
-diff --git a/drivers/i2c/busses/i2c-lantiq.c b/drivers/i2c/busses/i2c-lantiq.c
-new file mode 100644
-index 0000000..9a5f58b
 --- /dev/null
 --- /dev/null
 +++ b/drivers/i2c/busses/i2c-lantiq.c
 +++ b/drivers/i2c/busses/i2c-lantiq.c
 @@ -0,0 +1,747 @@
 @@ -0,0 +1,747 @@
@@ -802,9 +795,6 @@ index 0000000..9a5f58b
 +MODULE_ALIAS("platform:" DRV_NAME);
 +MODULE_ALIAS("platform:" DRV_NAME);
 +MODULE_LICENSE("GPL");
 +MODULE_LICENSE("GPL");
 +MODULE_VERSION(DRV_VERSION);
 +MODULE_VERSION(DRV_VERSION);
-diff --git a/drivers/i2c/busses/i2c-lantiq.h b/drivers/i2c/busses/i2c-lantiq.h
-new file mode 100644
-index 0000000..7a86b89
 --- /dev/null
 --- /dev/null
 +++ b/drivers/i2c/busses/i2c-lantiq.h
 +++ b/drivers/i2c/busses/i2c-lantiq.h
 @@ -0,0 +1,234 @@
 @@ -0,0 +1,234 @@
@@ -1042,6 +1032,3 @@ index 0000000..7a86b89
 +
 +
 +
 +
 +#endif /* I2C_LANTIQ_H */
 +#endif /* I2C_LANTIQ_H */
--- 
-1.7.10.4
-

+ 1 - 8
target/linux/lantiq/patches-3.10/0032-USB-fix-roothub-for-IFXHCD.patch

@@ -8,8 +8,6 @@ Subject: [PATCH 32/34] USB: fix roothub for IFXHCD
  drivers/usb/core/hub.c   |    2 +-
  drivers/usb/core/hub.c   |    2 +-
  2 files changed, 2 insertions(+), 1 deletion(-)
  2 files changed, 2 insertions(+), 1 deletion(-)
 
 
-diff --git a/arch/mips/lantiq/Kconfig b/arch/mips/lantiq/Kconfig
-index 1621b1d..4c9a241 100644
 --- a/arch/mips/lantiq/Kconfig
 --- a/arch/mips/lantiq/Kconfig
 +++ b/arch/mips/lantiq/Kconfig
 +++ b/arch/mips/lantiq/Kconfig
 @@ -3,6 +3,7 @@ if LANTIQ
 @@ -3,6 +3,7 @@ if LANTIQ
@@ -20,11 +18,9 @@ index 1621b1d..4c9a241 100644
  	default n
  	default n
  
  
  choice
  choice
-diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index feef935..db4fb8e 100644
 --- a/drivers/usb/core/hub.c
 --- a/drivers/usb/core/hub.c
 +++ b/drivers/usb/core/hub.c
 +++ b/drivers/usb/core/hub.c
-@@ -4009,7 +4009,7 @@ hub_port_init (struct usb_hub *hub, struct usb_device *udev, int port1,
+@@ -4041,7 +4041,7 @@ hub_port_init (struct usb_hub *hub, stru
  		udev->ttport = hdev->ttport;
  		udev->ttport = hdev->ttport;
  	} else if (udev->speed != USB_SPEED_HIGH
  	} else if (udev->speed != USB_SPEED_HIGH
  			&& hdev->speed == USB_SPEED_HIGH) {
  			&& hdev->speed == USB_SPEED_HIGH) {
@@ -33,6 +29,3 @@ index feef935..db4fb8e 100644
  			dev_err(&udev->dev, "parent hub has no TT\n");
  			dev_err(&udev->dev, "parent hub has no TT\n");
  			retval = -EINVAL;
  			retval = -EINVAL;
  			goto fail;
  			goto fail;
--- 
-1.7.10.4
-

+ 2 - 12
target/linux/lantiq/patches-3.10/0033-SPI-MIPS-lantiq-adds-spi-xway.patch

@@ -16,11 +16,9 @@ Signed-off-by: John Crispin <[email protected]>
  3 files changed, 986 insertions(+)
  3 files changed, 986 insertions(+)
  create mode 100644 drivers/spi/spi-xway.c
  create mode 100644 drivers/spi/spi-xway.c
 
 
-diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
-index 92a9345..954c19f 100644
 --- a/drivers/spi/Kconfig
 --- a/drivers/spi/Kconfig
 +++ b/drivers/spi/Kconfig
 +++ b/drivers/spi/Kconfig
-@@ -487,6 +487,14 @@ config SPI_NUC900
+@@ -496,6 +496,14 @@ config SPI_NUC900
  	help
  	help
  	  SPI driver for Nuvoton NUC900 series ARM SoCs
  	  SPI driver for Nuvoton NUC900 series ARM SoCs
  
  
@@ -35,18 +33,13 @@ index 92a9345..954c19f 100644
  #
  #
  # Add new SPI master controllers in alphabetical order above this line
  # Add new SPI master controllers in alphabetical order above this line
  #
  #
-diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile
-index 33f9c09..0574edf 100644
 --- a/drivers/spi/Makefile
 --- a/drivers/spi/Makefile
 +++ b/drivers/spi/Makefile
 +++ b/drivers/spi/Makefile
-@@ -74,3 +74,4 @@ obj-$(CONFIG_SPI_TOPCLIFF_PCH)		+= spi-topcliff-pch.o
+@@ -75,3 +75,4 @@ obj-$(CONFIG_SPI_TOPCLIFF_PCH)		+= spi-t
  obj-$(CONFIG_SPI_TXX9)			+= spi-txx9.o
  obj-$(CONFIG_SPI_TXX9)			+= spi-txx9.o
  obj-$(CONFIG_SPI_XCOMM)		+= spi-xcomm.o
  obj-$(CONFIG_SPI_XCOMM)		+= spi-xcomm.o
  obj-$(CONFIG_SPI_XILINX)		+= spi-xilinx.o
  obj-$(CONFIG_SPI_XILINX)		+= spi-xilinx.o
 +obj-$(CONFIG_SPI_XWAY)			+= spi-xway.o
 +obj-$(CONFIG_SPI_XWAY)			+= spi-xway.o
-diff --git a/drivers/spi/spi-xway.c b/drivers/spi/spi-xway.c
-new file mode 100644
-index 0000000..61532e3
 --- /dev/null
 --- /dev/null
 +++ b/drivers/spi/spi-xway.c
 +++ b/drivers/spi/spi-xway.c
 @@ -0,0 +1,977 @@
 @@ -0,0 +1,977 @@
@@ -1027,6 +1020,3 @@ index 0000000..61532e3
 +MODULE_AUTHOR("Daniel Schwierzeck <[email protected]>");
 +MODULE_AUTHOR("Daniel Schwierzeck <[email protected]>");
 +MODULE_LICENSE("GPL");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:spi-xway");
 +MODULE_ALIAS("platform:spi-xway");
--- 
-1.7.10.4
-

+ 1 - 8
target/linux/lantiq/patches-3.10/0034-reset-Fix-compile-when-reset-RESET_CONTROLLER-is-not.patch

@@ -17,8 +17,6 @@ Cc: Gabor Juhos <[email protected]>
  include/linux/reset.h            |   43 ++++++++++++++++++++++++++++++++++++++
  include/linux/reset.h            |   43 ++++++++++++++++++++++++++++++++++++++
  2 files changed, 59 insertions(+)
  2 files changed, 59 insertions(+)
 
 
-diff --git a/include/linux/reset-controller.h b/include/linux/reset-controller.h
-index 2f61311..068f073 100644
 --- a/include/linux/reset-controller.h
 --- a/include/linux/reset-controller.h
 +++ b/include/linux/reset-controller.h
 +++ b/include/linux/reset-controller.h
 @@ -45,7 +45,23 @@ struct reset_controller_dev {
 @@ -45,7 +45,23 @@ struct reset_controller_dev {
@@ -45,8 +43,6 @@ index 2f61311..068f073 100644
 +#endif
 +#endif
 +
 +
  #endif
  #endif
-diff --git a/include/linux/reset.h b/include/linux/reset.h
-index 6082247..1b36c9e 100644
 --- a/include/linux/reset.h
 --- a/include/linux/reset.h
 +++ b/include/linux/reset.h
 +++ b/include/linux/reset.h
 @@ -1,9 +1,13 @@
 @@ -1,9 +1,13 @@
@@ -63,7 +59,7 @@ index 6082247..1b36c9e 100644
  int reset_control_reset(struct reset_control *rstc);
  int reset_control_reset(struct reset_control *rstc);
  int reset_control_assert(struct reset_control *rstc);
  int reset_control_assert(struct reset_control *rstc);
  int reset_control_deassert(struct reset_control *rstc);
  int reset_control_deassert(struct reset_control *rstc);
-@@ -14,4 +18,43 @@ struct reset_control *devm_reset_control_get(struct device *dev, const char *id)
+@@ -14,4 +18,43 @@ struct reset_control *devm_reset_control
  
  
  int device_reset(struct device *dev);
  int device_reset(struct device *dev);
  
  
@@ -107,6 +103,3 @@ index 6082247..1b36c9e 100644
 +#endif
 +#endif
 +
 +
  #endif
  #endif
--- 
-1.7.10.4
-

+ 1 - 12
target/linux/lantiq/patches-3.10/0101-timer-backport.patch

@@ -12,9 +12,6 @@ Signed-off-by: John Crispin <[email protected]>
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_timer.h
  create mode 100644 arch/mips/include/asm/mach-lantiq/lantiq_timer.h
  create mode 100644 arch/mips/lantiq/xway/timer.c
  create mode 100644 arch/mips/lantiq/xway/timer.c
 
 
-diff --git a/arch/mips/include/asm/mach-lantiq/lantiq_timer.h b/arch/mips/include/asm/mach-lantiq/lantiq_timer.h
-new file mode 100644
-index 0000000..ef564ab
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_timer.h
 +++ b/arch/mips/include/asm/mach-lantiq/lantiq_timer.h
 @@ -0,0 +1,155 @@
 @@ -0,0 +1,155 @@
@@ -173,19 +170,14 @@ index 0000000..ef564ab
 +	u32 reload, unsigned long arg1, unsigned long arg2);
 +	u32 reload, unsigned long arg1, unsigned long arg2);
 +
 +
 +#endif /* __DANUBE_GPTU_DEV_H__2005_07_26__10_19__ */
 +#endif /* __DANUBE_GPTU_DEV_H__2005_07_26__10_19__ */
-diff --git a/arch/mips/lantiq/xway/Makefile b/arch/mips/lantiq/xway/Makefile
-index a2edc53..da51fe0 100644
 --- a/arch/mips/lantiq/xway/Makefile
 --- a/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 +++ b/arch/mips/lantiq/xway/Makefile
 @@ -1,4 +1,4 @@
 @@ -1,4 +1,4 @@
 -obj-y := prom.o sysctrl.o clk.o reset.o dma.o gptu.o dcdc.o
 -obj-y := prom.o sysctrl.o clk.o reset.o dma.o gptu.o dcdc.o
 +obj-y := prom.o sysctrl.o clk.o reset.o dma.o timer.o dcdc.o
 +obj-y := prom.o sysctrl.o clk.o reset.o dma.o timer.o dcdc.o
  
  
- obj-y += vmmc.o
+ obj-y += vmmc.o mtd_split.o
  
  
-diff --git a/arch/mips/lantiq/xway/timer.c b/arch/mips/lantiq/xway/timer.c
-new file mode 100644
-index 0000000..1c0fdb8
 --- /dev/null
 --- /dev/null
 +++ b/arch/mips/lantiq/xway/timer.c
 +++ b/arch/mips/lantiq/xway/timer.c
 @@ -0,0 +1,845 @@
 @@ -0,0 +1,845 @@
@@ -1034,6 +1026,3 @@ index 0000000..1c0fdb8
 +module_exit(lq_gptu_exit);
 +module_exit(lq_gptu_exit);
 +
 +
 +#endif
 +#endif
--- 
-1.7.10.4
-

+ 2 - 2
target/linux/ramips/patches-3.10/0004-watchdog-MIPS-add-ralink-watchdog-driver.patch

@@ -17,7 +17,7 @@ Cc: [email protected]
 
 
 --- a/drivers/watchdog/Kconfig
 --- a/drivers/watchdog/Kconfig
 +++ b/drivers/watchdog/Kconfig
 +++ b/drivers/watchdog/Kconfig
-@@ -1104,6 +1104,13 @@ config LANTIQ_WDT
+@@ -1113,6 +1113,13 @@ config LANTIQ_WDT
  	help
  	help
  	  Hardware driver for the Lantiq SoC Watchdog Timer.
  	  Hardware driver for the Lantiq SoC Watchdog Timer.
  
  
@@ -33,7 +33,7 @@ Cc: [email protected]
  # POWERPC Architecture
  # POWERPC Architecture
 --- a/drivers/watchdog/Makefile
 --- a/drivers/watchdog/Makefile
 +++ b/drivers/watchdog/Makefile
 +++ b/drivers/watchdog/Makefile
-@@ -134,6 +134,7 @@ obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
+@@ -135,6 +135,7 @@ obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
  obj-$(CONFIG_OCTEON_WDT) += octeon-wdt.o
  obj-$(CONFIG_OCTEON_WDT) += octeon-wdt.o
  octeon-wdt-y := octeon-wdt-main.o octeon-wdt-nmi.o
  octeon-wdt-y := octeon-wdt-main.o octeon-wdt-nmi.o
  obj-$(CONFIG_LANTIQ_WDT) += lantiq_wdt.o
  obj-$(CONFIG_LANTIQ_WDT) += lantiq_wdt.o

+ 13 - 23
target/linux/ramips/patches-3.10/0006-GPIO-MIPS-ralink-add-gpio-driver-for-ralink-SoC.patch

@@ -19,11 +19,9 @@ Cc: [email protected]
  create mode 100644 arch/mips/include/asm/mach-ralink/gpio.h
  create mode 100644 arch/mips/include/asm/mach-ralink/gpio.h
  create mode 100644 drivers/gpio/gpio-ralink.c
  create mode 100644 drivers/gpio/gpio-ralink.c
 
 
-Index: linux-3.10.9/arch/mips/Kconfig
-===================================================================
---- linux-3.10.9.orig/arch/mips/Kconfig	2013-08-26 17:48:27.481164281 +0200
-+++ linux-3.10.9/arch/mips/Kconfig	2013-08-27 23:15:40.751965869 +0200
-@@ -444,6 +444,7 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -444,6 +444,7 @@ config RALINK
  	select SYS_HAS_EARLY_PRINTK
  	select SYS_HAS_EARLY_PRINTK
  	select HAVE_MACH_CLKDEV
  	select HAVE_MACH_CLKDEV
  	select CLKDEV_LOOKUP
  	select CLKDEV_LOOKUP
@@ -31,10 +29,8 @@ Index: linux-3.10.9/arch/mips/Kconfig
  
  
  config SGI_IP22
  config SGI_IP22
  	bool "SGI IP22 (Indy/Indigo2)"
  	bool "SGI IP22 (Indy/Indigo2)"
-Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/gpio.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.9/arch/mips/include/asm/mach-ralink/gpio.h	2013-08-26 17:48:30.941164428 +0200
+--- /dev/null
++++ b/arch/mips/include/asm/mach-ralink/gpio.h
 @@ -0,0 +1,24 @@
 @@ -0,0 +1,24 @@
 +/*
 +/*
 + *  Ralink SoC GPIO API support
 + *  Ralink SoC GPIO API support
@@ -60,11 +56,9 @@ Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/gpio.h
 +#define gpio_to_irq	__gpio_to_irq
 +#define gpio_to_irq	__gpio_to_irq
 +
 +
 +#endif /* __ASM_MACH_RALINK_GPIO_H */
 +#endif /* __ASM_MACH_RALINK_GPIO_H */
-Index: linux-3.10.9/drivers/gpio/Kconfig
-===================================================================
---- linux-3.10.9.orig/drivers/gpio/Kconfig	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/drivers/gpio/Kconfig	2013-08-26 17:48:30.941164428 +0200
-@@ -209,6 +209,12 @@
+--- a/drivers/gpio/Kconfig
++++ b/drivers/gpio/Kconfig
+@@ -209,6 +209,12 @@ config GPIO_RCAR
  	help
  	help
  	  Say yes here to support GPIO on Renesas R-Car SoCs.
  	  Say yes here to support GPIO on Renesas R-Car SoCs.
  
  
@@ -77,11 +71,9 @@ Index: linux-3.10.9/drivers/gpio/Kconfig
  config GPIO_SPEAR_SPICS
  config GPIO_SPEAR_SPICS
  	bool "ST SPEAr13xx SPI Chip Select as GPIO support"
  	bool "ST SPEAr13xx SPI Chip Select as GPIO support"
  	depends on PLAT_SPEAR
  	depends on PLAT_SPEAR
-Index: linux-3.10.9/drivers/gpio/Makefile
-===================================================================
---- linux-3.10.9.orig/drivers/gpio/Makefile	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/drivers/gpio/Makefile	2013-08-26 17:48:30.941164428 +0200
-@@ -56,6 +56,7 @@
+--- a/drivers/gpio/Makefile
++++ b/drivers/gpio/Makefile
+@@ -56,6 +56,7 @@ obj-$(CONFIG_GPIO_PCF857X)	+= gpio-pcf85
  obj-$(CONFIG_GPIO_PCH)		+= gpio-pch.o
  obj-$(CONFIG_GPIO_PCH)		+= gpio-pch.o
  obj-$(CONFIG_GPIO_PL061)	+= gpio-pl061.o
  obj-$(CONFIG_GPIO_PL061)	+= gpio-pl061.o
  obj-$(CONFIG_GPIO_PXA)		+= gpio-pxa.o
  obj-$(CONFIG_GPIO_PXA)		+= gpio-pxa.o
@@ -89,10 +81,8 @@ Index: linux-3.10.9/drivers/gpio/Makefile
  obj-$(CONFIG_GPIO_RC5T583)	+= gpio-rc5t583.o
  obj-$(CONFIG_GPIO_RC5T583)	+= gpio-rc5t583.o
  obj-$(CONFIG_GPIO_RDC321X)	+= gpio-rdc321x.o
  obj-$(CONFIG_GPIO_RDC321X)	+= gpio-rdc321x.o
  obj-$(CONFIG_GPIO_RCAR)		+= gpio-rcar.o
  obj-$(CONFIG_GPIO_RCAR)		+= gpio-rcar.o
-Index: linux-3.10.9/drivers/gpio/gpio-ralink.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.9/drivers/gpio/gpio-ralink.c	2013-08-27 22:37:34.999868257 +0200
+--- /dev/null
++++ b/drivers/gpio/gpio-ralink.c
 @@ -0,0 +1,345 @@
 @@ -0,0 +1,345 @@
 +/*
 +/*
 + * This program is free software; you can redistribute it and/or modify it
 + * This program is free software; you can redistribute it and/or modify it

+ 34 - 58
target/linux/ramips/patches-3.10/0122-pinmux.patch

@@ -14,11 +14,9 @@ Signed-off-by: John Crispin <[email protected]>
  6 files changed, 385 insertions(+), 19 deletions(-)
  6 files changed, 385 insertions(+), 19 deletions(-)
  create mode 100644 drivers/pinctrl/pinctrl-rt2880.c
  create mode 100644 drivers/pinctrl/pinctrl-rt2880.c
 
 
-Index: linux-3.10.9/arch/mips/Kconfig
-===================================================================
---- linux-3.10.9.orig/arch/mips/Kconfig	2013-08-28 16:34:42.449951676 +0200
-+++ linux-3.10.9/arch/mips/Kconfig	2013-08-28 16:34:43.361951711 +0200
-@@ -446,6 +446,8 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -446,6 +446,8 @@ config RALINK
  	select HAVE_MACH_CLKDEV
  	select HAVE_MACH_CLKDEV
  	select CLKDEV_LOOKUP
  	select CLKDEV_LOOKUP
  	select ARCH_REQUIRE_GPIOLIB
  	select ARCH_REQUIRE_GPIOLIB
@@ -27,11 +25,9 @@ Index: linux-3.10.9/arch/mips/Kconfig
  
  
  config SGI_IP22
  config SGI_IP22
  	bool "SGI IP22 (Indy/Indigo2)"
  	bool "SGI IP22 (Indy/Indigo2)"
-Index: linux-3.10.9/drivers/pinctrl/Kconfig
-===================================================================
---- linux-3.10.9.orig/drivers/pinctrl/Kconfig	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/drivers/pinctrl/Kconfig	2013-08-28 16:34:43.361951711 +0200
-@@ -114,6 +114,11 @@
+--- a/drivers/pinctrl/Kconfig
++++ b/drivers/pinctrl/Kconfig
+@@ -114,6 +114,11 @@ config PINCTRL_LANTIQ
  	select PINMUX
  	select PINMUX
  	select PINCONF
  	select PINCONF
  
  
@@ -43,11 +39,9 @@ Index: linux-3.10.9/drivers/pinctrl/Kconfig
  config PINCTRL_FALCON
  config PINCTRL_FALCON
  	bool
  	bool
  	depends on SOC_FALCON
  	depends on SOC_FALCON
-Index: linux-3.10.9/drivers/pinctrl/Makefile
-===================================================================
---- linux-3.10.9.orig/drivers/pinctrl/Makefile	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/drivers/pinctrl/Makefile	2013-08-28 16:34:43.361951711 +0200
-@@ -45,6 +45,7 @@
+--- a/drivers/pinctrl/Makefile
++++ b/drivers/pinctrl/Makefile
+@@ -45,6 +45,7 @@ obj-$(CONFIG_PINCTRL_EXYNOS5440)	+= pinc
  obj-$(CONFIG_PINCTRL_S3C64XX)	+= pinctrl-s3c64xx.o
  obj-$(CONFIG_PINCTRL_S3C64XX)	+= pinctrl-s3c64xx.o
  obj-$(CONFIG_PINCTRL_XWAY)	+= pinctrl-xway.o
  obj-$(CONFIG_PINCTRL_XWAY)	+= pinctrl-xway.o
  obj-$(CONFIG_PINCTRL_LANTIQ)	+= pinctrl-lantiq.o
  obj-$(CONFIG_PINCTRL_LANTIQ)	+= pinctrl-lantiq.o
@@ -55,10 +49,8 @@ Index: linux-3.10.9/drivers/pinctrl/Makefile
  
  
  obj-$(CONFIG_PLAT_ORION)        += mvebu/
  obj-$(CONFIG_PLAT_ORION)        += mvebu/
  obj-$(CONFIG_ARCH_SHMOBILE)	+= sh-pfc/
  obj-$(CONFIG_ARCH_SHMOBILE)	+= sh-pfc/
-Index: linux-3.10.9/drivers/pinctrl/pinctrl-rt2880.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.9/drivers/pinctrl/pinctrl-rt2880.c	2013-08-28 16:34:43.361951711 +0200
+--- /dev/null
++++ b/drivers/pinctrl/pinctrl-rt2880.c
 @@ -0,0 +1,456 @@
 @@ -0,0 +1,456 @@
 +/*
 +/*
 + *  linux/drivers/pinctrl/pinctrl-rt2880.c
 + *  linux/drivers/pinctrl/pinctrl-rt2880.c
@@ -516,10 +508,8 @@ Index: linux-3.10.9/drivers/pinctrl/pinctrl-rt2880.c
 +}
 +}
 +
 +
 +core_initcall_sync(rt2880_pinmux_init);
 +core_initcall_sync(rt2880_pinmux_init);
-Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/pinmux.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.10.9/arch/mips/include/asm/mach-ralink/pinmux.h	2013-08-28 16:34:43.361951711 +0200
+--- /dev/null
++++ b/arch/mips/include/asm/mach-ralink/pinmux.h
 @@ -0,0 +1,47 @@
 @@ -0,0 +1,47 @@
 +/*
 +/*
 + *  This program is free software; you can redistribute it and/or modify
 + *  This program is free software; you can redistribute it and/or modify
@@ -568,10 +558,8 @@ Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/pinmux.h
 +extern struct rt2880_pmx_group *rt2880_pinmux_data;
 +extern struct rt2880_pmx_group *rt2880_pinmux_data;
 +
 +
 +#endif
 +#endif
-Index: linux-3.10.9/arch/mips/ralink/mt7620.c
-===================================================================
---- linux-3.10.9.orig/arch/mips/ralink/mt7620.c	2013-08-28 16:34:42.829951688 +0200
-+++ linux-3.10.9/arch/mips/ralink/mt7620.c	2013-08-28 16:34:43.361951711 +0200
+--- a/arch/mips/ralink/mt7620.c
++++ b/arch/mips/ralink/mt7620.c
 @@ -17,6 +17,7 @@
 @@ -17,6 +17,7 @@
  #include <asm/mipsregs.h>
  #include <asm/mipsregs.h>
  #include <asm/mach-ralink/ralink_regs.h>
  #include <asm/mach-ralink/ralink_regs.h>
@@ -580,7 +568,7 @@ Index: linux-3.10.9/arch/mips/ralink/mt7620.c
  
  
  #include "common.h"
  #include "common.h"
  
  
-@@ -48,118 +49,40 @@
+@@ -48,118 +49,40 @@ static int dram_type;
  /* the pll dividers */
  /* the pll dividers */
  static u32 mt7620_clk_divider[] = { 2, 3, 4, 8 };
  static u32 mt7620_clk_divider[] = { 2, 3, 4, 8 };
  
  
@@ -732,17 +720,15 @@ Index: linux-3.10.9/arch/mips/ralink/mt7620.c
  };
  };
  
  
  void __init ralink_clk_init(void)
  void __init ralink_clk_init(void)
-@@ -281,4 +204,6 @@
+@@ -281,4 +204,6 @@ void prom_soc_init(struct ralink_soc_inf
  		(pmu0 & PMU_SW_SET) ? ("sw") : ("hw"));
  		(pmu0 & PMU_SW_SET) ? ("sw") : ("hw"));
  	pr_info("Digital PMU set to %s control\n",
  	pr_info("Digital PMU set to %s control\n",
  		(pmu1 & DIG_SW_SEL) ? ("sw") : ("hw"));
  		(pmu1 & DIG_SW_SEL) ? ("sw") : ("hw"));
 +
 +
 +	rt2880_pinmux_data = mt7620a_pinmux_data;
 +	rt2880_pinmux_data = mt7620a_pinmux_data;
  }
  }
-Index: linux-3.10.9/arch/mips/ralink/rt305x.c
-===================================================================
---- linux-3.10.9.orig/arch/mips/ralink/rt305x.c	2013-08-28 16:34:43.061951698 +0200
-+++ linux-3.10.9/arch/mips/ralink/rt305x.c	2013-08-28 16:34:43.365951713 +0200
+--- a/arch/mips/ralink/rt305x.c
++++ b/arch/mips/ralink/rt305x.c
 @@ -17,90 +17,71 @@
 @@ -17,90 +17,71 @@
  #include <asm/mipsregs.h>
  #include <asm/mipsregs.h>
  #include <asm/mach-ralink/ralink_regs.h>
  #include <asm/mach-ralink/ralink_regs.h>
@@ -892,7 +878,7 @@ Index: linux-3.10.9/arch/mips/ralink/rt305x.c
  };
  };
  
  
  static void rt305x_wdt_reset(void)
  static void rt305x_wdt_reset(void)
-@@ -114,14 +95,6 @@
+@@ -114,14 +95,6 @@ static void rt305x_wdt_reset(void)
  	rt_sysc_w32(t, SYSC_REG_SYSTEM_CONFIG);
  	rt_sysc_w32(t, SYSC_REG_SYSTEM_CONFIG);
  }
  }
  
  
@@ -907,7 +893,7 @@ Index: linux-3.10.9/arch/mips/ralink/rt305x.c
  static unsigned long rt5350_get_mem_size(void)
  static unsigned long rt5350_get_mem_size(void)
  {
  {
  	void __iomem *sysc = (void __iomem *) KSEG1ADDR(RT305X_SYSC_BASE);
  	void __iomem *sysc = (void __iomem *) KSEG1ADDR(RT305X_SYSC_BASE);
-@@ -291,11 +264,14 @@
+@@ -291,11 +264,14 @@ void prom_soc_init(struct ralink_soc_inf
  	soc_info->mem_base = RT305X_SDRAM_BASE;
  	soc_info->mem_base = RT305X_SDRAM_BASE;
  	if (soc_is_rt5350()) {
  	if (soc_is_rt5350()) {
  		soc_info->mem_size = rt5350_get_mem_size();
  		soc_info->mem_size = rt5350_get_mem_size();
@@ -922,11 +908,9 @@ Index: linux-3.10.9/arch/mips/ralink/rt305x.c
 +		rt2880_pinmux_data = rt3352_pinmux_data;
 +		rt2880_pinmux_data = rt3352_pinmux_data;
  	}
  	}
  }
  }
-Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/rt305x.h
-===================================================================
---- linux-3.10.9.orig/arch/mips/include/asm/mach-ralink/rt305x.h	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/arch/mips/include/asm/mach-ralink/rt305x.h	2013-08-28 16:34:43.365951713 +0200
-@@ -125,24 +125,28 @@
+--- a/arch/mips/include/asm/mach-ralink/rt305x.h
++++ b/arch/mips/include/asm/mach-ralink/rt305x.h
+@@ -125,24 +125,28 @@ static inline int soc_is_rt5350(void)
  #define RT305X_GPIO_GE0_TXD0		40
  #define RT305X_GPIO_GE0_TXD0		40
  #define RT305X_GPIO_GE0_RXCLK		51
  #define RT305X_GPIO_GE0_RXCLK		51
  
  
@@ -970,10 +954,8 @@ Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/rt305x.h
  
  
  #define RT3352_SYSC_REG_SYSCFG0		0x010
  #define RT3352_SYSC_REG_SYSCFG0		0x010
  #define RT3352_SYSC_REG_SYSCFG1         0x014
  #define RT3352_SYSC_REG_SYSCFG1         0x014
-Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/mt7620.h
-===================================================================
---- linux-3.10.9.orig/arch/mips/include/asm/mach-ralink/mt7620.h	2013-08-28 16:34:42.625951682 +0200
-+++ linux-3.10.9/arch/mips/include/asm/mach-ralink/mt7620.h	2013-08-28 18:32:38.370254386 +0200
+--- a/arch/mips/include/asm/mach-ralink/mt7620.h
++++ b/arch/mips/include/asm/mach-ralink/mt7620.h
 @@ -59,7 +59,6 @@
 @@ -59,7 +59,6 @@
  #define MT7620_DDR2_SIZE_MIN		32
  #define MT7620_DDR2_SIZE_MIN		32
  #define MT7620_DDR2_SIZE_MAX		256
  #define MT7620_DDR2_SIZE_MAX		256
@@ -1010,10 +992,8 @@ Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/mt7620.h
 +#define MT7620_GPIO_MODE_WDT		22
 +#define MT7620_GPIO_MODE_WDT		22
  
  
  #endif
  #endif
-Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/rt3883.h
-===================================================================
---- linux-3.10.9.orig/arch/mips/include/asm/mach-ralink/rt3883.h	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/arch/mips/include/asm/mach-ralink/rt3883.h	2013-08-28 18:33:57.554258201 +0200
+--- a/arch/mips/include/asm/mach-ralink/rt3883.h
++++ b/arch/mips/include/asm/mach-ralink/rt3883.h
 @@ -112,8 +112,6 @@
 @@ -112,8 +112,6 @@
  #define RT3883_CLKCFG1_PCI_CLK_EN	BIT(19)
  #define RT3883_CLKCFG1_PCI_CLK_EN	BIT(19)
  #define RT3883_CLKCFG1_UPHY0_CLK_EN	BIT(18)
  #define RT3883_CLKCFG1_UPHY0_CLK_EN	BIT(18)
@@ -1044,10 +1024,8 @@ Index: linux-3.10.9/arch/mips/include/asm/mach-ralink/rt3883.h
  #define RT3883_GPIO_MODE_PCI_SHIFT	11
  #define RT3883_GPIO_MODE_PCI_SHIFT	11
  #define RT3883_GPIO_MODE_PCI_MASK	0x7
  #define RT3883_GPIO_MODE_PCI_MASK	0x7
  #define RT3883_GPIO_MODE_PCI		(RT3883_GPIO_MODE_PCI_MASK << RT3883_GPIO_MODE_PCI_SHIFT)
  #define RT3883_GPIO_MODE_PCI		(RT3883_GPIO_MODE_PCI_MASK << RT3883_GPIO_MODE_PCI_SHIFT)
-Index: linux-3.10.9/arch/mips/ralink/common.h
-===================================================================
---- linux-3.10.9.orig/arch/mips/ralink/common.h	2013-08-28 16:34:42.453951675 +0200
-+++ linux-3.10.9/arch/mips/ralink/common.h	2013-08-28 18:10:55.014197854 +0200
+--- a/arch/mips/ralink/common.h
++++ b/arch/mips/ralink/common.h
 @@ -11,25 +11,6 @@
 @@ -11,25 +11,6 @@
  
  
  #define RAMIPS_SYS_TYPE_LEN	32
  #define RAMIPS_SYS_TYPE_LEN	32
@@ -1074,10 +1052,8 @@ Index: linux-3.10.9/arch/mips/ralink/common.h
  struct ralink_soc_info {
  struct ralink_soc_info {
  	unsigned char sys_type[RAMIPS_SYS_TYPE_LEN];
  	unsigned char sys_type[RAMIPS_SYS_TYPE_LEN];
  	unsigned char *compatible;
  	unsigned char *compatible;
-Index: linux-3.10.9/arch/mips/ralink/rt3883.c
-===================================================================
---- linux-3.10.9.orig/arch/mips/ralink/rt3883.c	2013-08-21 00:40:47.000000000 +0200
-+++ linux-3.10.9/arch/mips/ralink/rt3883.c	2013-08-28 18:47:07.442290690 +0200
+--- a/arch/mips/ralink/rt3883.c
++++ b/arch/mips/ralink/rt3883.c
 @@ -17,132 +17,50 @@
 @@ -17,132 +17,50 @@
  #include <asm/mipsregs.h>
  #include <asm/mipsregs.h>
  #include <asm/mach-ralink/ralink_regs.h>
  #include <asm/mach-ralink/ralink_regs.h>
@@ -1249,7 +1225,7 @@ Index: linux-3.10.9/arch/mips/ralink/rt3883.c
  };
  };
  
  
  static void rt3883_wdt_reset(void)
  static void rt3883_wdt_reset(void)
-@@ -155,17 +73,6 @@
+@@ -155,17 +73,6 @@ static void rt3883_wdt_reset(void)
  	rt_sysc_w32(t, RT3883_SYSC_REG_SYSCFG1);
  	rt_sysc_w32(t, RT3883_SYSC_REG_SYSCFG1);
  }
  }
  
  
@@ -1267,7 +1243,7 @@ Index: linux-3.10.9/arch/mips/ralink/rt3883.c
  void __init ralink_clk_init(void)
  void __init ralink_clk_init(void)
  {
  {
  	unsigned long cpu_rate, sys_rate;
  	unsigned long cpu_rate, sys_rate;
-@@ -243,4 +150,6 @@
+@@ -243,4 +150,6 @@ void prom_soc_init(struct ralink_soc_inf
  	soc_info->mem_base = RT3883_SDRAM_BASE;
  	soc_info->mem_base = RT3883_SDRAM_BASE;
  	soc_info->mem_size_min = RT3883_MEM_SIZE_MIN;
  	soc_info->mem_size_min = RT3883_MEM_SIZE_MIN;
  	soc_info->mem_size_max = RT3883_MEM_SIZE_MAX;
  	soc_info->mem_size_max = RT3883_MEM_SIZE_MAX;

+ 4 - 4
target/linux/ramips/patches-3.10/0202-owrt-USB-adds-dwc_otg.patch

@@ -49,9 +49,9 @@ Signed-off-by: John Crispin <[email protected]>
 
 
 --- a/drivers/usb/Kconfig
 --- a/drivers/usb/Kconfig
 +++ b/drivers/usb/Kconfig
 +++ b/drivers/usb/Kconfig
-@@ -126,6 +126,8 @@ source "drivers/usb/core/Kconfig"
+@@ -126,6 +126,8 @@ if USB
  
  
- source "drivers/usb/dwc3/Kconfig"
+ source "drivers/usb/core/Kconfig"
  
  
 +source "drivers/usb/dwc_otg/Kconfig"
 +source "drivers/usb/dwc_otg/Kconfig"
 +
 +
@@ -60,8 +60,8 @@ Signed-off-by: John Crispin <[email protected]>
  source "drivers/usb/wusbcore/Kconfig"
  source "drivers/usb/wusbcore/Kconfig"
 --- a/drivers/usb/Makefile
 --- a/drivers/usb/Makefile
 +++ b/drivers/usb/Makefile
 +++ b/drivers/usb/Makefile
-@@ -9,6 +9,7 @@ obj-$(CONFIG_USB)		+= core/
- obj-$(CONFIG_USB_OTG_UTILS)	+= otg/
+@@ -7,6 +7,7 @@
+ obj-$(CONFIG_USB)		+= core/
  
  
  obj-$(CONFIG_USB_DWC3)		+= dwc3/
  obj-$(CONFIG_USB_DWC3)		+= dwc3/
 +obj-$(CONFIG_DWC_OTG)		+= dwc_otg/
 +obj-$(CONFIG_DWC_OTG)		+= dwc_otg/

+ 1 - 1
target/linux/ramips/patches-3.10/0204-owrt-mtd-split-remove-padding.patch

@@ -1,6 +1,6 @@
 --- a/drivers/mtd/mtdpart.c
 --- a/drivers/mtd/mtdpart.c
 +++ b/drivers/mtd/mtdpart.c
 +++ b/drivers/mtd/mtdpart.c
-@@ -808,10 +808,6 @@ static void split_uimage(struct mtd_info
+@@ -806,10 +806,6 @@ static void split_uimage(struct mtd_info
  		return;
  		return;
  
  
  	len = be32_to_cpu(hdr.size) + 0x40;
  	len = be32_to_cpu(hdr.size) + 0x40;

+ 14 - 22
target/linux/ramips/patches-3.10/0205-uvc-add-iPassion-iP2970-support.patch

@@ -12,11 +12,9 @@ Signed-off-by: John Crispin <[email protected]>
  drivers/media/usb/uvc/uvcvideo.h   |    3 +++
  drivers/media/usb/uvc/uvcvideo.h   |    3 +++
  5 files changed, 61 insertions(+), 7 deletions(-)
  5 files changed, 61 insertions(+), 7 deletions(-)
 
 
-Index: linux-3.10.12/drivers/media/usb/uvc/uvc_driver.c
-===================================================================
---- linux-3.10.12.orig/drivers/media/usb/uvc/uvc_driver.c	2013-09-14 15:55:12.000000000 +0200
-+++ linux-3.10.12/drivers/media/usb/uvc/uvc_driver.c	2013-09-19 04:30:11.825592123 +0200
-@@ -2420,6 +2420,20 @@
+--- a/drivers/media/usb/uvc/uvc_driver.c
++++ b/drivers/media/usb/uvc/uvc_driver.c
+@@ -2420,6 +2420,20 @@ static struct usb_device_id uvc_ids[] =
  	  .bInterfaceProtocol	= 0,
  	  .bInterfaceProtocol	= 0,
  	  .driver_info		= UVC_QUIRK_PROBE_MINMAX
  	  .driver_info		= UVC_QUIRK_PROBE_MINMAX
  				| UVC_QUIRK_IGNORE_SELECTOR_UNIT },
  				| UVC_QUIRK_IGNORE_SELECTOR_UNIT },
@@ -37,11 +35,9 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_driver.c
  	/* Generic USB Video Class */
  	/* Generic USB Video Class */
  	{ USB_INTERFACE_INFO(USB_CLASS_VIDEO, 1, 0) },
  	{ USB_INTERFACE_INFO(USB_CLASS_VIDEO, 1, 0) },
  	{}
  	{}
-Index: linux-3.10.12/drivers/media/usb/uvc/uvc_status.c
-===================================================================
---- linux-3.10.12.orig/drivers/media/usb/uvc/uvc_status.c	2013-09-14 15:55:12.000000000 +0200
-+++ linux-3.10.12/drivers/media/usb/uvc/uvc_status.c	2013-09-19 01:52:55.721188742 +0200
-@@ -139,6 +139,7 @@
+--- a/drivers/media/usb/uvc/uvc_status.c
++++ b/drivers/media/usb/uvc/uvc_status.c
+@@ -139,6 +139,7 @@ static void uvc_status_complete(struct u
  		switch (dev->status[0] & 0x0f) {
  		switch (dev->status[0] & 0x0f) {
  		case UVC_STATUS_TYPE_CONTROL:
  		case UVC_STATUS_TYPE_CONTROL:
  			uvc_event_control(dev, dev->status, len);
  			uvc_event_control(dev, dev->status, len);
@@ -49,7 +45,7 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_status.c
  			break;
  			break;
  
  
  		case UVC_STATUS_TYPE_STREAMING:
  		case UVC_STATUS_TYPE_STREAMING:
-@@ -182,6 +183,7 @@
+@@ -182,6 +183,7 @@ int uvc_status_init(struct uvc_device *d
  	}
  	}
  
  
  	pipe = usb_rcvintpipe(dev->udev, ep->desc.bEndpointAddress);
  	pipe = usb_rcvintpipe(dev->udev, ep->desc.bEndpointAddress);
@@ -57,10 +53,8 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_status.c
  
  
  	/* For high-speed interrupt endpoints, the bInterval value is used as
  	/* For high-speed interrupt endpoints, the bInterval value is used as
  	 * an exponent of two. Some developers forgot about it.
  	 * an exponent of two. Some developers forgot about it.
-Index: linux-3.10.12/drivers/media/usb/uvc/uvc_video.c
-===================================================================
---- linux-3.10.12.orig/drivers/media/usb/uvc/uvc_video.c	2013-09-14 15:55:12.000000000 +0200
-+++ linux-3.10.12/drivers/media/usb/uvc/uvc_video.c	2013-09-19 07:31:28.642057093 +0200
+--- a/drivers/media/usb/uvc/uvc_video.c
++++ b/drivers/media/usb/uvc/uvc_video.c
 @@ -21,6 +21,11 @@
 @@ -21,6 +21,11 @@
  #include <linux/wait.h>
  #include <linux/wait.h>
  #include <linux/atomic.h>
  #include <linux/atomic.h>
@@ -73,7 +67,7 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_video.c
  
  
  #include <media/v4l2-common.h>
  #include <media/v4l2-common.h>
  
  
-@@ -1074,9 +1079,149 @@
+@@ -1074,9 +1079,149 @@ static void uvc_video_decode_data(struct
  	}
  	}
  }
  }
  
  
@@ -223,7 +217,7 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_video.c
  	/* Mark the buffer as done if the EOF marker is set. */
  	/* Mark the buffer as done if the EOF marker is set. */
  	if (data[1] & UVC_STREAM_EOF && buf->bytesused != 0) {
  	if (data[1] & UVC_STREAM_EOF && buf->bytesused != 0) {
  		uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n");
  		uvc_trace(UVC_TRACE_FRAME, "Frame complete (EOF found).\n");
-@@ -1477,6 +1622,8 @@
+@@ -1477,6 +1622,8 @@ static int uvc_init_video_isoc(struct uv
  	if (npackets == 0)
  	if (npackets == 0)
  		return -ENOMEM;
  		return -ENOMEM;
  
  
@@ -232,10 +226,8 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvc_video.c
  	size = npackets * psize;
  	size = npackets * psize;
  
  
  	for (i = 0; i < UVC_URBS; ++i) {
  	for (i = 0; i < UVC_URBS; ++i) {
-Index: linux-3.10.12/drivers/media/usb/uvc/uvcvideo.h
-===================================================================
---- linux-3.10.12.orig/drivers/media/usb/uvc/uvcvideo.h	2013-09-14 15:55:12.000000000 +0200
-+++ linux-3.10.12/drivers/media/usb/uvc/uvcvideo.h	2013-09-19 04:36:51.801609222 +0200
+--- a/drivers/media/usb/uvc/uvcvideo.h
++++ b/drivers/media/usb/uvc/uvcvideo.h
 @@ -137,6 +137,8 @@
 @@ -137,6 +137,8 @@
  #define UVC_QUIRK_FIX_BANDWIDTH		0x00000080
  #define UVC_QUIRK_FIX_BANDWIDTH		0x00000080
  #define UVC_QUIRK_PROBE_DEF		0x00000100
  #define UVC_QUIRK_PROBE_DEF		0x00000100
@@ -245,7 +237,7 @@ Index: linux-3.10.12/drivers/media/usb/uvc/uvcvideo.h
  
  
  /* Format flags */
  /* Format flags */
  #define UVC_FMT_FLAG_COMPRESSED		0x00000001
  #define UVC_FMT_FLAG_COMPRESSED		0x00000001
-@@ -538,6 +540,7 @@
+@@ -538,6 +540,7 @@ struct uvc_device {
  	__u8 *status;
  	__u8 *status;
  	struct input_dev *input;
  	struct input_dev *input;
  	char input_phys[64];
  	char input_phys[64];

+ 1 - 1
target/linux/x86/patches-3.10/012-export_erase_write.patch

@@ -11,7 +11,7 @@
  	struct erase_info erase;
  	struct erase_info erase;
 --- a/include/linux/mtd/mtd.h
 --- a/include/linux/mtd/mtd.h
 +++ b/include/linux/mtd/mtd.h
 +++ b/include/linux/mtd/mtd.h
-@@ -391,6 +391,9 @@ extern void register_mtd_user (struct mt
+@@ -409,6 +409,9 @@ extern void register_mtd_user (struct mt
  extern int unregister_mtd_user (struct mtd_notifier *old);
  extern int unregister_mtd_user (struct mtd_notifier *old);
  void *mtd_kmalloc_up_to(const struct mtd_info *mtd, size_t *size);
  void *mtd_kmalloc_up_to(const struct mtd_info *mtd, size_t *size);