Просмотр исходного кода

kirkwood: update patches and configuration (3.10)

Signed-off-by: Luka Perkov <[email protected]>

SVN-Revision: 38295
Luka Perkov 12 лет назад
Родитель
Сommit
38936426f7
34 измененных файлов с 1638 добавлено и 869 удалено
  1. 7 15
      target/linux/kirkwood/config-3.10
  2. 6 12
      target/linux/kirkwood/patches-3.10/0001-of-pci-Provide-support-for-parsing-PCI-DT-ranges-pro.patch
  3. 4 10
      target/linux/kirkwood/patches-3.10/0003-of-pci-Add-of_pci_parse_bus_range-function.patch
  4. 4 8
      target/linux/kirkwood/patches-3.10/0004-clk-mvebu-create-parent-child-relation-for-PCIe-cloc.patch
  5. 5 9
      target/linux/kirkwood/patches-3.10/0005-clk-mvebu-add-more-PCIe-clocks-for-Armada-XP.patch
  6. 14 31
      target/linux/kirkwood/patches-3.10/0006-pci-PCIe-driver-for-Marvell-Armada-370-XP-systems.patch
  7. 3 7
      target/linux/kirkwood/patches-3.10/0007-arm-mvebu-PCIe-support-is-now-available-on-mvebu.patch
  8. 0 41
      target/linux/kirkwood/patches-3.10/0008-arm-mvebu-update-defconfig-with-PCI-and-USB-support.patch
  9. 28 0
      target/linux/kirkwood/patches-3.10/0008-pci-mvebu-fix-return-value-check-in-mvebu_pcie_probe.patch
  10. 4 12
      target/linux/kirkwood/patches-3.10/0009-pci-mvebu-enable-driver-usage-on-Kirkwood.patch
  11. 4 10
      target/linux/kirkwood/patches-3.10/0010-arm-kirkwood-move-PCIe-window-init-to-legacy-driver.patch
  12. 3 11
      target/linux/kirkwood/patches-3.10/0011-arm-kirkwood-add-SoC-level-Device-Tree-data-for-PCIe.patch
  13. 3 9
      target/linux/kirkwood/patches-3.10/0012-arm-kirkwood-convert-Iomega-Iconnect-to-use-DT-for-t.patch
  14. 3 9
      target/linux/kirkwood/patches-3.10/0013-arm-kirkwood-convert-MPL-CEC4-to-use-DT-for-the-PCIe.patch
  15. 4 15
      target/linux/kirkwood/patches-3.10/0014-arm-kirkwood-convert-ZyXEL-NSA310-to-use-DT-for-the-.patch
  16. 3 11
      target/linux/kirkwood/patches-3.10/0015-arm-kirkwood-convert-QNAP-TS219-to-use-DT-for-the-PC.patch
  17. 7 34
      target/linux/kirkwood/patches-3.10/0016-arm-kirkwood-convert-db-88f6281-db-88f6282-to-the-De.patch
  18. 0 37
      target/linux/kirkwood/patches-3.10/0017-arm-kirkwood-update-defconfig-with-PCIe-driver-and-b.patch
  19. 97 0
      target/linux/kirkwood/patches-3.10/0017-pci-mvebu-no-longer-fake-the-slot-location-of-downst.patch
  20. 97 0
      target/linux/kirkwood/patches-3.10/0018-pci-mvebu-allow-the-enumeration-of-devices-beyond-ph.patch
  21. 87 0
      target/linux/kirkwood/patches-3.10/0019-pci-mvebu-fix-the-emulation-of-the-status-register.patch
  22. 5 9
      target/linux/kirkwood/patches-3.10/0020-net-mv643xx_eth-use-phy_disconnect-instead-of-phy_de.patch
  23. 6 10
      target/linux/kirkwood/patches-3.10/0021-net-mv643xx_eth-use-managed-devm_ioremap-for-port-re.patch
  24. 5 9
      target/linux/kirkwood/patches-3.10/0022-net-mv643xx_eth-add-phy_node-to-platform_data-struct.patch
  25. 5 9
      target/linux/kirkwood/patches-3.10/0023-net-mv643xx_eth-use-of_phy_connect-if-phy_node-prese.patch
  26. 6 10
      target/linux/kirkwood/patches-3.10/0024-net-mv643xx_eth-proper-initialization-for-Kirkwood-S.patch
  27. 0 439
      target/linux/kirkwood/patches-3.10/0025-ARM-kirkwood-remove-redundant-DT-board-files.patch
  28. 10 17
      target/linux/kirkwood/patches-3.10/0025-net-mv643xx_eth-add-DT-parsing-support.patch
  29. 4 58
      target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch
  30. 1116 0
      target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
  31. 4 8
      target/linux/kirkwood/patches-3.10/0028-ARM-kirkwood-remove-legacy-clk-alias-for-mv643xx_eth.patch
  32. 8 12
      target/linux/kirkwood/patches-3.10/0029-net-mv643xx_eth-do-not-use-port-number-as-platform-d.patch
  33. 2 7
      target/linux/kirkwood/patches-3.10/0050-of-add-support-for-parsing-mac-addresses-from-mtd.patch
  34. 84 0
      target/linux/kirkwood/patches-3.10/110-ib62x0.patch

+ 7 - 15
target/linux/kirkwood/config-3.10

@@ -11,10 +11,7 @@ CONFIG_ARCH_REQUIRE_GPIOLIB=y
 # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
 CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
 CONFIG_ARM=y
 CONFIG_ARM=y
-CONFIG_ARM_APPENDED_DTB=y
-CONFIG_ARM_ATAG_DTB_COMPAT=y
-# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
-CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
+# CONFIG_ARM_APPENDED_DTB is not set
 # CONFIG_ARM_CPU_SUSPEND is not set
 # CONFIG_ARM_CPU_SUSPEND is not set
 CONFIG_ARM_L1_CACHE_SHIFT=5
 CONFIG_ARM_L1_CACHE_SHIFT=5
 CONFIG_ARM_NR_BANKS=8
 CONFIG_ARM_NR_BANKS=8
@@ -79,7 +76,6 @@ CONFIG_HAS_DMA=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT=y
 CONFIG_HAS_IOPORT=y
 # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
 # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
-CONFIG_HAVE_AOUT=y
 CONFIG_HAVE_ARCH_JUMP_LABEL=y
 CONFIG_HAVE_ARCH_JUMP_LABEL=y
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_HAVE_ARCH_PFN_VALID=y
 CONFIG_HAVE_ARCH_PFN_VALID=y
@@ -135,9 +131,9 @@ CONFIG_LEGACY_PTYS=y
 CONFIG_LEGACY_PTY_COUNT=256
 CONFIG_LEGACY_PTY_COUNT=256
 CONFIG_M25PXX_USE_FAST_READ=y
 CONFIG_M25PXX_USE_FAST_READ=y
 # CONFIG_MACH_D2NET_V2 is not set
 # CONFIG_MACH_D2NET_V2 is not set
-# CONFIG_MACH_DLINK_KIRKWOOD_DT is not set
+CONFIG_MACH_DLINK_KIRKWOOD_DT=y
 # CONFIG_MACH_DOCKSTAR is not set
 # CONFIG_MACH_DOCKSTAR is not set
-CONFIG_MACH_ESATA_SHEEVAPLUG=y
+# CONFIG_MACH_ESATA_SHEEVAPLUG is not set
 # CONFIG_MACH_GURUPLUG is not set
 # CONFIG_MACH_GURUPLUG is not set
 # CONFIG_MACH_INETSPACE_V2 is not set
 # CONFIG_MACH_INETSPACE_V2 is not set
 # CONFIG_MACH_MV88F6281GTW_GE is not set
 # CONFIG_MACH_MV88F6281GTW_GE is not set
@@ -145,16 +141,14 @@ CONFIG_MACH_ESATA_SHEEVAPLUG=y
 # CONFIG_MACH_NET5BIG_V2 is not set
 # CONFIG_MACH_NET5BIG_V2 is not set
 # CONFIG_MACH_NETSPACE_MAX_V2 is not set
 # CONFIG_MACH_NETSPACE_MAX_V2 is not set
 # CONFIG_MACH_NETSPACE_V2 is not set
 # CONFIG_MACH_NETSPACE_V2 is not set
-CONFIG_MACH_OPENRD=y
-CONFIG_MACH_OPENRD_BASE=y
-CONFIG_MACH_OPENRD_CLIENT=y
+# CONFIG_MACH_OPENRD_BASE is not set
+# CONFIG_MACH_OPENRD_CLIENT is not set
 # CONFIG_MACH_OPENRD_ULTIMATE is not set
 # CONFIG_MACH_OPENRD_ULTIMATE is not set
 # CONFIG_MACH_RD88F6192_NAS is not set
 # CONFIG_MACH_RD88F6192_NAS is not set
 # CONFIG_MACH_RD88F6281 is not set
 # CONFIG_MACH_RD88F6281 is not set
-CONFIG_MACH_SHEEVAPLUG=y
+# CONFIG_MACH_SHEEVAPLUG is not set
 # CONFIG_MACH_T5325 is not set
 # CONFIG_MACH_T5325 is not set
 # CONFIG_MACH_TS219 is not set
 # CONFIG_MACH_TS219 is not set
-# CONFIG_MACH_TS219_DT is not set
 # CONFIG_MACH_TS41X is not set
 # CONFIG_MACH_TS41X is not set
 CONFIG_MDIO_BOARDINFO=y
 CONFIG_MDIO_BOARDINFO=y
 CONFIG_MMC=y
 CONFIG_MMC=y
@@ -170,13 +164,13 @@ CONFIG_MTD_NAND_ECC=y
 CONFIG_MTD_NAND_ORION=y
 CONFIG_MTD_NAND_ORION=y
 CONFIG_MTD_OF_PARTS=y
 CONFIG_MTD_OF_PARTS=y
 # CONFIG_MTD_SM_COMMON is not set
 # CONFIG_MTD_SM_COMMON is not set
-CONFIG_MTD_UIMAGE_SPLIT=y
 CONFIG_MV643XX_ETH=y
 CONFIG_MV643XX_ETH=y
 CONFIG_MVEBU_CLK_CORE=y
 CONFIG_MVEBU_CLK_CORE=y
 CONFIG_MVEBU_CLK_GATING=y
 CONFIG_MVEBU_CLK_GATING=y
 CONFIG_MVEBU_MBUS=y
 CONFIG_MVEBU_MBUS=y
 CONFIG_MVMDIO=y
 CONFIG_MVMDIO=y
 CONFIG_NEED_DMA_MAP_STATE=y
 CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_NEED_KUSER_HELPERS=y
 CONFIG_NEED_PER_CPU_KM=y
 CONFIG_NEED_PER_CPU_KM=y
 CONFIG_NET_DSA=y
 CONFIG_NET_DSA=y
 CONFIG_NET_DSA_MV88E6123_61_65=y
 CONFIG_NET_DSA_MV88E6123_61_65=y
@@ -185,7 +179,6 @@ CONFIG_NET_DSA_MV88E6XXX=y
 CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
 CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
 CONFIG_NET_DSA_TAG_DSA=y
 CONFIG_NET_DSA_TAG_DSA=y
 CONFIG_NET_DSA_TAG_EDSA=y
 CONFIG_NET_DSA_TAG_EDSA=y
-# CONFIG_NET_IP_TUNNEL is not set
 CONFIG_NLS=y
 CONFIG_NLS=y
 CONFIG_OF=y
 CONFIG_OF=y
 CONFIG_OF_ADDRESS=y
 CONFIG_OF_ADDRESS=y
@@ -207,7 +200,6 @@ CONFIG_PAGEFLAGS_EXTENDED=y
 CONFIG_PAGE_OFFSET=0xC0000000
 CONFIG_PAGE_OFFSET=0xC0000000
 CONFIG_PCI=y
 CONFIG_PCI=y
 CONFIG_PCI_MVEBU=y
 CONFIG_PCI_MVEBU=y
-# CONFIG_PDA_POWER is not set
 CONFIG_PERF_USE_VMALLOC=y
 CONFIG_PERF_USE_VMALLOC=y
 CONFIG_PHYLIB=y
 CONFIG_PHYLIB=y
 CONFIG_PINCONF=y
 CONFIG_PINCONF=y

+ 6 - 12
target/linux/kirkwood/patches-3.10/0001-of-pci-Provide-support-for-parsing-PCI-DT-ranges-pro.patch

@@ -1,6 +1,6 @@
-From 6b5917890ada1dc078ee64af2500cd6289fcf9bc Mon Sep 17 00:00:00 2001
+From 3c72277cf2c10e3b7065541b3588f21138efeba2 Mon Sep 17 00:00:00 2001
 From: Andrew Murray <[email protected]>
 From: Andrew Murray <[email protected]>
-Date: Tue, 7 May 2013 16:31:12 +0100
+Date: Thu, 16 May 2013 17:55:17 +0200
 Subject: [PATCH 01/29] of/pci: Provide support for parsing PCI DT ranges
 Subject: [PATCH 01/29] of/pci: Provide support for parsing PCI DT ranges
  property
  property
 
 
@@ -42,16 +42,15 @@ Tested-by: Thomas Petazzoni <[email protected]>
 Tested-by: Linus Walleij <[email protected]>
 Tested-by: Linus Walleij <[email protected]>
 Tested-by: Jingoo Han <[email protected]>
 Tested-by: Jingoo Han <[email protected]>
 Acked-by: Grant Likely <[email protected]>
 Acked-by: Grant Likely <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  drivers/of/address.c       | 67 ++++++++++++++++++++++++++++++++++++++++++++++
  drivers/of/address.c       | 67 ++++++++++++++++++++++++++++++++++++++++++++++
  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 7c8221d..b55c218 100644
 --- a/drivers/of/address.c
 --- a/drivers/of/address.c
 +++ b/drivers/of/address.c
 +++ b/drivers/of/address.c
-@@ -231,6 +231,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);
@@ -125,8 +124,6 @@ index 7c8221d..b55c218 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 @@
@@ -166,7 +163,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
  
  
@@ -178,7 +175,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;
  }
  }
@@ -198,6 +195,3 @@ index 0506eb5..4c2e6f2 100644
  #endif /* CONFIG_OF_ADDRESS */
  #endif /* CONFIG_OF_ADDRESS */
  
  
  
  
--- 
-1.8.4.rc1
-

+ 4 - 10
target/linux/kirkwood/patches-3.10/0003-of-pci-Add-of_pci_parse_bus_range-function.patch

@@ -1,22 +1,21 @@
-From 6275a8e0bacac9702350b6a003470a9ce67c9139 Mon Sep 17 00:00:00 2001
+From 389637f9e7f523934acf26c247e4722d761ad966 Mon Sep 17 00:00:00 2001
 From: Thierry Reding <[email protected]>
 From: Thierry Reding <[email protected]>
-Date: Mon, 11 Feb 2013 09:22:20 +0100
+Date: Thu, 16 May 2013 17:55:19 +0200
 Subject: [PATCH 03/29] of/pci: Add of_pci_parse_bus_range() function
 Subject: [PATCH 03/29] of/pci: Add of_pci_parse_bus_range() function
 
 
 This function can be used to parse a bus-range property as specified by
 This function can be used to parse a bus-range property as specified by
 device nodes representing PCI bridges.
 device nodes representing PCI bridges.
 
 
 Signed-off-by: Thierry Reding <[email protected]>
 Signed-off-by: Thierry Reding <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  drivers/of/of_pci.c    | 25 +++++++++++++++++++++++++
  drivers/of/of_pci.c    | 25 +++++++++++++++++++++++++
  include/linux/of_pci.h |  1 +
  include/linux/of_pci.h |  1 +
  2 files changed, 26 insertions(+)
  2 files changed, 26 insertions(+)
 
 
-diff --git a/drivers/of/of_pci.c b/drivers/of/of_pci.c
-index 4dd7b9b..42c687a 100644
 --- a/drivers/of/of_pci.c
 --- a/drivers/of/of_pci.c
 +++ b/drivers/of/of_pci.c
 +++ b/drivers/of/of_pci.c
-@@ -64,3 +64,28 @@ int of_pci_get_devfn(struct device_node *np)
+@@ -64,3 +64,28 @@ int of_pci_get_devfn(struct device_node
  	return (be32_to_cpup(reg) >> 8) & 0xff;
  	return (be32_to_cpup(reg) >> 8) & 0xff;
  }
  }
  EXPORT_SYMBOL_GPL(of_pci_get_devfn);
  EXPORT_SYMBOL_GPL(of_pci_get_devfn);
@@ -45,8 +44,6 @@ index 4dd7b9b..42c687a 100644
 +	return 0;
 +	return 0;
 +}
 +}
 +EXPORT_SYMBOL_GPL(of_pci_parse_bus_range);
 +EXPORT_SYMBOL_GPL(of_pci_parse_bus_range);
-diff --git a/include/linux/of_pci.h b/include/linux/of_pci.h
-index 91ec484..7a04826 100644
 --- a/include/linux/of_pci.h
 --- a/include/linux/of_pci.h
 +++ b/include/linux/of_pci.h
 +++ b/include/linux/of_pci.h
 @@ -11,5 +11,6 @@ struct device_node;
 @@ -11,5 +11,6 @@ struct device_node;
@@ -56,6 +53,3 @@ index 91ec484..7a04826 100644
 +int of_pci_parse_bus_range(struct device_node *node, struct resource *res);
 +int of_pci_parse_bus_range(struct device_node *node, struct resource *res);
  
  
  #endif
  #endif
--- 
-1.8.4.rc1
-

+ 4 - 8
target/linux/kirkwood/patches-3.10/0004-clk-mvebu-create-parent-child-relation-for-PCIe-cloc.patch

@@ -1,6 +1,6 @@
-From adebeab033de18cabf880f98d2167095520243f2 Mon Sep 17 00:00:00 2001
+From 72fb19fc4ff89878273799eb38e8d95b0add3c05 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Fri, 7 Dec 2012 20:35:20 +0100
+Date: Thu, 16 May 2013 17:55:20 +0200
 Subject: [PATCH 04/29] clk: mvebu: create parent-child relation for PCIe
 Subject: [PATCH 04/29] clk: mvebu: create parent-child relation for PCIe
  clocks on Armada 370
  clocks on Armada 370
 
 
@@ -11,15 +11,14 @@ clocks on Armada XP.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Cc: Mike Turquette <[email protected]>
 Cc: Mike Turquette <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  drivers/clk/mvebu/clk-gating-ctrl.c | 4 ++--
  drivers/clk/mvebu/clk-gating-ctrl.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/clk/mvebu/clk-gating-ctrl.c b/drivers/clk/mvebu/clk-gating-ctrl.c
-index ebf141d..b35785a 100644
 --- a/drivers/clk/mvebu/clk-gating-ctrl.c
 --- a/drivers/clk/mvebu/clk-gating-ctrl.c
 +++ b/drivers/clk/mvebu/clk-gating-ctrl.c
 +++ b/drivers/clk/mvebu/clk-gating-ctrl.c
-@@ -119,8 +119,8 @@ static const struct mvebu_soc_descr __initconst armada_370_gating_descr[] = {
+@@ -119,8 +119,8 @@ static const struct mvebu_soc_descr __in
  	{ "pex1_en", NULL,  2 },
  	{ "pex1_en", NULL,  2 },
  	{ "ge1", NULL, 3 },
  	{ "ge1", NULL, 3 },
  	{ "ge0", NULL, 4 },
  	{ "ge0", NULL, 4 },
@@ -30,6 +29,3 @@ index ebf141d..b35785a 100644
  	{ "sata0", NULL, 15 },
  	{ "sata0", NULL, 15 },
  	{ "sdio", NULL, 17 },
  	{ "sdio", NULL, 17 },
  	{ "tdm", NULL, 25 },
  	{ "tdm", NULL, 25 },
--- 
-1.8.4.rc1
-

+ 5 - 9
target/linux/kirkwood/patches-3.10/0005-clk-mvebu-add-more-PCIe-clocks-for-Armada-XP.patch

@@ -1,6 +1,6 @@
-From 7bda5e7704872a2f01a6c980bb7616d689520ea5 Mon Sep 17 00:00:00 2001
+From 52a1c4e3aa9027040c1adc69303aaffc3c2cbaab Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Fri, 18 Jan 2013 16:42:01 +0100
+Date: Thu, 16 May 2013 17:55:21 +0200
 Subject: [PATCH 05/29] clk: mvebu: add more PCIe clocks for Armada XP
 Subject: [PATCH 05/29] clk: mvebu: add more PCIe clocks for Armada XP
 
 
 The current revision of the datasheet only mentions the gatable clocks
 The current revision of the datasheet only mentions the gatable clocks
@@ -14,15 +14,14 @@ clocks, in order to match the naming using the datasheets.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Cc: Mike Turquette <[email protected]>
 Cc: Mike Turquette <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  drivers/clk/mvebu/clk-gating-ctrl.c | 14 ++++++++++----
  drivers/clk/mvebu/clk-gating-ctrl.c | 14 ++++++++++----
  1 file changed, 10 insertions(+), 4 deletions(-)
  1 file changed, 10 insertions(+), 4 deletions(-)
 
 
-diff --git a/drivers/clk/mvebu/clk-gating-ctrl.c b/drivers/clk/mvebu/clk-gating-ctrl.c
-index b35785a..2f03723 100644
 --- a/drivers/clk/mvebu/clk-gating-ctrl.c
 --- a/drivers/clk/mvebu/clk-gating-ctrl.c
 +++ b/drivers/clk/mvebu/clk-gating-ctrl.c
 +++ b/drivers/clk/mvebu/clk-gating-ctrl.c
-@@ -137,10 +137,14 @@ static const struct mvebu_soc_descr __initconst armada_xp_gating_descr[] = {
+@@ -137,10 +137,14 @@ static const struct mvebu_soc_descr __in
  	{ "ge2", NULL,  2 },
  	{ "ge2", NULL,  2 },
  	{ "ge1", NULL, 3 },
  	{ "ge1", NULL, 3 },
  	{ "ge0", NULL, 4 },
  	{ "ge0", NULL, 4 },
@@ -41,7 +40,7 @@ index b35785a..2f03723 100644
  	{ "bp", NULL, 13 },
  	{ "bp", NULL, 13 },
  	{ "sata0lnk", NULL, 14 },
  	{ "sata0lnk", NULL, 14 },
  	{ "sata0", "sata0lnk", 15 },
  	{ "sata0", "sata0lnk", 15 },
-@@ -152,6 +156,8 @@ static const struct mvebu_soc_descr __initconst armada_xp_gating_descr[] = {
+@@ -152,6 +156,8 @@ static const struct mvebu_soc_descr __in
  	{ "xor0", NULL, 22 },
  	{ "xor0", NULL, 22 },
  	{ "crypto", NULL, 23 },
  	{ "crypto", NULL, 23 },
  	{ "tdm", NULL, 25 },
  	{ "tdm", NULL, 25 },
@@ -50,6 +49,3 @@ index b35785a..2f03723 100644
  	{ "xor1", NULL, 28 },
  	{ "xor1", NULL, 28 },
  	{ "sata1lnk", NULL, 29 },
  	{ "sata1lnk", NULL, 29 },
  	{ "sata1", "sata1lnk", 30 },
  	{ "sata1", "sata1lnk", 30 },
--- 
-1.8.4.rc1
-

+ 14 - 31
target/linux/kirkwood/patches-3.10/0006-pci-PCIe-driver-for-Marvell-Armada-370-XP-systems.patch

@@ -1,6 +1,6 @@
-From b18ed8465d6c2e3b7057d5bb2fc3da5cb15e3fb1 Mon Sep 17 00:00:00 2001
+From 8a0a335ed5d4f6c8455090f77ac57c0c25800070 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Fri, 18 Jan 2013 17:42:58 +0100
+Date: Thu, 16 May 2013 17:55:22 +0200
 Subject: [PATCH 06/29] pci: PCIe driver for Marvell Armada 370/XP systems
 Subject: [PATCH 06/29] pci: PCIe driver for Marvell Armada 370/XP systems
 
 
 This driver implements the support for the PCIe interfaces on the
 This driver implements the support for the PCIe interfaces on the
@@ -24,22 +24,20 @@ decoding windows, using the mvebu-mbus driver.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Acked-by: Bjorn Helgaas <[email protected]>
 Acked-by: Bjorn Helgaas <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  .../devicetree/bindings/pci/mvebu-pci.txt          | 220 ++++++
  .../devicetree/bindings/pci/mvebu-pci.txt          | 220 ++++++
  drivers/pci/Kconfig                                |   2 +
  drivers/pci/Kconfig                                |   2 +
  drivers/pci/Makefile                               |   3 +
  drivers/pci/Makefile                               |   3 +
  drivers/pci/host/Kconfig                           |   8 +
  drivers/pci/host/Kconfig                           |   8 +
  drivers/pci/host/Makefile                          |   1 +
  drivers/pci/host/Makefile                          |   1 +
- drivers/pci/host/pci-mvebu.c                       | 879 +++++++++++++++++++++
- 6 files changed, 1113 insertions(+)
+ drivers/pci/host/pci-mvebu.c                       | 880 +++++++++++++++++++++
+ 6 files changed, 1114 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/pci/mvebu-pci.txt
  create mode 100644 Documentation/devicetree/bindings/pci/mvebu-pci.txt
  create mode 100644 drivers/pci/host/Kconfig
  create mode 100644 drivers/pci/host/Kconfig
  create mode 100644 drivers/pci/host/Makefile
  create mode 100644 drivers/pci/host/Makefile
  create mode 100644 drivers/pci/host/pci-mvebu.c
  create mode 100644 drivers/pci/host/pci-mvebu.c
 
 
-diff --git a/Documentation/devicetree/bindings/pci/mvebu-pci.txt b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
-new file mode 100644
-index 0000000..eb69d92
 --- /dev/null
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 +++ b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 @@ -0,0 +1,220 @@
 @@ -0,0 +1,220 @@
@@ -263,30 +261,23 @@ index 0000000..eb69d92
 +		status = "disabled";
 +		status = "disabled";
 +	};
 +	};
 +};
 +};
-diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
-index 6d51aa6..ac45398 100644
 --- a/drivers/pci/Kconfig
 --- a/drivers/pci/Kconfig
 +++ b/drivers/pci/Kconfig
 +++ b/drivers/pci/Kconfig
-@@ -119,3 +119,5 @@ config PCI_IOAPIC
+@@ -125,3 +125,5 @@ config PCI_IOAPIC
  config PCI_LABEL
  config PCI_LABEL
  	def_bool y if (DMI || ACPI)
  	def_bool y if (DMI || ACPI)
  	select NLS
  	select NLS
 +
 +
 +source "drivers/pci/host/Kconfig"
 +source "drivers/pci/host/Kconfig"
-diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
-index 0c3efcf..6ebf5bf 100644
 --- a/drivers/pci/Makefile
 --- a/drivers/pci/Makefile
 +++ b/drivers/pci/Makefile
 +++ b/drivers/pci/Makefile
-@@ -67,3 +67,6 @@ obj-$(CONFIG_XEN_PCIDEV_FRONTEND) += xen-pcifront.o
+@@ -67,3 +67,6 @@ obj-$(CONFIG_XEN_PCIDEV_FRONTEND) += xen
  obj-$(CONFIG_OF) += of.o
  obj-$(CONFIG_OF) += of.o
  
  
  ccflags-$(CONFIG_PCI_DEBUG) := -DDEBUG
  ccflags-$(CONFIG_PCI_DEBUG) := -DDEBUG
 +
 +
 +# PCI host controller drivers
 +# PCI host controller drivers
 +obj-y += host/
 +obj-y += host/
-diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig
-new file mode 100644
-index 0000000..6918fbc
 --- /dev/null
 --- /dev/null
 +++ b/drivers/pci/host/Kconfig
 +++ b/drivers/pci/host/Kconfig
 @@ -0,0 +1,8 @@
 @@ -0,0 +1,8 @@
@@ -298,19 +289,13 @@ index 0000000..6918fbc
 +	depends on ARCH_MVEBU
 +	depends on ARCH_MVEBU
 +
 +
 +endmenu
 +endmenu
-diff --git a/drivers/pci/host/Makefile b/drivers/pci/host/Makefile
-new file mode 100644
-index 0000000..5ea2d8b
 --- /dev/null
 --- /dev/null
 +++ b/drivers/pci/host/Makefile
 +++ b/drivers/pci/host/Makefile
 @@ -0,0 +1 @@
 @@ -0,0 +1 @@
 +obj-$(CONFIG_PCI_MVEBU) += pci-mvebu.o
 +obj-$(CONFIG_PCI_MVEBU) += pci-mvebu.o
-diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c
-new file mode 100644
-index 0000000..b0ee63b
 --- /dev/null
 --- /dev/null
 +++ b/drivers/pci/host/pci-mvebu.c
 +++ b/drivers/pci/host/pci-mvebu.c
-@@ -0,0 +1,879 @@
+@@ -0,0 +1,880 @@
 +/*
 +/*
 + * PCIe driver for Marvell Armada 370 and Armada XP SoCs
 + * PCIe driver for Marvell Armada 370 and Armada XP SoCs
 + *
 + *
@@ -1000,7 +985,7 @@ index 0000000..b0ee63b
 +		return start;
 +		return start;
 +}
 +}
 +
 +
-+static void mvebu_pcie_enable(struct mvebu_pcie *pcie)
++static void __init mvebu_pcie_enable(struct mvebu_pcie *pcie)
 +{
 +{
 +	struct hw_pci hw;
 +	struct hw_pci hw;
 +
 +
@@ -1022,9 +1007,10 @@ index 0000000..b0ee63b
 + * <...> property for one that matches the given port/lane. Once
 + * <...> property for one that matches the given port/lane. Once
 + * found, maps it.
 + * found, maps it.
 + */
 + */
-+static void __iomem *mvebu_pcie_map_registers(struct platform_device *pdev,
-+					      struct device_node *np,
-+					      struct mvebu_pcie_port *port)
++static void __iomem * __init
++mvebu_pcie_map_registers(struct platform_device *pdev,
++			 struct device_node *np,
++			 struct mvebu_pcie_port *port)
 +{
 +{
 +	struct resource regs;
 +	struct resource regs;
 +	int ret = 0;
 +	int ret = 0;
@@ -1179,7 +1165,7 @@ index 0000000..b0ee63b
 +	},
 +	},
 +};
 +};
 +
 +
-+static int mvebu_pcie_init(void)
++static int __init mvebu_pcie_init(void)
 +{
 +{
 +	return platform_driver_probe(&mvebu_pcie_driver,
 +	return platform_driver_probe(&mvebu_pcie_driver,
 +				     mvebu_pcie_probe);
 +				     mvebu_pcie_probe);
@@ -1190,6 +1176,3 @@ index 0000000..b0ee63b
 +MODULE_AUTHOR("Thomas Petazzoni <[email protected]>");
 +MODULE_AUTHOR("Thomas Petazzoni <[email protected]>");
 +MODULE_DESCRIPTION("Marvell EBU PCIe driver");
 +MODULE_DESCRIPTION("Marvell EBU PCIe driver");
 +MODULE_LICENSE("GPLv2");
 +MODULE_LICENSE("GPLv2");
--- 
-1.8.4.rc1
-

+ 3 - 7
target/linux/kirkwood/patches-3.10/0007-arm-mvebu-PCIe-support-is-now-available-on-mvebu.patch

@@ -1,6 +1,6 @@
-From d8bb1510b06f29bb6b63ebafe23656faae60d87f Mon Sep 17 00:00:00 2001
+From 3b475bd86ce4c647a65d218a3014396d4b139fb3 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Fri, 7 Dec 2012 20:56:52 +0100
+Date: Thu, 16 May 2013 17:55:23 +0200
 Subject: [PATCH 07/29] arm: mvebu: PCIe support is now available on mvebu
 Subject: [PATCH 07/29] arm: mvebu: PCIe support is now available on mvebu
 
 
 Now that the PCIe driver for mvebu has been integrated and all its
 Now that the PCIe driver for mvebu has been integrated and all its
@@ -8,12 +8,11 @@ relevant dependencies, we can mark the ARCH_MVEBU platform has
 MIGHT_HAVE_PCI, which allows to select the PCI bus support if needed.
 MIGHT_HAVE_PCI, which allows to select the PCI bus support if needed.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/mach-mvebu/Kconfig | 2 ++
  arch/arm/mach-mvebu/Kconfig | 2 ++
  1 file changed, 2 insertions(+)
  1 file changed, 2 insertions(+)
 
 
-diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
-index 80a8bca..fb827ac 100644
 --- a/arch/arm/mach-mvebu/Kconfig
 --- a/arch/arm/mach-mvebu/Kconfig
 +++ b/arch/arm/mach-mvebu/Kconfig
 +++ b/arch/arm/mach-mvebu/Kconfig
 @@ -16,6 +16,8 @@ config ARCH_MVEBU
 @@ -16,6 +16,8 @@ config ARCH_MVEBU
@@ -25,6 +24,3 @@ index 80a8bca..fb827ac 100644
  
  
  if ARCH_MVEBU
  if ARCH_MVEBU
  
  
--- 
-1.8.4.rc1
-

+ 0 - 41
target/linux/kirkwood/patches-3.10/0008-arm-mvebu-update-defconfig-with-PCI-and-USB-support.patch

@@ -1,41 +0,0 @@
-From 3339170f8adf10c32ad8ba4069f94f1bcd40f46d Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <[email protected]>
-Date: Fri, 7 Dec 2012 22:49:57 +0100
-Subject: [PATCH 08/29] arm: mvebu: update defconfig with PCI and USB support
-
-Now that we have the necessary drivers and Device Tree informations to
-support PCIe on Armada 370 and Armada XP, enable the CONFIG_PCI
-option.
-
-Also, since the Armada 370 Mirabox has a built-in USB XHCI controller
-connected on the PCIe bus, enable the corresponding options as well.
-
-Signed-off-by: Thomas Petazzoni <[email protected]>
----
- arch/arm/configs/mvebu_defconfig | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/arch/arm/configs/mvebu_defconfig b/arch/arm/configs/mvebu_defconfig
-index f3e8ae0..966281e 100644
---- a/arch/arm/configs/mvebu_defconfig
-+++ b/arch/arm/configs/mvebu_defconfig
-@@ -13,6 +13,8 @@ CONFIG_MACH_ARMADA_370=y
- CONFIG_MACH_ARMADA_XP=y
- # CONFIG_CACHE_L2X0 is not set
- # CONFIG_SWP_EMULATE is not set
-+CONFIG_PCI=y
-+CONFIG_PCI_MVEBU=y
- CONFIG_SMP=y
- CONFIG_AEABI=y
- CONFIG_HIGHMEM=y
-@@ -60,6 +62,7 @@ CONFIG_USB_SUPPORT=y
- CONFIG_USB=y
- CONFIG_USB_EHCI_HCD=y
- CONFIG_USB_EHCI_ROOT_HUB_TT=y
-+CONFIG_USB_XHCI_HCD=y
- CONFIG_MMC=y
- CONFIG_MMC_MVSDIO=y
- CONFIG_NEW_LEDS=y
--- 
-1.8.4.rc1
-

+ 28 - 0
target/linux/kirkwood/patches-3.10/0008-pci-mvebu-fix-return-value-check-in-mvebu_pcie_probe.patch

@@ -0,0 +1,28 @@
+From 3ad3d38d36c51b45668708a42f67b07fc87a53e3 Mon Sep 17 00:00:00 2001
+From: Wei Yongjun <[email protected]>
+Date: Mon, 27 May 2013 11:38:41 +0800
+Subject: [PATCH 08/29] pci: mvebu: fix return value check in
+ mvebu_pcie_probe()
+
+In case of error, function of_clk_get_by_name() returns
+ERR_PTR() never returns NULL. The NULL test in the return
+value check should be replaced with IS_ERR().
+
+Signed-off-by: Wei Yongjun <[email protected]>
+Acked-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
+---
+ drivers/pci/host/pci-mvebu.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/pci/host/pci-mvebu.c
++++ b/drivers/pci/host/pci-mvebu.c
+@@ -828,7 +828,7 @@ static int __init mvebu_pcie_probe(struc
+ 		}
+ 
+ 		port->clk = of_clk_get_by_name(child, NULL);
+-		if (!port->clk) {
++		if (IS_ERR(port->clk)) {
+ 			dev_err(&pdev->dev, "PCIe%d.%d: cannot get clock\n",
+ 			       port->port, port->lane);
+ 			iounmap(port->base);

+ 4 - 12
target/linux/kirkwood/patches-3.10/0009-pci-mvebu-enable-driver-usage-on-Kirkwood.patch

@@ -1,6 +1,6 @@
-From 3b93e75d1b66353b8f8ad7d965e17aad68982c55 Mon Sep 17 00:00:00 2001
+From 79ae3cf2d6c01b4394ea462f1c49a2e9fbcf0521 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 27 Mar 2013 18:48:13 +0100
+Date: Wed, 15 May 2013 15:36:54 +0200
 Subject: [PATCH 09/29] pci: mvebu: enable driver usage on Kirkwood
 Subject: [PATCH 09/29] pci: mvebu: enable driver usage on Kirkwood
 
 
 We allow the pci-mvebu driver to be compiled on the Kirkwood platform,
 We allow the pci-mvebu driver to be compiled on the Kirkwood platform,
@@ -9,14 +9,13 @@ by the driver.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  Documentation/devicetree/bindings/pci/mvebu-pci.txt | 1 +
  Documentation/devicetree/bindings/pci/mvebu-pci.txt | 1 +
  drivers/pci/host/Kconfig                            | 2 +-
  drivers/pci/host/Kconfig                            | 2 +-
  drivers/pci/host/pci-mvebu.c                        | 1 +
  drivers/pci/host/pci-mvebu.c                        | 1 +
  3 files changed, 3 insertions(+), 1 deletion(-)
  3 files changed, 3 insertions(+), 1 deletion(-)
 
 
-diff --git a/Documentation/devicetree/bindings/pci/mvebu-pci.txt b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
-index eb69d92..f8d4058 100644
 --- a/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 --- a/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 +++ b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 +++ b/Documentation/devicetree/bindings/pci/mvebu-pci.txt
 @@ -4,6 +4,7 @@ Mandatory properties:
 @@ -4,6 +4,7 @@ Mandatory properties:
@@ -27,8 +26,6 @@ index eb69d92..f8d4058 100644
  - #address-cells, set to <3>
  - #address-cells, set to <3>
  - #size-cells, set to <2>
  - #size-cells, set to <2>
  - #interrupt-cells, set to <1>
  - #interrupt-cells, set to <1>
-diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig
-index 6918fbc..1f1d67f 100644
 --- a/drivers/pci/host/Kconfig
 --- a/drivers/pci/host/Kconfig
 +++ b/drivers/pci/host/Kconfig
 +++ b/drivers/pci/host/Kconfig
 @@ -3,6 +3,6 @@ menu "PCI host controller drivers"
 @@ -3,6 +3,6 @@ menu "PCI host controller drivers"
@@ -39,11 +36,9 @@ index 6918fbc..1f1d67f 100644
 +	depends on ARCH_MVEBU || ARCH_KIRKWOOD
 +	depends on ARCH_MVEBU || ARCH_KIRKWOOD
  
  
  endmenu
  endmenu
-diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c
-index b0ee63b..6fe8b90 100644
 --- a/drivers/pci/host/pci-mvebu.c
 --- a/drivers/pci/host/pci-mvebu.c
 +++ b/drivers/pci/host/pci-mvebu.c
 +++ b/drivers/pci/host/pci-mvebu.c
-@@ -853,6 +853,7 @@ static int __init mvebu_pcie_probe(struct platform_device *pdev)
+@@ -854,6 +854,7 @@ static int __init mvebu_pcie_probe(struc
  static const struct of_device_id mvebu_pcie_of_match_table[] = {
  static const struct of_device_id mvebu_pcie_of_match_table[] = {
  	{ .compatible = "marvell,armada-xp-pcie", },
  	{ .compatible = "marvell,armada-xp-pcie", },
  	{ .compatible = "marvell,armada-370-pcie", },
  	{ .compatible = "marvell,armada-370-pcie", },
@@ -51,6 +46,3 @@ index b0ee63b..6fe8b90 100644
  	{},
  	{},
  };
  };
  MODULE_DEVICE_TABLE(of, mvebu_pcie_of_match_table);
  MODULE_DEVICE_TABLE(of, mvebu_pcie_of_match_table);
--- 
-1.8.4.rc1
-

+ 4 - 10
target/linux/kirkwood/patches-3.10/0010-arm-kirkwood-move-PCIe-window-init-to-legacy-driver.patch

@@ -1,6 +1,6 @@
-From 080dc44291ff143d84b63e5ff9fda963d46a7dce Mon Sep 17 00:00:00 2001
+From 722ffe56a78344821877496f5bb28ca95b4cb67c Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 27 Mar 2013 18:51:25 +0100
+Date: Wed, 15 May 2013 15:36:55 +0200
 Subject: [PATCH 10/29] arm: kirkwood: move PCIe window init to legacy driver
 Subject: [PATCH 10/29] arm: kirkwood: move PCIe window init to legacy driver
 
 
 Since we are going to enable the usage of the mvebu PCIe driver on
 Since we are going to enable the usage of the mvebu PCIe driver on
@@ -17,13 +17,12 @@ dynamically allocated directly by the driver.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/mach-kirkwood/common.c | 24 ------------------------
  arch/arm/mach-kirkwood/common.c | 24 ------------------------
  arch/arm/mach-kirkwood/pcie.c   | 22 ++++++++++++++++++++++
  arch/arm/mach-kirkwood/pcie.c   | 22 ++++++++++++++++++++++
  2 files changed, 22 insertions(+), 24 deletions(-)
  2 files changed, 22 insertions(+), 24 deletions(-)
 
 
-diff --git a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c
-index f389228..41ea98d 100644
 --- a/arch/arm/mach-kirkwood/common.c
 --- a/arch/arm/mach-kirkwood/common.c
 +++ b/arch/arm/mach-kirkwood/common.c
 +++ b/arch/arm/mach-kirkwood/common.c
 @@ -648,30 +648,6 @@ char * __init kirkwood_id(void)
 @@ -648,30 +648,6 @@ char * __init kirkwood_id(void)
@@ -57,8 +56,6 @@ index f389228..41ea98d 100644
  	mvebu_mbus_add_window("nand", KIRKWOOD_NAND_MEM_PHYS_BASE,
  	mvebu_mbus_add_window("nand", KIRKWOOD_NAND_MEM_PHYS_BASE,
  			      KIRKWOOD_NAND_MEM_SIZE);
  			      KIRKWOOD_NAND_MEM_SIZE);
  	mvebu_mbus_add_window("sram", KIRKWOOD_SRAM_PHYS_BASE,
  	mvebu_mbus_add_window("sram", KIRKWOOD_SRAM_PHYS_BASE,
-diff --git a/arch/arm/mach-kirkwood/pcie.c b/arch/arm/mach-kirkwood/pcie.c
-index 7f43e6c..ddcb09f 100644
 --- a/arch/arm/mach-kirkwood/pcie.c
 --- a/arch/arm/mach-kirkwood/pcie.c
 +++ b/arch/arm/mach-kirkwood/pcie.c
 +++ b/arch/arm/mach-kirkwood/pcie.c
 @@ -12,6 +12,7 @@
 @@ -12,6 +12,7 @@
@@ -69,7 +66,7 @@ index 7f43e6c..ddcb09f 100644
  #include <video/vga.h>
  #include <video/vga.h>
  #include <asm/irq.h>
  #include <asm/irq.h>
  #include <asm/mach/pci.h>
  #include <asm/mach/pci.h>
-@@ -253,6 +254,27 @@ static void __init add_pcie_port(int index, void __iomem *base)
+@@ -253,6 +254,27 @@ static void __init add_pcie_port(int ind
  
  
  void __init kirkwood_pcie_init(unsigned int portmask)
  void __init kirkwood_pcie_init(unsigned int portmask)
  {
  {
@@ -97,6 +94,3 @@ index 7f43e6c..ddcb09f 100644
  	vga_base = KIRKWOOD_PCIE_MEM_PHYS_BASE;
  	vga_base = KIRKWOOD_PCIE_MEM_PHYS_BASE;
  
  
  	if (portmask & KW_PCIE0)
  	if (portmask & KW_PCIE0)
--- 
-1.8.4.rc1
-

+ 3 - 11
target/linux/kirkwood/patches-3.10/0011-arm-kirkwood-add-SoC-level-Device-Tree-data-for-PCIe.patch

@@ -1,6 +1,6 @@
-From 8725a4f93dcb242466990261dc2bd78599b0306a Mon Sep 17 00:00:00 2001
+From b2198f4cd8cffdfd5030a176a9ee4d4367526cac Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 27 Mar 2013 18:55:20 +0100
+Date: Wed, 15 May 2013 15:36:56 +0200
 Subject: [PATCH 11/29] arm: kirkwood: add SoC-level Device Tree data for PCIe
 Subject: [PATCH 11/29] arm: kirkwood: add SoC-level Device Tree data for PCIe
  interfaces
  interfaces
 
 
@@ -10,14 +10,13 @@ interfaces.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
 Tested-by: Andrew Lunn <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-6281.dtsi | 31 +++++++++++++++++++++++
  arch/arm/boot/dts/kirkwood-6281.dtsi | 31 +++++++++++++++++++++++
  arch/arm/boot/dts/kirkwood-6282.dtsi | 48 ++++++++++++++++++++++++++++++++++++
  arch/arm/boot/dts/kirkwood-6282.dtsi | 48 ++++++++++++++++++++++++++++++++++++
  arch/arm/boot/dts/kirkwood.dtsi      |  1 +
  arch/arm/boot/dts/kirkwood.dtsi      |  1 +
  3 files changed, 80 insertions(+)
  3 files changed, 80 insertions(+)
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-6281.dtsi b/arch/arm/boot/dts/kirkwood-6281.dtsi
-index d6c9d65..5137668 100644
 --- a/arch/arm/boot/dts/kirkwood-6281.dtsi
 --- a/arch/arm/boot/dts/kirkwood-6281.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-6281.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-6281.dtsi
 @@ -40,5 +40,36 @@
 @@ -40,5 +40,36 @@
@@ -57,8 +56,6 @@ index d6c9d65..5137668 100644
 +		};
 +		};
  	};
  	};
  };
  };
-diff --git a/arch/arm/boot/dts/kirkwood-6282.dtsi b/arch/arm/boot/dts/kirkwood-6282.dtsi
-index 23991e4..66a751a 100644
 --- a/arch/arm/boot/dts/kirkwood-6282.dtsi
 --- a/arch/arm/boot/dts/kirkwood-6282.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-6282.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-6282.dtsi
 @@ -65,5 +65,53 @@
 @@ -65,5 +65,53 @@
@@ -115,8 +112,6 @@ index 23991e4..66a751a 100644
 +		};
 +		};
  	};
  	};
  };
  };
-diff --git a/arch/arm/boot/dts/kirkwood.dtsi b/arch/arm/boot/dts/kirkwood.dtsi
-index fada7e6..7eef88f 100644
 --- a/arch/arm/boot/dts/kirkwood.dtsi
 --- a/arch/arm/boot/dts/kirkwood.dtsi
 +++ b/arch/arm/boot/dts/kirkwood.dtsi
 +++ b/arch/arm/boot/dts/kirkwood.dtsi
 @@ -19,6 +19,7 @@
 @@ -19,6 +19,7 @@
@@ -127,6 +122,3 @@ index fada7e6..7eef88f 100644
  		          0xf5000000 0xf5000000 0x0000400>;
  		          0xf5000000 0xf5000000 0x0000400>;
  		#address-cells = <1>;
  		#address-cells = <1>;
  		#size-cells = <1>;
  		#size-cells = <1>;
--- 
-1.8.4.rc1
-

+ 3 - 9
target/linux/kirkwood/patches-3.10/0012-arm-kirkwood-convert-Iomega-Iconnect-to-use-DT-for-t.patch

@@ -1,6 +1,6 @@
-From b7031bd802336c77a6b330f79b275ccbb55fdc96 Mon Sep 17 00:00:00 2001
+From cce41fad080eb7e5f3e3e27bbcc5730d624c5d4b Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 10 Apr 2013 21:22:13 +0200
+Date: Wed, 15 May 2013 15:36:57 +0200
 Subject: [PATCH 12/29] arm: kirkwood: convert Iomega Iconnect to use DT for
 Subject: [PATCH 12/29] arm: kirkwood: convert Iomega Iconnect to use DT for
  the PCIe interface
  the PCIe interface
 
 
@@ -9,13 +9,12 @@ of the legacy PCIe code, since it allows to describe the PCIe
 interfaces in the Device Tree.
 interfaces in the Device Tree.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-iconnect.dts | 8 ++++++++
  arch/arm/boot/dts/kirkwood-iconnect.dts | 8 ++++++++
  arch/arm/mach-kirkwood/board-iconnect.c | 8 --------
  arch/arm/mach-kirkwood/board-iconnect.c | 8 --------
  2 files changed, 8 insertions(+), 8 deletions(-)
  2 files changed, 8 insertions(+), 8 deletions(-)
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-iconnect.dts b/arch/arm/boot/dts/kirkwood-iconnect.dts
-index 12ccf74..e591d5d 100644
 --- a/arch/arm/boot/dts/kirkwood-iconnect.dts
 --- a/arch/arm/boot/dts/kirkwood-iconnect.dts
 +++ b/arch/arm/boot/dts/kirkwood-iconnect.dts
 +++ b/arch/arm/boot/dts/kirkwood-iconnect.dts
 @@ -109,6 +109,14 @@
 @@ -109,6 +109,14 @@
@@ -33,8 +32,6 @@ index 12ccf74..e591d5d 100644
  	};
  	};
  
  
  	gpio-leds {
  	gpio-leds {
-diff --git a/arch/arm/mach-kirkwood/board-iconnect.c b/arch/arm/mach-kirkwood/board-iconnect.c
-index c8ebde4..98b5ad1 100644
 --- a/arch/arm/mach-kirkwood/board-iconnect.c
 --- a/arch/arm/mach-kirkwood/board-iconnect.c
 +++ b/arch/arm/mach-kirkwood/board-iconnect.c
 +++ b/arch/arm/mach-kirkwood/board-iconnect.c
 @@ -22,11 +22,3 @@ void __init iconnect_init(void)
 @@ -22,11 +22,3 @@ void __init iconnect_init(void)
@@ -49,6 +46,3 @@ index c8ebde4..98b5ad1 100644
 -	return 0;
 -	return 0;
 -}
 -}
 -subsys_initcall(iconnect_pci_init);
 -subsys_initcall(iconnect_pci_init);
--- 
-1.8.4.rc1
-

+ 3 - 9
target/linux/kirkwood/patches-3.10/0013-arm-kirkwood-convert-MPL-CEC4-to-use-DT-for-the-PCIe.patch

@@ -1,6 +1,6 @@
-From b3e3851d461779cd94a2efe4484f01175fcb460e Mon Sep 17 00:00:00 2001
+From b12363b0a393e2751395af002bf9ab192c1140c1 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 10 Apr 2013 23:05:32 +0200
+Date: Wed, 15 May 2013 15:36:58 +0200
 Subject: [PATCH 13/29] arm: kirkwood: convert MPL CEC4 to use DT for the PCIe
 Subject: [PATCH 13/29] arm: kirkwood: convert MPL CEC4 to use DT for the PCIe
  interface
  interface
 
 
@@ -9,13 +9,12 @@ of the legacy PCIe code, since it allows to describe the PCIe
 interfaces in the Device Tree.
 interfaces in the Device Tree.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-mplcec4.dts | 8 ++++++++
  arch/arm/boot/dts/kirkwood-mplcec4.dts | 8 ++++++++
  arch/arm/mach-kirkwood/board-mplcec4.c | 1 -
  arch/arm/mach-kirkwood/board-mplcec4.c | 1 -
  2 files changed, 8 insertions(+), 1 deletion(-)
  2 files changed, 8 insertions(+), 1 deletion(-)
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-mplcec4.dts b/arch/arm/boot/dts/kirkwood-mplcec4.dts
-index 7588241..90501cf 100644
 --- a/arch/arm/boot/dts/kirkwood-mplcec4.dts
 --- a/arch/arm/boot/dts/kirkwood-mplcec4.dts
 +++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts
 +++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts
 @@ -139,6 +139,14 @@
 @@ -139,6 +139,14 @@
@@ -33,8 +32,6 @@ index 7588241..90501cf 100644
  	};
  	};
  
  
  	gpio-leds {
  	gpio-leds {
-diff --git a/arch/arm/mach-kirkwood/board-mplcec4.c b/arch/arm/mach-kirkwood/board-mplcec4.c
-index 7d6dc66..938712e 100644
 --- a/arch/arm/mach-kirkwood/board-mplcec4.c
 --- a/arch/arm/mach-kirkwood/board-mplcec4.c
 +++ b/arch/arm/mach-kirkwood/board-mplcec4.c
 +++ b/arch/arm/mach-kirkwood/board-mplcec4.c
 @@ -29,7 +29,6 @@ void __init mplcec4_init(void)
 @@ -29,7 +29,6 @@ void __init mplcec4_init(void)
@@ -45,6 +42,3 @@ index 7d6dc66..938712e 100644
  }
  }
  
  
  
  
--- 
-1.8.4.rc1
-

+ 4 - 15
target/linux/kirkwood/patches-3.10/0014-arm-kirkwood-convert-ZyXEL-NSA310-to-use-DT-for-the-.patch

@@ -1,6 +1,6 @@
-From 86310ed36ec224b248b5169371f44250ce8c2275 Mon Sep 17 00:00:00 2001
+From f56884bb322085c735b027b64fff4d7294a464ee Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 10 Apr 2013 23:07:27 +0200
+Date: Wed, 15 May 2013 15:36:59 +0200
 Subject: [PATCH 14/29] arm: kirkwood: convert ZyXEL NSA310 to use DT for the
 Subject: [PATCH 14/29] arm: kirkwood: convert ZyXEL NSA310 to use DT for the
  PCIe interface
  PCIe interface
 
 
@@ -13,6 +13,7 @@ the Device Tree only, we remove the board-nsa310.c file and the
 related Kconfig/Makefile bits.
 related Kconfig/Makefile bits.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-nsa310.dts |  8 ++++++++
  arch/arm/boot/dts/kirkwood-nsa310.dts |  8 ++++++++
  arch/arm/mach-kirkwood/Kconfig        |  8 --------
  arch/arm/mach-kirkwood/Kconfig        |  8 --------
@@ -21,8 +22,6 @@ Signed-off-by: Thomas Petazzoni <[email protected]>
  4 files changed, 8 insertions(+), 34 deletions(-)
  4 files changed, 8 insertions(+), 34 deletions(-)
  delete mode 100644 arch/arm/mach-kirkwood/board-nsa310.c
  delete mode 100644 arch/arm/mach-kirkwood/board-nsa310.c
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-nsa310.dts b/arch/arm/boot/dts/kirkwood-nsa310.dts
-index a7412b9..9ddf218 100644
 --- a/arch/arm/boot/dts/kirkwood-nsa310.dts
 --- a/arch/arm/boot/dts/kirkwood-nsa310.dts
 +++ b/arch/arm/boot/dts/kirkwood-nsa310.dts
 +++ b/arch/arm/boot/dts/kirkwood-nsa310.dts
 @@ -176,6 +176,14 @@
 @@ -176,6 +176,14 @@
@@ -40,8 +39,6 @@ index a7412b9..9ddf218 100644
  	};
  	};
  
  
  	gpio_keys {
  	gpio_keys {
-diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
-index 7509a89..267ca95 100644
 --- a/arch/arm/mach-kirkwood/Kconfig
 --- a/arch/arm/mach-kirkwood/Kconfig
 +++ b/arch/arm/mach-kirkwood/Kconfig
 +++ b/arch/arm/mach-kirkwood/Kconfig
 @@ -272,14 +272,6 @@ config MACH_NETSPACE_V2_DT
 @@ -272,14 +272,6 @@ config MACH_NETSPACE_V2_DT
@@ -59,11 +56,9 @@ index 7509a89..267ca95 100644
  config MACH_OPENBLOCKS_A6_DT
  config MACH_OPENBLOCKS_A6_DT
  	bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
  	bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
  	select ARCH_KIRKWOOD_DT
  	select ARCH_KIRKWOOD_DT
-diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
-index e1f3735..794366e 100644
 --- a/arch/arm/mach-kirkwood/Makefile
 --- a/arch/arm/mach-kirkwood/Makefile
 +++ b/arch/arm/mach-kirkwood/Makefile
 +++ b/arch/arm/mach-kirkwood/Makefile
-@@ -37,7 +37,6 @@ obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT)	+= board-ns2.o
+@@ -37,7 +37,6 @@ obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT)	+
  obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT)	+= board-ns2.o
  obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT)	+= board-ns2.o
  obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT)	+= board-ns2.o
  obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT)	+= board-ns2.o
  obj-$(CONFIG_MACH_NETSPACE_V2_DT)	+= board-ns2.o
  obj-$(CONFIG_MACH_NETSPACE_V2_DT)	+= board-ns2.o
@@ -71,9 +66,6 @@ index e1f3735..794366e 100644
  obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT)	+= board-openblocks_a6.o
  obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT)	+= board-openblocks_a6.o
  obj-$(CONFIG_MACH_READYNAS_DT)		+= board-readynas.o
  obj-$(CONFIG_MACH_READYNAS_DT)		+= board-readynas.o
  obj-$(CONFIG_MACH_TOPKICK_DT)		+= board-usi_topkick.o
  obj-$(CONFIG_MACH_TOPKICK_DT)		+= board-usi_topkick.o
-diff --git a/arch/arm/mach-kirkwood/board-nsa310.c b/arch/arm/mach-kirkwood/board-nsa310.c
-deleted file mode 100644
-index 55ade93..0000000
 --- a/arch/arm/mach-kirkwood/board-nsa310.c
 --- a/arch/arm/mach-kirkwood/board-nsa310.c
 +++ /dev/null
 +++ /dev/null
 @@ -1,25 +0,0 @@
 @@ -1,25 +0,0 @@
@@ -102,6 +94,3 @@ index 55ade93..0000000
 -}
 -}
 -
 -
 -subsys_initcall(nsa310_pci_init);
 -subsys_initcall(nsa310_pci_init);
--- 
-1.8.4.rc1
-

+ 3 - 11
target/linux/kirkwood/patches-3.10/0015-arm-kirkwood-convert-QNAP-TS219-to-use-DT-for-the-PC.patch

@@ -1,6 +1,6 @@
-From 0f75608615894c9707e40c0dd3383193fb6c09f6 Mon Sep 17 00:00:00 2001
+From c184303509ea2ee9d519db5dbfb2063efca098f7 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Sat, 13 Apr 2013 13:03:56 +0200
+Date: Wed, 15 May 2013 15:37:00 +0200
 Subject: [PATCH 15/29] arm: kirkwood: convert QNAP TS219 to use DT for the
 Subject: [PATCH 15/29] arm: kirkwood: convert QNAP TS219 to use DT for the
  PCIe interface
  PCIe interface
 
 
@@ -10,14 +10,13 @@ interfaces in the Device Tree.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Andrew Lunn <[email protected]>
 Signed-off-by: Andrew Lunn <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-ts219-6281.dts | 3 ++-
  arch/arm/boot/dts/kirkwood-ts219-6281.dts | 3 ++-
  arch/arm/boot/dts/kirkwood-ts219-6282.dts | 3 ++-
  arch/arm/boot/dts/kirkwood-ts219-6282.dts | 3 ++-
  arch/arm/boot/dts/kirkwood-ts219.dtsi     | 9 +++++++--
  arch/arm/boot/dts/kirkwood-ts219.dtsi     | 9 +++++++--
  3 files changed, 11 insertions(+), 4 deletions(-)
  3 files changed, 11 insertions(+), 4 deletions(-)
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-ts219-6281.dts b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
-index 8295c83..42648ab 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 --- a/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 @@ -1,7 +1,8 @@
 @@ -1,7 +1,8 @@
@@ -30,8 +29,6 @@ index 8295c83..42648ab 100644
  
  
  / {
  / {
  	ocp@f1000000 {
  	ocp@f1000000 {
-diff --git a/arch/arm/boot/dts/kirkwood-ts219-6282.dts b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
-index df3f95d..95ceeb9 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 --- a/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 @@ -1,7 +1,8 @@
 @@ -1,7 +1,8 @@
@@ -44,8 +41,6 @@ index df3f95d..95ceeb9 100644
  
  
  / {
  / {
  	ocp@f1000000 {
  	ocp@f1000000 {
-diff --git a/arch/arm/boot/dts/kirkwood-ts219.dtsi b/arch/arm/boot/dts/kirkwood-ts219.dtsi
-index 64ea27c..7c022fd 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
 --- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
 @@ -1,5 +1,3 @@
 @@ -1,5 +1,3 @@
@@ -67,6 +62,3 @@ index 64ea27c..7c022fd 100644
 +		};
 +		};
  	};
  	};
  };
  };
--- 
-1.8.4.rc1
-

+ 7 - 34
target/linux/kirkwood/patches-3.10/0016-arm-kirkwood-convert-db-88f6281-db-88f6282-to-the-De.patch

@@ -1,6 +1,6 @@
-From 32f9dd19f7c859205440a8734cb6ab1295c78015 Mon Sep 17 00:00:00 2001
+From 8ad6aa146af6af98bd8e308eb7746a5f4cf267d8 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 From: Thomas Petazzoni <[email protected]>
-Date: Wed, 27 Mar 2013 18:56:40 +0100
+Date: Wed, 15 May 2013 15:37:01 +0200
 Subject: [PATCH 16/29] arm: kirkwood: convert db-88f6281/db-88f6282 to the
 Subject: [PATCH 16/29] arm: kirkwood: convert db-88f6281/db-88f6282 to the
  Device Tree
  Device Tree
 
 
@@ -19,6 +19,7 @@ done for the QNAP TS219 Kirkwood platform.
 We have kept one single Kconfig option, just like it was before.
 We have kept one single Kconfig option, just like it was before.
 
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
 Signed-off-by: Thomas Petazzoni <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/Makefile                  |   2 +
  arch/arm/boot/dts/Makefile                  |   2 +
  arch/arm/boot/dts/kirkwood-db-88f6281.dts   |  30 ++++++++
  arch/arm/boot/dts/kirkwood-db-88f6281.dts   |  30 ++++++++
@@ -37,11 +38,9 @@ Signed-off-by: Thomas Petazzoni <[email protected]>
  create mode 100644 arch/arm/mach-kirkwood/board-db88f628x-bp.c
  create mode 100644 arch/arm/mach-kirkwood/board-db88f628x-bp.c
  delete mode 100644 arch/arm/mach-kirkwood/db88f6281-bp-setup.c
  delete mode 100644 arch/arm/mach-kirkwood/db88f6281-bp-setup.c
 
 
-diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
-index f0895c5..3844ef2 100644
 --- a/arch/arm/boot/dts/Makefile
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
-@@ -64,6 +64,8 @@ dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
+@@ -64,6 +64,8 @@ dtb-$(CONFIG_ARCH_INTEGRATOR) += integra
  	integratorcp.dtb
  	integratorcp.dtb
  dtb-$(CONFIG_ARCH_LPC32XX) += ea3250.dtb phy3250.dtb
  dtb-$(CONFIG_ARCH_LPC32XX) += ea3250.dtb phy3250.dtb
  dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
  dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
@@ -50,9 +49,6 @@ index f0895c5..3844ef2 100644
  	kirkwood-dns320.dtb \
  	kirkwood-dns320.dtb \
  	kirkwood-dns325.dtb \
  	kirkwood-dns325.dtb \
  	kirkwood-dockstar.dtb \
  	kirkwood-dockstar.dtb \
-diff --git a/arch/arm/boot/dts/kirkwood-db-88f6281.dts b/arch/arm/boot/dts/kirkwood-db-88f6281.dts
-new file mode 100644
-index 0000000..9d777ed
 --- /dev/null
 --- /dev/null
 +++ b/arch/arm/boot/dts/kirkwood-db-88f6281.dts
 +++ b/arch/arm/boot/dts/kirkwood-db-88f6281.dts
 @@ -0,0 +1,30 @@
 @@ -0,0 +1,30 @@
@@ -86,9 +82,6 @@ index 0000000..9d777ed
 +		};
 +		};
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-db-88f6282.dts b/arch/arm/boot/dts/kirkwood-db-88f6282.dts
-new file mode 100644
-index 0000000..f4c8528
 --- /dev/null
 --- /dev/null
 +++ b/arch/arm/boot/dts/kirkwood-db-88f6282.dts
 +++ b/arch/arm/boot/dts/kirkwood-db-88f6282.dts
 @@ -0,0 +1,34 @@
 @@ -0,0 +1,34 @@
@@ -126,9 +119,6 @@ index 0000000..f4c8528
 +		};
 +		};
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-db.dtsi b/arch/arm/boot/dts/kirkwood-db.dtsi
-new file mode 100644
-index 0000000..c87cfb8
 --- /dev/null
 --- /dev/null
 +++ b/arch/arm/boot/dts/kirkwood-db.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-db.dtsi
 @@ -0,0 +1,89 @@
 @@ -0,0 +1,89 @@
@@ -221,8 +211,6 @@ index 0000000..c87cfb8
 +		};
 +		};
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
-index 267ca95..b56bd3d 100644
 --- a/arch/arm/mach-kirkwood/Kconfig
 --- a/arch/arm/mach-kirkwood/Kconfig
 +++ b/arch/arm/mach-kirkwood/Kconfig
 +++ b/arch/arm/mach-kirkwood/Kconfig
 @@ -8,12 +8,6 @@ config MACH_D2NET_V2
 @@ -8,12 +8,6 @@ config MACH_D2NET_V2
@@ -252,8 +240,6 @@ index 267ca95..b56bd3d 100644
  config MACH_DLINK_KIRKWOOD_DT
  config MACH_DLINK_KIRKWOOD_DT
  	bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
  	bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
  	select ARCH_KIRKWOOD_DT
  	select ARCH_KIRKWOOD_DT
-diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
-index 794366e..2fdc3a7 100644
 --- a/arch/arm/mach-kirkwood/Makefile
 --- a/arch/arm/mach-kirkwood/Makefile
 +++ b/arch/arm/mach-kirkwood/Makefile
 +++ b/arch/arm/mach-kirkwood/Makefile
 @@ -1,7 +1,6 @@
 @@ -1,7 +1,6 @@
@@ -264,7 +250,7 @@ index 794366e..2fdc3a7 100644
  obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
  obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
  obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
  obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
  obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
  obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
-@@ -21,6 +20,7 @@ obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup.o tsx1x-common.o
+@@ -21,6 +20,7 @@ obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup
  
  
  obj-$(CONFIG_ARCH_KIRKWOOD_DT)		+= board-dt.o
  obj-$(CONFIG_ARCH_KIRKWOOD_DT)		+= board-dt.o
  obj-$(CONFIG_MACH_CLOUDBOX_DT)		+= board-ns2.o
  obj-$(CONFIG_MACH_CLOUDBOX_DT)		+= board-ns2.o
@@ -272,9 +258,6 @@ index 794366e..2fdc3a7 100644
  obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT)	+= board-dnskw.o
  obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT)	+= board-dnskw.o
  obj-$(CONFIG_MACH_DOCKSTAR_DT)		+= board-dockstar.o
  obj-$(CONFIG_MACH_DOCKSTAR_DT)		+= board-dockstar.o
  obj-$(CONFIG_MACH_DREAMPLUG_DT)		+= board-dreamplug.o
  obj-$(CONFIG_MACH_DREAMPLUG_DT)		+= board-dreamplug.o
-diff --git a/arch/arm/mach-kirkwood/board-db88f628x-bp.c b/arch/arm/mach-kirkwood/board-db88f628x-bp.c
-new file mode 100644
-index 0000000..2f574bc
 --- /dev/null
 --- /dev/null
 +++ b/arch/arm/mach-kirkwood/board-db88f628x-bp.c
 +++ b/arch/arm/mach-kirkwood/board-db88f628x-bp.c
 @@ -0,0 +1,24 @@
 @@ -0,0 +1,24 @@
@@ -302,11 +285,9 @@ index 0000000..2f574bc
 +{
 +{
 +	kirkwood_ge00_init(&db88f628x_ge00_data);
 +	kirkwood_ge00_init(&db88f628x_ge00_data);
 +}
 +}
-diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
-index e9647b8..f5aed1f 100644
 --- a/arch/arm/mach-kirkwood/board-dt.c
 --- a/arch/arm/mach-kirkwood/board-dt.c
 +++ b/arch/arm/mach-kirkwood/board-dt.c
 +++ b/arch/arm/mach-kirkwood/board-dt.c
-@@ -147,6 +147,10 @@ static void __init kirkwood_dt_init(void)
+@@ -147,6 +147,10 @@ static void __init kirkwood_dt_init(void
  	    of_machine_is_compatible("lacie,netspace_v2"))
  	    of_machine_is_compatible("lacie,netspace_v2"))
  		ns2_init();
  		ns2_init();
  
  
@@ -317,7 +298,7 @@ index e9647b8..f5aed1f 100644
  	if (of_machine_is_compatible("mpl,cec4"))
  	if (of_machine_is_compatible("mpl,cec4"))
  		mplcec4_init();
  		mplcec4_init();
  
  
-@@ -181,6 +185,8 @@ static const char * const kirkwood_dt_board_compat[] = {
+@@ -181,6 +185,8 @@ static const char * const kirkwood_dt_bo
  	"lacie,netspace_max_v2",
  	"lacie,netspace_max_v2",
  	"lacie,netspace_mini_v2",
  	"lacie,netspace_mini_v2",
  	"lacie,netspace_v2",
  	"lacie,netspace_v2",
@@ -326,8 +307,6 @@ index e9647b8..f5aed1f 100644
  	"mpl,cec4",
  	"mpl,cec4",
  	"netgear,readynas-duo-v2",
  	"netgear,readynas-duo-v2",
  	"plathome,openblocks-a6",
  	"plathome,openblocks-a6",
-diff --git a/arch/arm/mach-kirkwood/common.h b/arch/arm/mach-kirkwood/common.h
-index 21da3b1..cbbc0b8 100644
 --- a/arch/arm/mach-kirkwood/common.h
 --- a/arch/arm/mach-kirkwood/common.h
 +++ b/arch/arm/mach-kirkwood/common.h
 +++ b/arch/arm/mach-kirkwood/common.h
 @@ -119,6 +119,12 @@ void km_kirkwood_init(void);
 @@ -119,6 +119,12 @@ void km_kirkwood_init(void);
@@ -343,9 +322,6 @@ index 21da3b1..cbbc0b8 100644
  #ifdef CONFIG_MACH_MPLCEC4_DT
  #ifdef CONFIG_MACH_MPLCEC4_DT
  void mplcec4_init(void);
  void mplcec4_init(void);
  #else
  #else
-diff --git a/arch/arm/mach-kirkwood/db88f6281-bp-setup.c b/arch/arm/mach-kirkwood/db88f6281-bp-setup.c
-deleted file mode 100644
-index 5a369fe..0000000
 --- a/arch/arm/mach-kirkwood/db88f6281-bp-setup.c
 --- a/arch/arm/mach-kirkwood/db88f6281-bp-setup.c
 +++ /dev/null
 +++ /dev/null
 @@ -1,108 +0,0 @@
 @@ -1,108 +0,0 @@
@@ -457,6 +433,3 @@ index 5a369fe..0000000
 -	.init_time	= kirkwood_timer_init,
 -	.init_time	= kirkwood_timer_init,
 -	.restart	= kirkwood_restart,
 -	.restart	= kirkwood_restart,
 -MACHINE_END
 -MACHINE_END
--- 
-1.8.4.rc1
-

+ 0 - 37
target/linux/kirkwood/patches-3.10/0017-arm-kirkwood-update-defconfig-with-PCIe-driver-and-b.patch

@@ -1,37 +0,0 @@
-From f53bb70209838ffea1824ba7c4c7935cf200233f Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <[email protected]>
-Date: Thu, 11 Apr 2013 00:18:29 +0200
-Subject: [PATCH 17/29] arm: kirkwood: update defconfig with PCIe driver and
- board updates
-
-This commit enables the mvebu PCIe driver in kirkwood_defconfig and
-updates various options related to Kirkwood boards.
-
-Signed-off-by: Thomas Petazzoni <[email protected]>
----
- arch/arm/configs/kirkwood_defconfig | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/arch/arm/configs/kirkwood_defconfig b/arch/arm/configs/kirkwood_defconfig
-index a1d8252..452adec 100644
---- a/arch/arm/configs/kirkwood_defconfig
-+++ b/arch/arm/configs/kirkwood_defconfig
-@@ -31,6 +31,7 @@ CONFIG_MACH_T5325=y
- CONFIG_MACH_TS219=y
- CONFIG_MACH_TS41X=y
- CONFIG_MACH_CLOUDBOX_DT=y
-+CONFIG_MACH_DB88F628X_BP_DT=y
- CONFIG_MACH_DLINK_KIRKWOOD_DT=y
- CONFIG_MACH_DOCKSTAR_DT=y
- CONFIG_MACH_DREAMPLUG_DT=y
-@@ -53,6 +54,7 @@ CONFIG_MACH_READYNAS_DT=y
- CONFIG_MACH_TOPKICK_DT=y
- CONFIG_MACH_TS219_DT=y
- # CONFIG_CPU_FEROCEON_OLD_ID is not set
-+CONFIG_PCI_MVEBU=y
- CONFIG_PREEMPT=y
- CONFIG_AEABI=y
- # CONFIG_OABI_COMPAT is not set
--- 
-1.8.4.rc1
-

+ 97 - 0
target/linux/kirkwood/patches-3.10/0017-pci-mvebu-no-longer-fake-the-slot-location-of-downst.patch

@@ -0,0 +1,97 @@
+From 5db3b7ccb319679ac9c5791112c7eb42c25331e3 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <[email protected]>
+Date: Thu, 23 May 2013 16:32:51 +0200
+Subject: [PATCH 17/29] pci: mvebu: no longer fake the slot location of
+ downstream devices
+
+By default, the Marvell hardware, for each PCIe interface, exhibits
+the following devices:
+
+ * On slot 0, a "Marvell Memory controller", identical on all PCIe
+   interfaces, and which isn't useful when the Marvell SoC is the PCIe
+   root complex (i.e, the normal case when we run Linux on the Marvell
+   SoC).
+
+ * On slot 1, the real PCIe card connected into the PCIe slot of the
+   board.
+
+So, what the Marvell PCIe driver was doing in its PCI-to-PCI bridge
+emulation is that when the Linux PCI core was trying to access the
+device in slot 0, we were in fact forwarding the configuration
+transaction to the device in slot 1. For all other slots, we were
+telling the Linux PCI core that there was no device connected.
+
+However, new versions of bootloaders from Marvell change the default
+PCIe configuration, and make the real device appear in slot 0, and the
+"Marvell Memory controller" in slot 1.
+
+Therefore, this commit modifies the Marvell PCIe driver to adjust the
+PCIe hardware configuration to make sure that this behavior (real
+device in slot 0, "Marvell Memory controller" in slot 1) is the one
+we'll see regardless of what the bootloader has done. It allows to
+remove the little hack that was forwarding configuration transactions
+on slot 0 to slot 1, which is nice.
+
+Signed-off-by: Thomas Petazzoni <[email protected]>
+Acked-by: Bjorn Helgaas <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
+---
+ drivers/pci/host/pci-mvebu.c | 19 +++++++++++++++----
+ 1 file changed, 15 insertions(+), 4 deletions(-)
+
+--- a/drivers/pci/host/pci-mvebu.c
++++ b/drivers/pci/host/pci-mvebu.c
+@@ -51,6 +51,7 @@
+ #define  PCIE_CTRL_X1_MODE		0x0001
+ #define PCIE_STAT_OFF		0x1a04
+ #define  PCIE_STAT_BUS                  0xff00
++#define  PCIE_STAT_DEV                  0x1f0000
+ #define  PCIE_STAT_LINK_DOWN		BIT(0)
+ #define PCIE_DEBUG_CTRL         0x1a60
+ #define  PCIE_DEBUG_SOFT_RESET		BIT(20)
+@@ -148,6 +149,16 @@ static void mvebu_pcie_set_local_bus_nr(
+ 	writel(stat, port->base + PCIE_STAT_OFF);
+ }
+ 
++static void mvebu_pcie_set_local_dev_nr(struct mvebu_pcie_port *port, int nr)
++{
++	u32 stat;
++
++	stat = readl(port->base + PCIE_STAT_OFF);
++	stat &= ~PCIE_STAT_DEV;
++	stat |= nr << 16;
++	writel(stat, port->base + PCIE_STAT_OFF);
++}
++
+ /*
+  * Setup PCIE BARs and Address Decode Wins:
+  * BAR[0,2] -> disabled, BAR[1] -> covers all DRAM banks
+@@ -572,8 +583,7 @@ static int mvebu_pcie_wr_conf(struct pci
+ 
+ 	/* Access the real PCIe interface */
+ 	spin_lock_irqsave(&port->conf_lock, flags);
+-	ret = mvebu_pcie_hw_wr_conf(port, bus,
+-				    PCI_DEVFN(1, PCI_FUNC(devfn)),
++	ret = mvebu_pcie_hw_wr_conf(port, bus, devfn,
+ 				    where, size, val);
+ 	spin_unlock_irqrestore(&port->conf_lock, flags);
+ 
+@@ -606,8 +616,7 @@ static int mvebu_pcie_rd_conf(struct pci
+ 
+ 	/* Access the real PCIe interface */
+ 	spin_lock_irqsave(&port->conf_lock, flags);
+-	ret = mvebu_pcie_hw_rd_conf(port, bus,
+-				    PCI_DEVFN(1, PCI_FUNC(devfn)),
++	ret = mvebu_pcie_hw_rd_conf(port, bus, devfn,
+ 				    where, size, val);
+ 	spin_unlock_irqrestore(&port->conf_lock, flags);
+ 
+@@ -817,6 +826,8 @@ static int __init mvebu_pcie_probe(struc
+ 			continue;
+ 		}
+ 
++		mvebu_pcie_set_local_dev_nr(port, 1);
++
+ 		if (mvebu_pcie_link_up(port)) {
+ 			port->haslink = 1;
+ 			dev_info(&pdev->dev, "PCIe%d.%d: link up\n",

+ 97 - 0
target/linux/kirkwood/patches-3.10/0018-pci-mvebu-allow-the-enumeration-of-devices-beyond-ph.patch

@@ -0,0 +1,97 @@
+From ce12bfd48e93b98717a258b8181aed0e19933e1e Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <[email protected]>
+Date: Thu, 23 May 2013 16:32:52 +0200
+Subject: [PATCH 18/29] pci: mvebu: allow the enumeration of devices beyond
+ physical bridges
+
+Until now, the Marvell PCIe driver was only allowing the enumeration
+of the devices in the secondary bus of the emulated PCI-to-PCI
+bridge. This works fine when a PCIe device is directly connected into
+a PCIe slot of the Marvell board.
+
+However, when the device connected in the PCIe slot is a physical PCIe
+bridge, beyond which a real PCIe device is connected, it no longer
+worked, as the driver was preventing the Linux PCI core from seeing
+such devices.
+
+This commit fixes that by ensuring that configuration transactions on
+subordinate busses are properly forwarded on the right PCIe interface.
+
+Thanks to this patch, a PCIe card beyond a PCIe bridge, itself beyond
+the emulated PCI-to-PCI bridge is properly detected, with the
+following layout:
+
+-[0000:00]-+-01.0-[01]----00.0
+           +-09.0-[02-07]----00.0-[03-07]--+-01.0-[04]--
+           |                               +-05.0-[05]--
+           |                               +-07.0-[06]--
+           |                               \-09.0-[07]----00.0
+           \-0a.0-[08]----00.0
+
+Where the PCIe interface that sits beyond the emulated PCI-to-PCI
+bridge at 09.0 allows to access the secondary bus 02, on which there
+is a PCIe bridge that allows to access the 3 to 7 busses, that are
+subordinates to this bridge. And on one of this bus (bus 7), there is
+one real PCIe device connected.
+
+Signed-off-by: Thomas Petazzoni <[email protected]>
+Acked-by: Bjorn Helgaas <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
+---
+ drivers/pci/host/pci-mvebu.c | 31 ++++++++++++++++++++++++++++---
+ 1 file changed, 28 insertions(+), 3 deletions(-)
+
+--- a/drivers/pci/host/pci-mvebu.c
++++ b/drivers/pci/host/pci-mvebu.c
+@@ -554,7 +554,8 @@ mvebu_pcie_find_port(struct mvebu_pcie *
+ 		if (bus->number == 0 && port->devfn == devfn)
+ 			return port;
+ 		if (bus->number != 0 &&
+-		    port->bridge.secondary_bus == bus->number)
++		    bus->number >= port->bridge.secondary_bus &&
++		    bus->number <= port->bridge.subordinate_bus)
+ 			return port;
+ 	}
+ 
+@@ -578,7 +579,18 @@ static int mvebu_pcie_wr_conf(struct pci
+ 	if (bus->number == 0)
+ 		return mvebu_sw_pci_bridge_write(port, where, size, val);
+ 
+-	if (!port->haslink || PCI_SLOT(devfn) != 0)
++	if (!port->haslink)
++		return PCIBIOS_DEVICE_NOT_FOUND;
++
++	/*
++	 * On the secondary bus, we don't want to expose any other
++	 * device than the device physically connected in the PCIe
++	 * slot, visible in slot 0. In slot 1, there's a special
++	 * Marvell device that only makes sense when the Armada is
++	 * used as a PCIe endpoint.
++	 */
++	if (bus->number == port->bridge.secondary_bus &&
++	    PCI_SLOT(devfn) != 0)
+ 		return PCIBIOS_DEVICE_NOT_FOUND;
+ 
+ 	/* Access the real PCIe interface */
+@@ -609,7 +621,20 @@ static int mvebu_pcie_rd_conf(struct pci
+ 	if (bus->number == 0)
+ 		return mvebu_sw_pci_bridge_read(port, where, size, val);
+ 
+-	if (!port->haslink || PCI_SLOT(devfn) != 0) {
++	if (!port->haslink) {
++		*val = 0xffffffff;
++		return PCIBIOS_DEVICE_NOT_FOUND;
++	}
++
++	/*
++	 * On the secondary bus, we don't want to expose any other
++	 * device than the device physically connected in the PCIe
++	 * slot, visible in slot 0. In slot 1, there's a special
++	 * Marvell device that only makes sense when the Armada is
++	 * used as a PCIe endpoint.
++	 */
++	if (bus->number == port->bridge.secondary_bus &&
++	    PCI_SLOT(devfn) != 0) {
+ 		*val = 0xffffffff;
+ 		return PCIBIOS_DEVICE_NOT_FOUND;
+ 	}

+ 87 - 0
target/linux/kirkwood/patches-3.10/0019-pci-mvebu-fix-the-emulation-of-the-status-register.patch

@@ -0,0 +1,87 @@
+From 370c8181fd848948aeae371bbc1124dc0dead22b Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <[email protected]>
+Date: Thu, 23 May 2013 16:32:53 +0200
+Subject: [PATCH 19/29] pci: mvebu: fix the emulation of the status register
+
+The status register of the PCI configuration space of PCI-to-PCI
+bridges contain some read-only bits, and so write-1-to-clear bits. So,
+the Linux PCI core sometimes writes 0xffff to this status register,
+and in the current PCI-to-PCI bridge emulation code of the Marvell
+driver, we do take all those 1s being written. Even the read-only bits
+are being overwritten.
+
+For now, all the read-only bits should be emulated to have the zero
+value.
+
+The other bits, that are write-1-to-clear bits are used to report
+various kind of errors, and are never set by the emulated bridge, so
+there is no need to support this write-1-to-clear bits mechanism.
+
+As a conclusion, the easiest solution is to simply emulate this status
+register by returning zero when read, and ignore the writes to it.
+
+This has two visible effects:
+
+ * The devsel is no longer 'unknown' in, i.e
+
+   Flags: bus master, 66MHz, user-definable features, ?? devsel, latency 0
+
+   becomes:
+
+   Flags: bus master, 66MHz, user-definable features, fast devsel, latency 0
+
+   in lspci -v.
+
+   This was caused by a value of 11b being read for devsel, which is
+   an invalid value. This 11b value being read was due to a previous
+   write of 0xffff into the status register.
+
+ * The capability list is no longer broken, because we indicate to the
+   Linux PCI core that we don't have a Capabilities Pointer in the PCI
+   configuration space of this bridge. The following message is
+   therefore no longer visible in lspci -v:
+
+   Capabilities: [fc] <chain broken>
+
+Signed-off-by: Thomas Petazzoni <[email protected]>
+Acked-by: Bjorn Helgaas <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
+---
+ drivers/pci/host/pci-mvebu.c | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+--- a/drivers/pci/host/pci-mvebu.c
++++ b/drivers/pci/host/pci-mvebu.c
+@@ -69,7 +69,6 @@ struct mvebu_sw_pci_bridge {
+ 	u16 vendor;
+ 	u16 device;
+ 	u16 command;
+-	u16 status;
+ 	u16 class;
+ 	u8 interface;
+ 	u8 revision;
+@@ -359,7 +358,6 @@ static void mvebu_sw_pci_bridge_init(str
+ 
+ 	memset(bridge, 0, sizeof(struct mvebu_sw_pci_bridge));
+ 
+-	bridge->status = PCI_STATUS_CAP_LIST;
+ 	bridge->class = PCI_CLASS_BRIDGE_PCI;
+ 	bridge->vendor = PCI_VENDOR_ID_MARVELL;
+ 	bridge->device = MARVELL_EMULATED_PCI_PCI_BRIDGE_ID;
+@@ -386,7 +384,7 @@ static int mvebu_sw_pci_bridge_read(stru
+ 		break;
+ 
+ 	case PCI_COMMAND:
+-		*value = bridge->status << 16 | bridge->command;
++		*value = bridge->command;
+ 		break;
+ 
+ 	case PCI_CLASS_REVISION:
+@@ -479,7 +477,6 @@ static int mvebu_sw_pci_bridge_write(str
+ 	switch (where & ~3) {
+ 	case PCI_COMMAND:
+ 		bridge->command = value & 0xffff;
+-		bridge->status = value >> 16;
+ 		break;
+ 
+ 	case PCI_BASE_ADDRESS_0 ... PCI_BASE_ADDRESS_1:

+ 5 - 9
target/linux/kirkwood/patches-3.10/0018-net-mv643xx_eth-use-phy_disconnect-instead-of-phy_de.patch → target/linux/kirkwood/patches-3.10/0020-net-mv643xx_eth-use-phy_disconnect-instead-of-phy_de.patch

@@ -1,7 +1,7 @@
-From 40a635881d8fedff7242598cd3bf892e4733f7dc Mon Sep 17 00:00:00 2001
+From 799e69d38053e344267360a583676eafe2ed8648 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:43 +0200
-Subject: [PATCH 18/29] net: mv643xx_eth: use phy_disconnect instead of
+Date: Wed, 29 May 2013 09:32:43 +0000
+Subject: [PATCH 20/29] net: mv643xx_eth: use phy_disconnect instead of
  phy_detach
  phy_detach
 
 
 Using a separated mdio bus driver with mvmdio, phy_detach on network device
 Using a separated mdio bus driver with mvmdio, phy_detach on network device
@@ -11,15 +11,14 @@ to properly stop phy device from accessing network device prior removal of
 the network device.
 the network device.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  drivers/net/ethernet/marvell/mv643xx_eth.c | 2 +-
  drivers/net/ethernet/marvell/mv643xx_eth.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index d1cbfb1..748dcd3 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
-@@ -2805,7 +2805,7 @@ static int mv643xx_eth_remove(struct platform_device *pdev)
+@@ -2805,7 +2805,7 @@ static int mv643xx_eth_remove(struct pla
  
  
  	unregister_netdev(mp->dev);
  	unregister_netdev(mp->dev);
  	if (mp->phy != NULL)
  	if (mp->phy != NULL)
@@ -28,6 +27,3 @@ index d1cbfb1..748dcd3 100644
  	cancel_work_sync(&mp->tx_timeout_task);
  	cancel_work_sync(&mp->tx_timeout_task);
  
  
  	if (!IS_ERR(mp->clk))
  	if (!IS_ERR(mp->clk))
--- 
-1.8.4.rc1
-

+ 6 - 10
target/linux/kirkwood/patches-3.10/0019-net-mv643xx_eth-use-managed-devm_ioremap-for-port-re.patch → target/linux/kirkwood/patches-3.10/0021-net-mv643xx_eth-use-managed-devm_ioremap-for-port-re.patch

@@ -1,21 +1,20 @@
-From ba7ccfb6824e89ea6175abcf854e7808597a2c40 Mon Sep 17 00:00:00 2001
+From 002271ca6718b5dfb8082873fb0a60abc1d9e8d5 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:44 +0200
-Subject: [PATCH 19/29] net: mv643xx_eth: use managed devm_ioremap for port
+Date: Wed, 29 May 2013 09:32:44 +0000
+Subject: [PATCH 21/29] net: mv643xx_eth: use managed devm_ioremap for port
  registers
  registers
 
 
 Make use of managed devm_ioremap and remove corresponding iounmap.
 Make use of managed devm_ioremap and remove corresponding iounmap.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  drivers/net/ethernet/marvell/mv643xx_eth.c | 3 +--
  drivers/net/ethernet/marvell/mv643xx_eth.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)
  1 file changed, 1 insertion(+), 2 deletions(-)
 
 
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index 748dcd3..0a8c064 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
-@@ -2470,7 +2470,7 @@ static int mv643xx_eth_shared_probe(struct platform_device *pdev)
+@@ -2470,7 +2470,7 @@ static int mv643xx_eth_shared_probe(stru
  	if (msp == NULL)
  	if (msp == NULL)
  		return -ENOMEM;
  		return -ENOMEM;
  
  
@@ -24,7 +23,7 @@ index 748dcd3..0a8c064 100644
  	if (msp->base == NULL)
  	if (msp->base == NULL)
  		return -ENOMEM;
  		return -ENOMEM;
  
  
-@@ -2498,7 +2498,6 @@ static int mv643xx_eth_shared_remove(struct platform_device *pdev)
+@@ -2498,7 +2498,6 @@ static int mv643xx_eth_shared_remove(str
  {
  {
  	struct mv643xx_eth_shared_private *msp = platform_get_drvdata(pdev);
  	struct mv643xx_eth_shared_private *msp = platform_get_drvdata(pdev);
  
  
@@ -32,6 +31,3 @@ index 748dcd3..0a8c064 100644
  	if (!IS_ERR(msp->clk))
  	if (!IS_ERR(msp->clk))
  		clk_disable_unprepare(msp->clk);
  		clk_disable_unprepare(msp->clk);
  
  
--- 
-1.8.4.rc1
-

+ 5 - 9
target/linux/kirkwood/patches-3.10/0020-net-mv643xx_eth-add-phy_node-to-platform_data-struct.patch → target/linux/kirkwood/patches-3.10/0022-net-mv643xx_eth-add-phy_node-to-platform_data-struct.patch

@@ -1,21 +1,20 @@
-From 76a09d3052c7c1c5d4a3fcdfee3a12cfc998d58f Mon Sep 17 00:00:00 2001
+From 30b19330e175f621b04718bc4e55db75768997aa Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:45 +0200
-Subject: [PATCH 20/29] net: mv643xx_eth: add phy_node to platform_data struct
+Date: Wed, 29 May 2013 09:32:45 +0000
+Subject: [PATCH 22/29] net: mv643xx_eth: add phy_node to platform_data struct
 
 
 This adds a struct device_node pointer for a phy passed by phandle
 This adds a struct device_node pointer for a phy passed by phandle
 to mv643xx_eth node.
 to mv643xx_eth node.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  include/linux/mv643xx_eth.h | 2 ++
  include/linux/mv643xx_eth.h | 2 ++
  1 file changed, 2 insertions(+)
  1 file changed, 2 insertions(+)
 
 
-diff --git a/include/linux/mv643xx_eth.h b/include/linux/mv643xx_eth.h
-index 141d395..6e8215b 100644
 --- a/include/linux/mv643xx_eth.h
 --- a/include/linux/mv643xx_eth.h
 +++ b/include/linux/mv643xx_eth.h
 +++ b/include/linux/mv643xx_eth.h
-@@ -30,6 +30,7 @@ struct mv643xx_eth_shared_platform_data {
+@@ -30,6 +30,7 @@ struct mv643xx_eth_shared_platform_data
  #define MV643XX_ETH_PHY_ADDR(x)		(0x80 | (x))
  #define MV643XX_ETH_PHY_ADDR(x)		(0x80 | (x))
  #define MV643XX_ETH_PHY_NONE		0xff
  #define MV643XX_ETH_PHY_NONE		0xff
  
  
@@ -31,6 +30,3 @@ index 141d395..6e8215b 100644
  
  
  	/*
  	/*
  	 * Use this MAC address if it is valid, overriding the
  	 * Use this MAC address if it is valid, overriding the
--- 
-1.8.4.rc1
-

+ 5 - 9
target/linux/kirkwood/patches-3.10/0021-net-mv643xx_eth-use-of_phy_connect-if-phy_node-prese.patch → target/linux/kirkwood/patches-3.10/0023-net-mv643xx_eth-use-of_phy_connect-if-phy_node-prese.patch

@@ -1,19 +1,18 @@
-From 04417da7ac6d1a2a38d4406d899ab92bf6e488e1 Mon Sep 17 00:00:00 2001
+From db22a1196162f981444d241f92d02e2e50d12ed7 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:46 +0200
-Subject: [PATCH 21/29] net: mv643xx_eth: use of_phy_connect if phy_node
+Date: Wed, 29 May 2013 09:32:46 +0000
+Subject: [PATCH 23/29] net: mv643xx_eth: use of_phy_connect if phy_node
  present
  present
 
 
 This connects to a phy node passed to the port device instead of probing
 This connects to a phy node passed to the port device instead of probing
 the phy by phy_addr.
 the phy by phy_addr.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  drivers/net/ethernet/marvell/mv643xx_eth.c | 25 ++++++++++++++++++-------
  drivers/net/ethernet/marvell/mv643xx_eth.c | 25 ++++++++++++++++++-------
  1 file changed, 18 insertions(+), 7 deletions(-)
  1 file changed, 18 insertions(+), 7 deletions(-)
 
 
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index 0a8c064..946033b 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 @@ -60,6 +60,7 @@
 @@ -60,6 +60,7 @@
@@ -24,7 +23,7 @@ index 0a8c064..946033b 100644
  
  
  static char mv643xx_eth_driver_name[] = "mv643xx_eth";
  static char mv643xx_eth_driver_name[] = "mv643xx_eth";
  static char mv643xx_eth_driver_version[] = "1.4";
  static char mv643xx_eth_driver_version[] = "1.4";
-@@ -2715,17 +2716,27 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
+@@ -2715,17 +2716,27 @@ static int mv643xx_eth_probe(struct plat
  	netif_set_real_num_tx_queues(dev, mp->txq_count);
  	netif_set_real_num_tx_queues(dev, mp->txq_count);
  	netif_set_real_num_rx_queues(dev, mp->rxq_count);
  	netif_set_real_num_rx_queues(dev, mp->rxq_count);
  
  
@@ -59,6 +58,3 @@ index 0a8c064..946033b 100644
  
  
  	SET_ETHTOOL_OPS(dev, &mv643xx_eth_ethtool_ops);
  	SET_ETHTOOL_OPS(dev, &mv643xx_eth_ethtool_ops);
  
  
--- 
-1.8.4.rc1
-

+ 6 - 10
target/linux/kirkwood/patches-3.10/0022-net-mv643xx_eth-proper-initialization-for-Kirkwood-S.patch → target/linux/kirkwood/patches-3.10/0024-net-mv643xx_eth-proper-initialization-for-Kirkwood-S.patch

@@ -1,7 +1,7 @@
-From 3b0f26629fef1b55a71031b4ef4db27d0a66a0be Mon Sep 17 00:00:00 2001
+From 4c1ae9f272bf34388d0fbdc99aa18af2b6c9eda1 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:47 +0200
-Subject: [PATCH 22/29] net: mv643xx_eth: proper initialization for Kirkwood
+Date: Wed, 29 May 2013 09:32:47 +0000
+Subject: [PATCH 24/29] net: mv643xx_eth: proper initialization for Kirkwood
  SoCs
  SoCs
 
 
 Ethernet controllers found on Kirkwood SoCs not only suffer from loosing
 Ethernet controllers found on Kirkwood SoCs not only suffer from loosing
@@ -16,15 +16,14 @@ Moreover, system controllers on PPC using this driver should also be
 protected from clearing that bit.
 protected from clearing that bit.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  drivers/net/ethernet/marvell/mv643xx_eth.c | 11 +++++++++++
  drivers/net/ethernet/marvell/mv643xx_eth.c | 11 +++++++++++
  1 file changed, 11 insertions(+)
  1 file changed, 11 insertions(+)
 
 
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index 946033b..af6bdcc 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
-@@ -116,6 +116,8 @@ static char mv643xx_eth_driver_version[] = "1.4";
+@@ -116,6 +116,8 @@ static char mv643xx_eth_driver_version[]
  #define  LINK_UP			0x00000002
  #define  LINK_UP			0x00000002
  #define TXQ_COMMAND			0x0048
  #define TXQ_COMMAND			0x0048
  #define TXQ_FIX_PRIO_CONF		0x004c
  #define TXQ_FIX_PRIO_CONF		0x004c
@@ -33,7 +32,7 @@ index 946033b..af6bdcc 100644
  #define TX_BW_RATE			0x0050
  #define TX_BW_RATE			0x0050
  #define TX_BW_MTU			0x0058
  #define TX_BW_MTU			0x0058
  #define TX_BW_BURST			0x005c
  #define TX_BW_BURST			0x005c
-@@ -2701,6 +2703,15 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
+@@ -2701,6 +2703,15 @@ static int mv643xx_eth_probe(struct plat
  
  
  	mp->dev = dev;
  	mp->dev = dev;
  
  
@@ -49,6 +48,3 @@ index 946033b..af6bdcc 100644
  	/*
  	/*
  	 * Start with a default rate, and if there is a clock, allow
  	 * Start with a default rate, and if there is a clock, allow
  	 * it to override the default.
  	 * it to override the default.
--- 
-1.8.4.rc1
-

+ 0 - 439
target/linux/kirkwood/patches-3.10/0025-ARM-kirkwood-remove-redundant-DT-board-files.patch

@@ -1,439 +0,0 @@
-From 3bfe255171bf03fa4b776e8e10b93d4dbd7df1e8 Mon Sep 17 00:00:00 2001
-From: Sebastian Hesselbarth <[email protected]>
-Date: Tue, 2 Jul 2013 13:00:22 +0200
-Subject: [PATCH 25/29] ARM: kirkwood: remove redundant DT board files
-
-With DT support for mv643xx_eth board specific init for some boards now
-is unneccessary. Remove those board files, Kconfig entries, and
-corresponding entries in kirkwood_defconfig.
-
-Signed-off-by: Sebastian Hesselbarth <[email protected]>
----
- arch/arm/mach-kirkwood/Kconfig          | 148 --------------------------------
- arch/arm/mach-kirkwood/Makefile         |  22 +----
- arch/arm/mach-kirkwood/board-dnskw.c    |   7 --
- arch/arm/mach-kirkwood/board-dt.c       |  80 +----------------
- arch/arm/mach-kirkwood/board-lsxl.c     |  52 -----------
- arch/arm/mach-kirkwood/board-readynas.c |  28 ------
- 6 files changed, 2 insertions(+), 335 deletions(-)
- delete mode 100644 arch/arm/mach-kirkwood/board-lsxl.c
- delete mode 100644 arch/arm/mach-kirkwood/board-readynas.c
-
-diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
-index b56bd3d..dc99588 100644
---- a/arch/arm/mach-kirkwood/Kconfig
-+++ b/arch/arm/mach-kirkwood/Kconfig
-@@ -140,20 +140,6 @@ config ARCH_KIRKWOOD_DT
- 	  Say 'Y' here if you want your kernel to support the
- 	  Marvell Kirkwood using flattened device tree.
- 
--config MACH_CLOUDBOX_DT
--	bool "LaCie CloudBox NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  CloudBox NAS, using Flattened Device Tree.
--
--config MACH_DB88F628X_BP_DT
--	bool "Marvell DB-88F628x-BP Development Board (Flattened Device Tree)"
--	help
--	  Say 'Y' here if you want your kernel to support the Marvell
--	  DB-88F6281-BP and DB-88F6282-BP Development Board (Flattened
--	  Device Tree).
--
- config MACH_DLINK_KIRKWOOD_DT
- 	bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
- 	select ARCH_KIRKWOOD_DT
-@@ -162,140 +148,6 @@ config MACH_DLINK_KIRKWOOD_DT
- 	  Kirkwood-based D-Link NASes such as DNS-320 & DNS-325,
- 	  using Flattened Device Tree.
- 
--config MACH_DOCKSTAR_DT
--	bool "Seagate FreeAgent Dockstar (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Seagate FreeAgent Dockstar (Flattened Device Tree).
--
--config MACH_DREAMPLUG_DT
--	bool "Marvell DreamPlug (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Marvell DreamPlug (Flattened Device Tree).
--
--config MACH_GOFLEXNET_DT
--	bool "Seagate GoFlex Net (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Seagate GoFlex Net (Flattened Device Tree).
--
--config MACH_GURUPLUG_DT
--	bool "Marvell GuruPlug Reference Board (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Marvell GuruPlug Reference Board (Flattened Device Tree).
--
--config MACH_IB62X0_DT
--	bool "RaidSonic IB-NAS6210, IB-NAS6220 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  RaidSonic IB-NAS6210 & IB-NAS6220 devices, using
--	  Flattened Device Tree.
--
--config MACH_ICONNECT_DT
--	bool "Iomega Iconnect (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here to enable Iomega Iconnect support.
--
--config MACH_INETSPACE_V2_DT
--	bool "LaCie Internet Space v2 NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  Internet Space v2 NAS, using Flattened Device Tree.
--
--config MACH_IOMEGA_IX2_200_DT
--	bool "Iomega StorCenter ix2-200 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Iomega StorCenter ix2-200 (Flattened Device Tree).
--
--config MACH_KM_KIRKWOOD_DT
--	bool "Keymile Kirkwood Reference Design (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Keymile Kirkwood Reference Desgin, using Flattened Device Tree.
--
--config MACH_LSXL_DT
--	bool "Buffalo Linkstation LS-XHL, LS-CHLv2 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
--	  Flattened Device Tree.
--
--config MACH_MPLCEC4_DT
--	bool "MPL CEC4 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  MPL CEC4 (Flattened Device Tree).
--
--config MACH_NETSPACE_LITE_V2_DT
--	bool "LaCie Network Space Lite v2 NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  Network Space Lite v2 NAS, using Flattened Device Tree.
--
--config MACH_NETSPACE_MAX_V2_DT
--	bool "LaCie Network Space Max v2 NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  Network Space Max v2 NAS, using Flattened Device Tree.
--
--config MACH_NETSPACE_MINI_V2_DT
--	bool "LaCie Network Space Mini v2 NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  Network Space Mini v2 NAS using Flattened Device Tree.
--
--	  This board is embedded in a product named CloudBox, which
--	  provides automatic backup on a 100GB cloud storage. This
--	  should not confused with a more recent LaCie NAS also named
--	  CloudBox. For this last, the disk capacity is 1TB or above.
--
--config MACH_NETSPACE_V2_DT
--	bool "LaCie Network Space v2 NAS (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the LaCie
--	  Network Space v2 NAS, using Flattened Device Tree.
--
--config MACH_OPENBLOCKS_A6_DT
--	bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  Plat'Home OpenBlocks A6 (Flattened Device Tree).
--
--config MACH_READYNAS_DT
--	bool "NETGEAR ReadyNAS Duo v2 (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	select ARM_APPENDED_DTB
--	select ARM_ATAG_DTB_COMPAT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  NETGEAR ReadyNAS Duo v2 using Fattened Device Tree.
--
--config MACH_TOPKICK_DT
--	bool "USI Topkick (Flattened Device Tree)"
--	select ARCH_KIRKWOOD_DT
--	help
--	  Say 'Y' here if you want your kernel to support the
--	  USI Topkick, using Flattened Device Tree
--
- config MACH_TS219_DT
- 	bool "Device Tree for QNAP TS-11X, TS-21X NAS"
- 	select ARCH_KIRKWOOD_DT
-diff --git a/arch/arm/mach-kirkwood/Makefile b/arch/arm/mach-kirkwood/Makefile
-index 2fdc3a7..062f8c7 100644
---- a/arch/arm/mach-kirkwood/Makefile
-+++ b/arch/arm/mach-kirkwood/Makefile
-@@ -19,25 +19,5 @@ obj-$(CONFIG_MACH_TS219)		+= ts219-setup.o tsx1x-common.o
- obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup.o tsx1x-common.o
- 
- obj-$(CONFIG_ARCH_KIRKWOOD_DT)		+= board-dt.o
--obj-$(CONFIG_MACH_CLOUDBOX_DT)		+= board-ns2.o
--obj-$(CONFIG_MACH_DB88F628X_BP_DT)	+= board-db88f628x-bp.o
- obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT)	+= board-dnskw.o
--obj-$(CONFIG_MACH_DOCKSTAR_DT)		+= board-dockstar.o
--obj-$(CONFIG_MACH_DREAMPLUG_DT)		+= board-dreamplug.o
--obj-$(CONFIG_MACH_GOFLEXNET_DT)		+= board-goflexnet.o
--obj-$(CONFIG_MACH_GURUPLUG_DT)		+= board-guruplug.o
--obj-$(CONFIG_MACH_IB62X0_DT)		+= board-ib62x0.o
--obj-$(CONFIG_MACH_ICONNECT_DT)		+= board-iconnect.o
--obj-$(CONFIG_MACH_INETSPACE_V2_DT)	+= board-ns2.o
--obj-$(CONFIG_MACH_IOMEGA_IX2_200_DT)	+= board-iomega_ix2_200.o
--obj-$(CONFIG_MACH_KM_KIRKWOOD_DT)	+= board-km_kirkwood.o
--obj-$(CONFIG_MACH_LSXL_DT)		+= board-lsxl.o
--obj-$(CONFIG_MACH_MPLCEC4_DT)		+= board-mplcec4.o
--obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT)	+= board-ns2.o
--obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT)	+= board-ns2.o
--obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT)	+= board-ns2.o
--obj-$(CONFIG_MACH_NETSPACE_V2_DT)	+= board-ns2.o
--obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT)	+= board-openblocks_a6.o
--obj-$(CONFIG_MACH_READYNAS_DT)		+= board-readynas.o
--obj-$(CONFIG_MACH_TOPKICK_DT)		+= board-usi_topkick.o
--obj-$(CONFIG_MACH_TS219_DT)		+= board-ts219.o tsx1x-common.o
-+obj-$(CONFIG_MACH_TS219_DT)		+= tsx1x-common.o
-diff --git a/arch/arm/mach-kirkwood/board-dnskw.c b/arch/arm/mach-kirkwood/board-dnskw.c
-index a1aa87f..2af7a95 100644
---- a/arch/arm/mach-kirkwood/board-dnskw.c
-+++ b/arch/arm/mach-kirkwood/board-dnskw.c
-@@ -14,14 +14,9 @@
- #include <linux/kernel.h>
- #include <linux/init.h>
- #include <linux/platform_device.h>
--#include <linux/mv643xx_eth.h>
- #include <linux/gpio.h>
- #include "common.h"
- 
--static struct mv643xx_eth_platform_data dnskw_ge00_data = {
--	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
--};
--
- /* Register any GPIO for output and set the value */
- static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)
- {
-@@ -36,8 +31,6 @@ static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)
- 
- void __init dnskw_init(void)
- {
--	kirkwood_ge00_init(&dnskw_ge00_data);
--
- 	/* Set NAS to turn back on after a power failure */
- 	dnskw_gpio_register(37, "dnskw:power:recover", 1);
- }
-diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
-index f5aed1f..15e61c8 100644
---- a/arch/arm/mach-kirkwood/board-dt.c
-+++ b/arch/arm/mach-kirkwood/board-dt.c
-@@ -106,92 +106,14 @@ static void __init kirkwood_dt_init(void)
- 	kexec_reinit = kirkwood_enable_pcie;
- #endif
- 
--	if (of_machine_is_compatible("globalscale,dreamplug"))
--		dreamplug_init();
--
--	if (of_machine_is_compatible("globalscale,guruplug"))
--		guruplug_dt_init();
--
- 	if (of_machine_is_compatible("dlink,dns-kirkwood"))
- 		dnskw_init();
- 
--	if (of_machine_is_compatible("iom,iconnect"))
--		iconnect_init();
--
--	if (of_machine_is_compatible("raidsonic,ib-nas62x0"))
--		ib62x0_init();
--
--	if (of_machine_is_compatible("qnap,ts219"))
--		qnap_dt_ts219_init();
--
--	if (of_machine_is_compatible("seagate,dockstar"))
--		dockstar_dt_init();
--
--	if (of_machine_is_compatible("seagate,goflexnet"))
--		goflexnet_init();
--
--	if (of_machine_is_compatible("buffalo,lsxl"))
--		lsxl_init();
--
--	if (of_machine_is_compatible("iom,ix2-200"))
--		iomega_ix2_200_init();
--
--	if (of_machine_is_compatible("keymile,km_kirkwood"))
--		km_kirkwood_init();
--
--	if (of_machine_is_compatible("lacie,cloudbox") ||
--	    of_machine_is_compatible("lacie,inetspace_v2") ||
--	    of_machine_is_compatible("lacie,netspace_lite_v2") ||
--	    of_machine_is_compatible("lacie,netspace_max_v2") ||
--	    of_machine_is_compatible("lacie,netspace_mini_v2") ||
--	    of_machine_is_compatible("lacie,netspace_v2"))
--		ns2_init();
--
--	if (of_machine_is_compatible("marvell,db-88f6281-bp") ||
--	    of_machine_is_compatible("marvell,db-88f6282-bp"))
--		db88f628x_init();
--
--	if (of_machine_is_compatible("mpl,cec4"))
--		mplcec4_init();
--
--	if (of_machine_is_compatible("netgear,readynas-duo-v2"))
--		netgear_readynas_init();
--
--	if (of_machine_is_compatible("plathome,openblocks-a6"))
--		openblocks_a6_init();
--
--	if (of_machine_is_compatible("usi,topkick"))
--		usi_topkick_init();
--
- 	of_platform_populate(NULL, kirkwood_dt_match_table, NULL, NULL);
- }
- 
- static const char * const kirkwood_dt_board_compat[] = {
--	"globalscale,dreamplug",
--	"globalscale,guruplug",
--	"dlink,dns-320",
--	"dlink,dns-325",
--	"iom,iconnect",
--	"raidsonic,ib-nas62x0",
--	"qnap,ts219",
--	"seagate,dockstar",
--	"seagate,goflexnet",
--	"buffalo,lsxl",
--	"iom,ix2-200",
--	"keymile,km_kirkwood",
--	"lacie,cloudbox",
--	"lacie,inetspace_v2",
--	"lacie,netspace_lite_v2",
--	"lacie,netspace_max_v2",
--	"lacie,netspace_mini_v2",
--	"lacie,netspace_v2",
--	"marvell,db-88f6281-bp",
--	"marvell,db-88f6282-bp",
--	"mpl,cec4",
--	"netgear,readynas-duo-v2",
--	"plathome,openblocks-a6",
--	"usi,topkick",
--	"zyxel,nsa310",
-+	"marvell,kirkwood",
- 	NULL
- };
- 
-diff --git a/arch/arm/mach-kirkwood/board-lsxl.c b/arch/arm/mach-kirkwood/board-lsxl.c
-deleted file mode 100644
-index 4ec8b7a..0000000
---- a/arch/arm/mach-kirkwood/board-lsxl.c
-+++ /dev/null
-@@ -1,52 +0,0 @@
--/*
-- * Copyright 2012 (C), Michael Walle <[email protected]>
-- *
-- * arch/arm/mach-kirkwood/board-lsxl.c
-- *
-- * Buffalo Linkstation LS-XHL and LS-CHLv2 init for drivers not
-- * converted to flattened device tree yet.
-- *
-- * This file is licensed under the terms of the GNU General Public
-- * License version 2.  This program is licensed "as is" without any
-- * warranty of any kind, whether express or implied.
-- */
--
--#include <linux/kernel.h>
--#include <linux/init.h>
--#include <linux/platform_device.h>
--#include <linux/mv643xx_eth.h>
--#include "common.h"
--
--static struct mv643xx_eth_platform_data lsxl_ge00_data = {
--	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
--};
--
--static struct mv643xx_eth_platform_data lsxl_ge01_data = {
--	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
--};
--
--/*
-- * On the LS-XHL/LS-CHLv2, the shutdown process is following:
-- * - Userland monitors key events until the power switch goes to off position
-- * - The board reboots
-- * - U-boot starts and goes into an idle mode waiting for the user
-- *   to move the switch to ON position
-- *
-- */
--static void lsxl_power_off(void)
--{
--	kirkwood_restart('h', NULL);
--}
--
--void __init lsxl_init(void)
--{
--	/*
--	 * Basic setup. Needs to be called early.
--	 */
--
--	kirkwood_ge00_init(&lsxl_ge00_data);
--	kirkwood_ge01_init(&lsxl_ge01_data);
--
--	/* register power-off method */
--	pm_power_off = lsxl_power_off;
--}
-diff --git a/arch/arm/mach-kirkwood/board-readynas.c b/arch/arm/mach-kirkwood/board-readynas.c
-deleted file mode 100644
-index fb42c20..0000000
---- a/arch/arm/mach-kirkwood/board-readynas.c
-+++ /dev/null
-@@ -1,28 +0,0 @@
--/*
-- * NETGEAR ReadyNAS Duo v2 Board setup for drivers not already
-- * converted to DT.
-- *
-- * Copyright (C) 2013, Arnaud EBALARD <[email protected]>
-- *
-- * This program is free software; you can redistribute it and/or
-- * modify it under the terms of the GNU General Public License
-- * as published by the Free Software Foundation; either version
-- * 2 of the License, or (at your option) any later version.
-- */
--
--#include <linux/kernel.h>
--#include <linux/init.h>
--#include <linux/platform_device.h>
--#include <linux/mv643xx_eth.h>
--#include <mach/kirkwood.h>
--#include "common.h"
--
--static struct mv643xx_eth_platform_data netgear_readynas_ge00_data = {
--	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
--};
--
--void __init netgear_readynas_init(void)
--{
--	kirkwood_ge00_init(&netgear_readynas_ge00_data);
--	kirkwood_pcie_init(KW_PCIE0);
--}
--- 
-1.8.4.rc1
-

+ 10 - 17
target/linux/kirkwood/patches-3.10/0023-net-mv643xx_eth-add-DT-parsing-support.patch → target/linux/kirkwood/patches-3.10/0025-net-mv643xx_eth-add-DT-parsing-support.patch

@@ -1,7 +1,7 @@
-From dd6cae3b60ee88b301f9325db144e70b5e12482e Mon Sep 17 00:00:00 2001
+From 0e701e28611fc08558406accadae40be36fe5289 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Wed, 29 May 2013 21:32:48 +0200
-Subject: [PATCH 23/29] net: mv643xx_eth: add DT parsing support
+Date: Wed, 29 May 2013 09:32:48 +0000
+Subject: [PATCH 25/29] net: mv643xx_eth: add DT parsing support
 
 
 This adds device tree parsing support for the shared driver of mv643xx_eth.
 This adds device tree parsing support for the shared driver of mv643xx_eth.
 As the bindings are slightly different from current PPC bindings new binding
 As the bindings are slightly different from current PPC bindings new binding
@@ -9,15 +9,13 @@ documentation is also added. Following PPC-style device setup, the shared
 driver now also adds port platform_devices and sets up port platform_data.
 driver now also adds port platform_devices and sets up port platform_data.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  .../devicetree/bindings/net/marvell-orion-net.txt  |  85 ++++++++++++
  .../devicetree/bindings/net/marvell-orion-net.txt  |  85 ++++++++++++
  drivers/net/ethernet/marvell/mv643xx_eth.c         | 153 ++++++++++++++++++++-
  drivers/net/ethernet/marvell/mv643xx_eth.c         | 153 ++++++++++++++++++++-
  2 files changed, 234 insertions(+), 4 deletions(-)
  2 files changed, 234 insertions(+), 4 deletions(-)
  create mode 100644 Documentation/devicetree/bindings/net/marvell-orion-net.txt
  create mode 100644 Documentation/devicetree/bindings/net/marvell-orion-net.txt
 
 
-diff --git a/Documentation/devicetree/bindings/net/marvell-orion-net.txt b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
-new file mode 100644
-index 0000000..a73b79f
 --- /dev/null
 --- /dev/null
 +++ b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
 +++ b/Documentation/devicetree/bindings/net/marvell-orion-net.txt
 @@ -0,0 +1,85 @@
 @@ -0,0 +1,85 @@
@@ -106,8 +104,6 @@ index 0000000..a73b79f
 +		local-mac-address = [00 00 00 00 00 00];
 +		local-mac-address = [00 00 00 00 00 00];
 +	};
 +	};
 +};
 +};
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index af6bdcc..004a250 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 @@ -60,6 +60,9 @@
 @@ -60,6 +60,9 @@
@@ -120,7 +116,7 @@ index af6bdcc..004a250 100644
  #include <linux/of_mdio.h>
  #include <linux/of_mdio.h>
  
  
  static char mv643xx_eth_driver_name[] = "mv643xx_eth";
  static char mv643xx_eth_driver_name[] = "mv643xx_eth";
-@@ -2453,13 +2456,148 @@ static void infer_hw_params(struct mv643xx_eth_shared_private *msp)
+@@ -2453,13 +2456,148 @@ static void infer_hw_params(struct mv643
  	}
  	}
  }
  }
  
  
@@ -270,7 +266,7 @@ index af6bdcc..004a250 100644
  
  
  	if (!mv643xx_eth_version_printed++)
  	if (!mv643xx_eth_version_printed++)
  		pr_notice("MV-643xx 10/100/1000 ethernet driver version %s\n",
  		pr_notice("MV-643xx 10/100/1000 ethernet driver version %s\n",
-@@ -2472,6 +2610,7 @@ static int mv643xx_eth_shared_probe(struct platform_device *pdev)
+@@ -2472,6 +2610,7 @@ static int mv643xx_eth_shared_probe(stru
  	msp = devm_kzalloc(&pdev->dev, sizeof(*msp), GFP_KERNEL);
  	msp = devm_kzalloc(&pdev->dev, sizeof(*msp), GFP_KERNEL);
  	if (msp == NULL)
  	if (msp == NULL)
  		return -ENOMEM;
  		return -ENOMEM;
@@ -278,7 +274,7 @@ index af6bdcc..004a250 100644
  
  
  	msp->base = devm_ioremap(&pdev->dev, res->start, resource_size(res));
  	msp->base = devm_ioremap(&pdev->dev, res->start, resource_size(res));
  	if (msp->base == NULL)
  	if (msp->base == NULL)
-@@ -2488,12 +2627,15 @@ static int mv643xx_eth_shared_probe(struct platform_device *pdev)
+@@ -2488,12 +2627,15 @@ static int mv643xx_eth_shared_probe(stru
  	if (dram)
  	if (dram)
  		mv643xx_eth_conf_mbus_windows(msp, dram);
  		mv643xx_eth_conf_mbus_windows(msp, dram);
  
  
@@ -296,7 +292,7 @@ index af6bdcc..004a250 100644
  	return 0;
  	return 0;
  }
  }
  
  
-@@ -2501,9 +2643,9 @@ static int mv643xx_eth_shared_remove(struct platform_device *pdev)
+@@ -2501,9 +2643,9 @@ static int mv643xx_eth_shared_remove(str
  {
  {
  	struct mv643xx_eth_shared_private *msp = platform_get_drvdata(pdev);
  	struct mv643xx_eth_shared_private *msp = platform_get_drvdata(pdev);
  
  
@@ -307,7 +303,7 @@ index af6bdcc..004a250 100644
  	return 0;
  	return 0;
  }
  }
  
  
-@@ -2513,6 +2655,7 @@ static struct platform_driver mv643xx_eth_shared_driver = {
+@@ -2513,6 +2655,7 @@ static struct platform_driver mv643xx_et
  	.driver = {
  	.driver = {
  		.name	= MV643XX_ETH_SHARED_NAME,
  		.name	= MV643XX_ETH_SHARED_NAME,
  		.owner	= THIS_MODULE,
  		.owner	= THIS_MODULE,
@@ -315,7 +311,7 @@ index af6bdcc..004a250 100644
  	},
  	},
  };
  };
  
  
-@@ -2721,6 +2864,8 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
+@@ -2721,6 +2864,8 @@ static int mv643xx_eth_probe(struct plat
  	if (!IS_ERR(mp->clk)) {
  	if (!IS_ERR(mp->clk)) {
  		clk_prepare_enable(mp->clk);
  		clk_prepare_enable(mp->clk);
  		mp->t_clk = clk_get_rate(mp->clk);
  		mp->t_clk = clk_get_rate(mp->clk);
@@ -324,6 +320,3 @@ index af6bdcc..004a250 100644
  	}
  	}
  
  
  	set_params(mp, pd);
  	set_params(mp, pd);
--- 
-1.8.4.rc1
-

+ 4 - 58
target/linux/kirkwood/patches-3.10/0024-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch → target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-add-gigabit-ethernet-and-mvmdio-device-.patch

@@ -1,7 +1,7 @@
-From 81547b563bd8340d98cdf2c020449ef2e7e8821d Mon Sep 17 00:00:00 2001
+From 678cc6aa6f66182cddfc0c8fc34d4ef196669b83 Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
-Date: Tue, 2 Jul 2013 13:00:19 +0200
-Subject: [PATCH 24/29] ARM: kirkwood: add gigabit ethernet and mvmdio device
+Date: Sun, 7 Jul 2013 22:34:56 +0200
+Subject: [PATCH 26/29] ARM: kirkwood: add gigabit ethernet and mvmdio device
  tree nodes
  tree nodes
 
 
 This patch adds mv643xx_eth and mvmdio device tree nodes for DT enabled
 This patch adds mv643xx_eth and mvmdio device tree nodes for DT enabled
@@ -9,6 +9,7 @@ Kirkwood boards. Phy nodes are also added with reg property set on a
 per-board basis.
 per-board basis.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/boot/dts/kirkwood-cloudbox.dts            | 16 +++++++
  arch/arm/boot/dts/kirkwood-cloudbox.dts            | 16 +++++++
  arch/arm/boot/dts/kirkwood-db.dtsi                 | 16 +++++++
  arch/arm/boot/dts/kirkwood-db.dtsi                 | 16 +++++++
@@ -38,8 +39,6 @@ Signed-off-by: Sebastian Hesselbarth <[email protected]>
  arch/arm/boot/dts/kirkwood.dtsi                    | 52 ++++++++++++++++++++++
  arch/arm/boot/dts/kirkwood.dtsi                    | 52 ++++++++++++++++++++++
  26 files changed, 414 insertions(+), 2 deletions(-)
  26 files changed, 414 insertions(+), 2 deletions(-)
 
 
-diff --git a/arch/arm/boot/dts/kirkwood-cloudbox.dts b/arch/arm/boot/dts/kirkwood-cloudbox.dts
-index 5f21d4e..03e1b68 100644
 --- a/arch/arm/boot/dts/kirkwood-cloudbox.dts
 --- a/arch/arm/boot/dts/kirkwood-cloudbox.dts
 +++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
 +++ b/arch/arm/boot/dts/kirkwood-cloudbox.dts
 @@ -87,3 +87,19 @@
 @@ -87,3 +87,19 @@
@@ -62,8 +61,6 @@ index 5f21d4e..03e1b68 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-db.dtsi b/arch/arm/boot/dts/kirkwood-db.dtsi
-index c87cfb8..ca8bf36 100644
 --- a/arch/arm/boot/dts/kirkwood-db.dtsi
 --- a/arch/arm/boot/dts/kirkwood-db.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-db.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-db.dtsi
 @@ -87,3 +87,19 @@
 @@ -87,3 +87,19 @@
@@ -86,8 +83,6 @@ index c87cfb8..ca8bf36 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-dnskw.dtsi b/arch/arm/boot/dts/kirkwood-dnskw.dtsi
-index 6875ac0..7c8bc17 100644
 --- a/arch/arm/boot/dts/kirkwood-dnskw.dtsi
 --- a/arch/arm/boot/dts/kirkwood-dnskw.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-dnskw.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-dnskw.dtsi
 @@ -217,3 +217,19 @@
 @@ -217,3 +217,19 @@
@@ -110,8 +105,6 @@ index 6875ac0..7c8bc17 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-dockstar.dts b/arch/arm/boot/dts/kirkwood-dockstar.dts
-index 0196cf6..b5aebbc 100644
 --- a/arch/arm/boot/dts/kirkwood-dockstar.dts
 --- a/arch/arm/boot/dts/kirkwood-dockstar.dts
 +++ b/arch/arm/boot/dts/kirkwood-dockstar.dts
 +++ b/arch/arm/boot/dts/kirkwood-dockstar.dts
 @@ -91,3 +91,20 @@
 @@ -91,3 +91,20 @@
@@ -135,8 +128,6 @@ index 0196cf6..b5aebbc 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-dreamplug.dts b/arch/arm/boot/dts/kirkwood-dreamplug.dts
-index 289e51d..e0c93d4 100644
 --- a/arch/arm/boot/dts/kirkwood-dreamplug.dts
 --- a/arch/arm/boot/dts/kirkwood-dreamplug.dts
 +++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts
 +++ b/arch/arm/boot/dts/kirkwood-dreamplug.dts
 @@ -99,3 +99,31 @@
 @@ -99,3 +99,31 @@
@@ -171,8 +162,6 @@ index 289e51d..e0c93d4 100644
 +		phy-handle = <&ethphy1>;
 +		phy-handle = <&ethphy1>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-goflexnet.dts b/arch/arm/boot/dts/kirkwood-goflexnet.dts
-index c3573be..aba5849 100644
 --- a/arch/arm/boot/dts/kirkwood-goflexnet.dts
 --- a/arch/arm/boot/dts/kirkwood-goflexnet.dts
 +++ b/arch/arm/boot/dts/kirkwood-goflexnet.dts
 +++ b/arch/arm/boot/dts/kirkwood-goflexnet.dts
 @@ -170,3 +170,19 @@
 @@ -170,3 +170,19 @@
@@ -195,8 +184,6 @@ index c3573be..aba5849 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
-index 44fd97d..210dfb9 100644
 --- a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
 --- a/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
 +++ b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
 +++ b/arch/arm/boot/dts/kirkwood-guruplug-server-plus.dts
 @@ -96,3 +96,33 @@
 @@ -96,3 +96,33 @@
@@ -233,8 +220,6 @@ index 44fd97d..210dfb9 100644
 +		phy-handle = <&ethphy1>;
 +		phy-handle = <&ethphy1>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-ib62x0.dts b/arch/arm/boot/dts/kirkwood-ib62x0.dts
-index 5335b1a..fff3e65 100644
 --- a/arch/arm/boot/dts/kirkwood-ib62x0.dts
 --- a/arch/arm/boot/dts/kirkwood-ib62x0.dts
 +++ b/arch/arm/boot/dts/kirkwood-ib62x0.dts
 +++ b/arch/arm/boot/dts/kirkwood-ib62x0.dts
 @@ -119,3 +119,19 @@
 @@ -119,3 +119,19 @@
@@ -257,8 +242,6 @@ index 5335b1a..fff3e65 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-iconnect.dts b/arch/arm/boot/dts/kirkwood-iconnect.dts
-index e591d5d..9fe8ba2 100644
 --- a/arch/arm/boot/dts/kirkwood-iconnect.dts
 --- a/arch/arm/boot/dts/kirkwood-iconnect.dts
 +++ b/arch/arm/boot/dts/kirkwood-iconnect.dts
 +++ b/arch/arm/boot/dts/kirkwood-iconnect.dts
 @@ -176,3 +176,19 @@
 @@ -176,3 +176,19 @@
@@ -281,8 +264,6 @@ index e591d5d..9fe8ba2 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
-index 3694e94..315f095 100644
 --- a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
 --- a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
 +++ b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
 +++ b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
 @@ -191,3 +191,27 @@
 @@ -191,3 +191,27 @@
@@ -313,8 +294,6 @@ index 3694e94..315f095 100644
 +		phy-handle = <&ethphy1>;
 +		phy-handle = <&ethphy1>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-is2.dts b/arch/arm/boot/dts/kirkwood-is2.dts
-index 0bdce0a..2e5fe72 100644
 --- a/arch/arm/boot/dts/kirkwood-is2.dts
 --- a/arch/arm/boot/dts/kirkwood-is2.dts
 +++ b/arch/arm/boot/dts/kirkwood-is2.dts
 +++ b/arch/arm/boot/dts/kirkwood-is2.dts
 @@ -28,3 +28,5 @@
 @@ -28,3 +28,5 @@
@@ -323,8 +302,6 @@ index 0bdce0a..2e5fe72 100644
  };
  };
 +
 +
 +&ethphy0 { reg = <8>; };
 +&ethphy0 { reg = <8>; };
-diff --git a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
-index 5bbd054..f9194b1 100644
 --- a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
 --- a/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
 +++ b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
 +++ b/arch/arm/boot/dts/kirkwood-km_kirkwood.dts
 @@ -43,3 +43,19 @@
 @@ -43,3 +43,19 @@
@@ -347,8 +324,6 @@ index 5bbd054..f9194b1 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-lsxl.dtsi b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
-index 37d45c4..dcc6470 100644
 --- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
 --- a/arch/arm/boot/dts/kirkwood-lsxl.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-lsxl.dtsi
 @@ -201,3 +201,31 @@
 @@ -201,3 +201,31 @@
@@ -383,8 +358,6 @@ index 37d45c4..dcc6470 100644
 +		phy-handle = <&ethphy1>;
 +		phy-handle = <&ethphy1>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-mplcec4.dts b/arch/arm/boot/dts/kirkwood-mplcec4.dts
-index 90501cf..32a0133 100644
 --- a/arch/arm/boot/dts/kirkwood-mplcec4.dts
 --- a/arch/arm/boot/dts/kirkwood-mplcec4.dts
 +++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts
 +++ b/arch/arm/boot/dts/kirkwood-mplcec4.dts
 @@ -190,3 +190,30 @@
 @@ -190,3 +190,30 @@
@@ -418,8 +391,6 @@ index 90501cf..32a0133 100644
 +		phy-handle = <&ethphy1>;
 +		phy-handle = <&ethphy1>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
-index 1ca66ab..b66b2cd 100644
 --- a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
 --- a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
 +++ b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
 +++ b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts
 @@ -178,3 +178,19 @@
 @@ -178,3 +178,19 @@
@@ -442,8 +413,6 @@ index 1ca66ab..b66b2cd 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
-index 6affd92..6a48bfd 100644
 --- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
 --- a/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ns2-common.dtsi
 @@ -82,3 +82,19 @@
 @@ -82,3 +82,19 @@
@@ -466,8 +435,6 @@ index 6affd92..6a48bfd 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-ns2.dts b/arch/arm/boot/dts/kirkwood-ns2.dts
-index f2d36ecf..8ffd552 100644
 --- a/arch/arm/boot/dts/kirkwood-ns2.dts
 --- a/arch/arm/boot/dts/kirkwood-ns2.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2.dts
 @@ -28,3 +28,5 @@
 @@ -28,3 +28,5 @@
@@ -476,8 +443,6 @@ index f2d36ecf..8ffd552 100644
  };
  };
 +
 +
 +&ethphy0 { reg = <8>; };
 +&ethphy0 { reg = <8>; };
-diff --git a/arch/arm/boot/dts/kirkwood-ns2lite.dts b/arch/arm/boot/dts/kirkwood-ns2lite.dts
-index b02eb4e..16332f8 100644
 --- a/arch/arm/boot/dts/kirkwood-ns2lite.dts
 --- a/arch/arm/boot/dts/kirkwood-ns2lite.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2lite.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2lite.dts
 @@ -28,3 +28,5 @@
 @@ -28,3 +28,5 @@
@@ -486,8 +451,6 @@ index b02eb4e..16332f8 100644
  };
  };
 +
 +
 +&ethphy0 { reg = <0>; };
 +&ethphy0 { reg = <0>; };
-diff --git a/arch/arm/boot/dts/kirkwood-ns2max.dts b/arch/arm/boot/dts/kirkwood-ns2max.dts
-index bcec4d6..68d767d 100644
 --- a/arch/arm/boot/dts/kirkwood-ns2max.dts
 --- a/arch/arm/boot/dts/kirkwood-ns2max.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2max.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2max.dts
 @@ -47,3 +47,5 @@
 @@ -47,3 +47,5 @@
@@ -496,8 +459,6 @@ index bcec4d6..68d767d 100644
  };
  };
 +
 +
 +&ethphy0 { reg = <8>; };
 +&ethphy0 { reg = <8>; };
-diff --git a/arch/arm/boot/dts/kirkwood-ns2mini.dts b/arch/arm/boot/dts/kirkwood-ns2mini.dts
-index adab1ab..5b1b17b 100644
 --- a/arch/arm/boot/dts/kirkwood-ns2mini.dts
 --- a/arch/arm/boot/dts/kirkwood-ns2mini.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2mini.dts
 +++ b/arch/arm/boot/dts/kirkwood-ns2mini.dts
 @@ -48,3 +48,5 @@
 @@ -48,3 +48,5 @@
@@ -506,8 +467,6 @@ index adab1ab..5b1b17b 100644
  };
  };
 +
 +
 +&ethphy0 { reg = <0>; };
 +&ethphy0 { reg = <0>; };
-diff --git a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
-index d27f724..f8be3e3 100644
 --- a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
 --- a/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
 +++ b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
 +++ b/arch/arm/boot/dts/kirkwood-openblocks_a6.dts
 @@ -210,3 +210,19 @@
 @@ -210,3 +210,19 @@
@@ -530,8 +489,6 @@ index d27f724..f8be3e3 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-topkick.dts b/arch/arm/boot/dts/kirkwood-topkick.dts
-index 66eb45b..34eacf2 100644
 --- a/arch/arm/boot/dts/kirkwood-topkick.dts
 --- a/arch/arm/boot/dts/kirkwood-topkick.dts
 +++ b/arch/arm/boot/dts/kirkwood-topkick.dts
 +++ b/arch/arm/boot/dts/kirkwood-topkick.dts
 @@ -201,3 +201,19 @@
 @@ -201,3 +201,19 @@
@@ -554,8 +511,6 @@ index 66eb45b..34eacf2 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood-ts219-6281.dts b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
-index 42648ab..fff3a3e 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 --- a/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6281.dts
 @@ -50,4 +50,6 @@
 @@ -50,4 +50,6 @@
@@ -567,8 +522,6 @@ index 42648ab..fff3a3e 100644
 +};
 +};
 +
 +
 +&ethphy0 { reg = <8>; };
 +&ethphy0 { reg = <8>; };
-diff --git a/arch/arm/boot/dts/kirkwood-ts219-6282.dts b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
-index 95ceeb9..ed0441a 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 --- a/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 +++ b/arch/arm/boot/dts/kirkwood-ts219-6282.dts
 @@ -50,4 +50,6 @@
 @@ -50,4 +50,6 @@
@@ -580,8 +533,6 @@ index 95ceeb9..ed0441a 100644
 +};
 +};
 +
 +
 +&ethphy0 { reg = <0>; };
 +&ethphy0 { reg = <0>; };
-diff --git a/arch/arm/boot/dts/kirkwood-ts219.dtsi b/arch/arm/boot/dts/kirkwood-ts219.dtsi
-index 7c022fd..6b063eb 100644
 --- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
 --- a/arch/arm/boot/dts/kirkwood-ts219.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
 +++ b/arch/arm/boot/dts/kirkwood-ts219.dtsi
 @@ -81,3 +81,19 @@
 @@ -81,3 +81,19 @@
@@ -604,8 +555,6 @@ index 7c022fd..6b063eb 100644
 +		phy-handle = <&ethphy0>;
 +		phy-handle = <&ethphy0>;
 +	};
 +	};
 +};
 +};
-diff --git a/arch/arm/boot/dts/kirkwood.dtsi b/arch/arm/boot/dts/kirkwood.dtsi
-index 7eef88f..ebc6dc4 100644
 --- a/arch/arm/boot/dts/kirkwood.dtsi
 --- a/arch/arm/boot/dts/kirkwood.dtsi
 +++ b/arch/arm/boot/dts/kirkwood.dtsi
 +++ b/arch/arm/boot/dts/kirkwood.dtsi
 @@ -203,5 +203,57 @@
 @@ -203,5 +203,57 @@
@@ -666,6 +615,3 @@ index 7eef88f..ebc6dc4 100644
 +		};
 +		};
  	};
  	};
  };
  };
--- 
-1.8.4.rc1
-

+ 1116 - 0
target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch

@@ -0,0 +1,1116 @@
+From 3973689b8f58652143ffa433bec6096d22904ee0 Mon Sep 17 00:00:00 2001
+From: Sebastian Hesselbarth <[email protected]>
+Date: Wed, 3 Jul 2013 18:57:51 +0200
+Subject: [PATCH 27/29] ARM: kirkwood: remove redundant DT board files
+
+With DT support for mv643xx_eth board specific init for some boards now
+is unneccessary. Remove those board files, Kconfig entries, and
+corresponding entries in kirkwood_defconfig.
+
+Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
+---
+ arch/arm/configs/kirkwood_defconfig           |  21 ----
+ arch/arm/mach-kirkwood/Kconfig                | 162 --------------------------
+ arch/arm/mach-kirkwood/Makefile               |  21 ----
+ arch/arm/mach-kirkwood/board-db88f628x-bp.c   |  24 ----
+ arch/arm/mach-kirkwood/board-dnskw.c          |   7 --
+ arch/arm/mach-kirkwood/board-dockstar.c       |  32 -----
+ arch/arm/mach-kirkwood/board-dreamplug.c      |  35 ------
+ arch/arm/mach-kirkwood/board-dt.c             |  82 +------------
+ arch/arm/mach-kirkwood/board-goflexnet.c      |  34 ------
+ arch/arm/mach-kirkwood/board-guruplug.c       |  33 ------
+ arch/arm/mach-kirkwood/board-ib62x0.c         |  29 -----
+ arch/arm/mach-kirkwood/board-iconnect.c       |  24 ----
+ arch/arm/mach-kirkwood/board-iomega_ix2_200.c |  34 ------
+ arch/arm/mach-kirkwood/board-km_kirkwood.c    |  44 -------
+ arch/arm/mach-kirkwood/board-lsxl.c           |  52 ---------
+ arch/arm/mach-kirkwood/board-mplcec4.c        |  35 ------
+ arch/arm/mach-kirkwood/board-ns2.c            |  35 ------
+ arch/arm/mach-kirkwood/board-openblocks_a6.c  |  26 -----
+ arch/arm/mach-kirkwood/board-readynas.c       |  28 -----
+ arch/arm/mach-kirkwood/board-ts219.c          |  43 -------
+ arch/arm/mach-kirkwood/board-usi_topkick.c    |  29 -----
+ arch/arm/mach-kirkwood/common.h               | 104 -----------------
+ 22 files changed, 2 insertions(+), 932 deletions(-)
+ delete mode 100644 arch/arm/mach-kirkwood/board-db88f628x-bp.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-dockstar.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-dreamplug.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-goflexnet.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-guruplug.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ib62x0.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-iconnect.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-iomega_ix2_200.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-km_kirkwood.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-lsxl.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-mplcec4.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ns2.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-openblocks_a6.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-readynas.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ts219.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-usi_topkick.c
+
+--- a/arch/arm/configs/kirkwood_defconfig
++++ b/arch/arm/configs/kirkwood_defconfig
+@@ -30,28 +30,7 @@ CONFIG_MACH_SHEEVAPLUG=y
+ CONFIG_MACH_T5325=y
+ CONFIG_MACH_TS219=y
+ CONFIG_MACH_TS41X=y
+-CONFIG_MACH_CLOUDBOX_DT=y
+ CONFIG_MACH_DLINK_KIRKWOOD_DT=y
+-CONFIG_MACH_DOCKSTAR_DT=y
+-CONFIG_MACH_DREAMPLUG_DT=y
+-CONFIG_MACH_GOFLEXNET_DT=y
+-CONFIG_MACH_GURUPLUG_DT=y
+-CONFIG_MACH_IB62X0_DT=y
+-CONFIG_MACH_ICONNECT_DT=y
+-CONFIG_MACH_INETSPACE_V2_DT=y
+-CONFIG_MACH_IOMEGA_IX2_200_DT=y
+-CONFIG_MACH_KM_KIRKWOOD_DT=y
+-CONFIG_MACH_LSXL_DT=y
+-CONFIG_MACH_MPLCEC4_DT=y
+-CONFIG_MACH_NETSPACE_LITE_V2_DT=y
+-CONFIG_MACH_NETSPACE_MAX_V2_DT=y
+-CONFIG_MACH_NETSPACE_MINI_V2_DT=y
+-CONFIG_MACH_NETSPACE_V2_DT=y
+-CONFIG_MACH_NSA310_DT=y
+-CONFIG_MACH_OPENBLOCKS_A6_DT=y
+-CONFIG_MACH_READYNAS_DT=y
+-CONFIG_MACH_TOPKICK_DT=y
+-CONFIG_MACH_TS219_DT=y
+ # CONFIG_CPU_FEROCEON_OLD_ID is not set
+ CONFIG_PREEMPT=y
+ CONFIG_AEABI=y
+--- a/arch/arm/mach-kirkwood/Kconfig
++++ b/arch/arm/mach-kirkwood/Kconfig
+@@ -140,20 +140,6 @@ config ARCH_KIRKWOOD_DT
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell Kirkwood using flattened device tree.
+ 
+-config MACH_CLOUDBOX_DT
+-	bool "LaCie CloudBox NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  CloudBox NAS, using Flattened Device Tree.
+-
+-config MACH_DB88F628X_BP_DT
+-	bool "Marvell DB-88F628x-BP Development Board (Flattened Device Tree)"
+-	help
+-	  Say 'Y' here if you want your kernel to support the Marvell
+-	  DB-88F6281-BP and DB-88F6282-BP Development Board (Flattened
+-	  Device Tree).
+-
+ config MACH_DLINK_KIRKWOOD_DT
+ 	bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
+ 	select ARCH_KIRKWOOD_DT
+@@ -162,154 +148,6 @@ config MACH_DLINK_KIRKWOOD_DT
+ 	  Kirkwood-based D-Link NASes such as DNS-320 & DNS-325,
+ 	  using Flattened Device Tree.
+ 
+-config MACH_DOCKSTAR_DT
+-	bool "Seagate FreeAgent Dockstar (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Seagate FreeAgent Dockstar (Flattened Device Tree).
+-
+-config MACH_DREAMPLUG_DT
+-	bool "Marvell DreamPlug (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Marvell DreamPlug (Flattened Device Tree).
+-
+-config MACH_GOFLEXNET_DT
+-	bool "Seagate GoFlex Net (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Seagate GoFlex Net (Flattened Device Tree).
+-
+-config MACH_GURUPLUG_DT
+-	bool "Marvell GuruPlug Reference Board (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Marvell GuruPlug Reference Board (Flattened Device Tree).
+-
+-config MACH_IB62X0_DT
+-	bool "RaidSonic IB-NAS6210, IB-NAS6220 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  RaidSonic IB-NAS6210 & IB-NAS6220 devices, using
+-	  Flattened Device Tree.
+-
+-config MACH_ICONNECT_DT
+-	bool "Iomega Iconnect (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here to enable Iomega Iconnect support.
+-
+-config MACH_INETSPACE_V2_DT
+-	bool "LaCie Internet Space v2 NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  Internet Space v2 NAS, using Flattened Device Tree.
+-
+-config MACH_IOMEGA_IX2_200_DT
+-	bool "Iomega StorCenter ix2-200 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Iomega StorCenter ix2-200 (Flattened Device Tree).
+-
+-config MACH_KM_KIRKWOOD_DT
+-	bool "Keymile Kirkwood Reference Design (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Keymile Kirkwood Reference Desgin, using Flattened Device Tree.
+-
+-config MACH_LSXL_DT
+-	bool "Buffalo Linkstation LS-XHL, LS-CHLv2 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
+-	  Flattened Device Tree.
+-
+-config MACH_MPLCEC4_DT
+-	bool "MPL CEC4 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  MPL CEC4 (Flattened Device Tree).
+-
+-config MACH_NETSPACE_LITE_V2_DT
+-	bool "LaCie Network Space Lite v2 NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  Network Space Lite v2 NAS, using Flattened Device Tree.
+-
+-config MACH_NETSPACE_MAX_V2_DT
+-	bool "LaCie Network Space Max v2 NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  Network Space Max v2 NAS, using Flattened Device Tree.
+-
+-config MACH_NETSPACE_MINI_V2_DT
+-	bool "LaCie Network Space Mini v2 NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  Network Space Mini v2 NAS using Flattened Device Tree.
+-
+-	  This board is embedded in a product named CloudBox, which
+-	  provides automatic backup on a 100GB cloud storage. This
+-	  should not confused with a more recent LaCie NAS also named
+-	  CloudBox. For this last, the disk capacity is 1TB or above.
+-
+-config MACH_NETSPACE_V2_DT
+-	bool "LaCie Network Space v2 NAS (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the LaCie
+-	  Network Space v2 NAS, using Flattened Device Tree.
+-
+-config MACH_OPENBLOCKS_A6_DT
+-	bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  Plat'Home OpenBlocks A6 (Flattened Device Tree).
+-
+-config MACH_READYNAS_DT
+-	bool "NETGEAR ReadyNAS Duo v2 (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	select ARM_APPENDED_DTB
+-	select ARM_ATAG_DTB_COMPAT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  NETGEAR ReadyNAS Duo v2 using Fattened Device Tree.
+-
+-config MACH_TOPKICK_DT
+-	bool "USI Topkick (Flattened Device Tree)"
+-	select ARCH_KIRKWOOD_DT
+-	help
+-	  Say 'Y' here if you want your kernel to support the
+-	  USI Topkick, using Flattened Device Tree
+-
+-config MACH_TS219_DT
+-	bool "Device Tree for QNAP TS-11X, TS-21X NAS"
+-	select ARCH_KIRKWOOD_DT
+-	select ARM_APPENDED_DTB
+-	select ARM_ATAG_DTB_COMPAT
+-	help
+-	  Say 'Y' here if you want your kernel to support the QNAP
+-	  TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
+-	  TS-219P+ Turbo NAS devices using Fattened Device Tree.
+-	  There are two different Device Tree descriptions, depending
+-	  on if the device is based on an if the board uses the MV6281
+-	  or MV6282. If you have the wrong one, the buttons will not
+-	  work.
+-
+ endmenu
+ 
+ endif
+--- a/arch/arm/mach-kirkwood/Makefile
++++ b/arch/arm/mach-kirkwood/Makefile
+@@ -19,25 +19,4 @@ obj-$(CONFIG_MACH_TS219)		+= ts219-setup
+ obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup.o tsx1x-common.o
+ 
+ obj-$(CONFIG_ARCH_KIRKWOOD_DT)		+= board-dt.o
+-obj-$(CONFIG_MACH_CLOUDBOX_DT)		+= board-ns2.o
+-obj-$(CONFIG_MACH_DB88F628X_BP_DT)	+= board-db88f628x-bp.o
+ obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT)	+= board-dnskw.o
+-obj-$(CONFIG_MACH_DOCKSTAR_DT)		+= board-dockstar.o
+-obj-$(CONFIG_MACH_DREAMPLUG_DT)		+= board-dreamplug.o
+-obj-$(CONFIG_MACH_GOFLEXNET_DT)		+= board-goflexnet.o
+-obj-$(CONFIG_MACH_GURUPLUG_DT)		+= board-guruplug.o
+-obj-$(CONFIG_MACH_IB62X0_DT)		+= board-ib62x0.o
+-obj-$(CONFIG_MACH_ICONNECT_DT)		+= board-iconnect.o
+-obj-$(CONFIG_MACH_INETSPACE_V2_DT)	+= board-ns2.o
+-obj-$(CONFIG_MACH_IOMEGA_IX2_200_DT)	+= board-iomega_ix2_200.o
+-obj-$(CONFIG_MACH_KM_KIRKWOOD_DT)	+= board-km_kirkwood.o
+-obj-$(CONFIG_MACH_LSXL_DT)		+= board-lsxl.o
+-obj-$(CONFIG_MACH_MPLCEC4_DT)		+= board-mplcec4.o
+-obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT)	+= board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT)	+= board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT)	+= board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_V2_DT)	+= board-ns2.o
+-obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT)	+= board-openblocks_a6.o
+-obj-$(CONFIG_MACH_READYNAS_DT)		+= board-readynas.o
+-obj-$(CONFIG_MACH_TOPKICK_DT)		+= board-usi_topkick.o
+-obj-$(CONFIG_MACH_TS219_DT)		+= board-ts219.o tsx1x-common.o
+--- a/arch/arm/mach-kirkwood/board-db88f628x-bp.c
++++ /dev/null
+@@ -1,24 +0,0 @@
+-/*
+- * Saeed Bishara <[email protected]>
+- *
+- * Marvell DB-88F628{1,2}-BP Development Board Setup
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/of.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data db88f628x_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init db88f628x_init(void)
+-{
+-	kirkwood_ge00_init(&db88f628x_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dnskw.c
++++ b/arch/arm/mach-kirkwood/board-dnskw.c
+@@ -14,14 +14,9 @@
+ #include <linux/kernel.h>
+ #include <linux/init.h>
+ #include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+ #include <linux/gpio.h>
+ #include "common.h"
+ 
+-static struct mv643xx_eth_platform_data dnskw_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+ /* Register any GPIO for output and set the value */
+ static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)
+ {
+@@ -36,8 +31,6 @@ static void __init dnskw_gpio_register(u
+ 
+ void __init dnskw_init(void)
+ {
+-	kirkwood_ge00_init(&dnskw_ge00_data);
+-
+ 	/* Set NAS to turn back on after a power failure */
+ 	dnskw_gpio_register(37, "dnskw:power:recover", 1);
+ }
+--- a/arch/arm/mach-kirkwood/board-dockstar.c
++++ /dev/null
+@@ -1,32 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-dockstar.c
+- *
+- * Seagate FreeAgent Dockstar Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- *
+- * Copied and modified for Seagate GoFlex Net support by
+- * Joshua Coombs <[email protected]> based on ArchLinux ARM's
+- * GoFlex kernel patches.
+- *
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data dockstar_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init dockstar_dt_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&dockstar_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dreamplug.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-dreamplug.c
+- *
+- * Marvell DreamPlug Reference Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data dreamplug_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data dreamplug_ge01_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-void __init dreamplug_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&dreamplug_ge00_data);
+-	kirkwood_ge01_init(&dreamplug_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dt.c
++++ b/arch/arm/mach-kirkwood/board-dt.c
+@@ -106,92 +106,14 @@ static void __init kirkwood_dt_init(void
+ 	kexec_reinit = kirkwood_enable_pcie;
+ #endif
+ 
+-	if (of_machine_is_compatible("globalscale,dreamplug"))
+-		dreamplug_init();
+-
+-	if (of_machine_is_compatible("globalscale,guruplug"))
+-		guruplug_dt_init();
+-
+ 	if (of_machine_is_compatible("dlink,dns-kirkwood"))
+ 		dnskw_init();
+ 
+-	if (of_machine_is_compatible("iom,iconnect"))
+-		iconnect_init();
+-
+-	if (of_machine_is_compatible("raidsonic,ib-nas62x0"))
+-		ib62x0_init();
+-
+-	if (of_machine_is_compatible("qnap,ts219"))
+-		qnap_dt_ts219_init();
+-
+-	if (of_machine_is_compatible("seagate,dockstar"))
+-		dockstar_dt_init();
+-
+-	if (of_machine_is_compatible("seagate,goflexnet"))
+-		goflexnet_init();
+-
+-	if (of_machine_is_compatible("buffalo,lsxl"))
+-		lsxl_init();
+-
+-	if (of_machine_is_compatible("iom,ix2-200"))
+-		iomega_ix2_200_init();
+-
+-	if (of_machine_is_compatible("keymile,km_kirkwood"))
+-		km_kirkwood_init();
+-
+-	if (of_machine_is_compatible("lacie,cloudbox") ||
+-	    of_machine_is_compatible("lacie,inetspace_v2") ||
+-	    of_machine_is_compatible("lacie,netspace_lite_v2") ||
+-	    of_machine_is_compatible("lacie,netspace_max_v2") ||
+-	    of_machine_is_compatible("lacie,netspace_mini_v2") ||
+-	    of_machine_is_compatible("lacie,netspace_v2"))
+-		ns2_init();
+-
+-	if (of_machine_is_compatible("marvell,db-88f6281-bp") ||
+-	    of_machine_is_compatible("marvell,db-88f6282-bp"))
+-		db88f628x_init();
+-
+-	if (of_machine_is_compatible("mpl,cec4"))
+-		mplcec4_init();
+-
+-	if (of_machine_is_compatible("netgear,readynas-duo-v2"))
+-		netgear_readynas_init();
+-
+-	if (of_machine_is_compatible("plathome,openblocks-a6"))
+-		openblocks_a6_init();
+-
+-	if (of_machine_is_compatible("usi,topkick"))
+-		usi_topkick_init();
+-
+-	of_platform_populate(NULL, kirkwood_dt_match_table, NULL, NULL);
++	of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
+ }
+ 
+ static const char * const kirkwood_dt_board_compat[] = {
+-	"globalscale,dreamplug",
+-	"globalscale,guruplug",
+-	"dlink,dns-320",
+-	"dlink,dns-325",
+-	"iom,iconnect",
+-	"raidsonic,ib-nas62x0",
+-	"qnap,ts219",
+-	"seagate,dockstar",
+-	"seagate,goflexnet",
+-	"buffalo,lsxl",
+-	"iom,ix2-200",
+-	"keymile,km_kirkwood",
+-	"lacie,cloudbox",
+-	"lacie,inetspace_v2",
+-	"lacie,netspace_lite_v2",
+-	"lacie,netspace_max_v2",
+-	"lacie,netspace_mini_v2",
+-	"lacie,netspace_v2",
+-	"marvell,db-88f6281-bp",
+-	"marvell,db-88f6282-bp",
+-	"mpl,cec4",
+-	"netgear,readynas-duo-v2",
+-	"plathome,openblocks-a6",
+-	"usi,topkick",
+-	"zyxel,nsa310",
++	"marvell,kirkwood",
+ 	NULL
+ };
+ 
+--- a/arch/arm/mach-kirkwood/board-goflexnet.c
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-goflexnet.c
+- *
+- * Seagate GoFlext Net Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- *
+- * Copied and modified for Seagate GoFlex Net support by
+- * Joshua Coombs <[email protected]> based on ArchLinux ARM's
+- * GoFlex kernel patches.
+- *
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data goflexnet_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init goflexnet_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&goflexnet_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-guruplug.c
++++ /dev/null
+@@ -1,33 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-guruplug.c
+- *
+- * Marvell Guruplug Reference Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data guruplug_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data guruplug_ge01_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-void __init guruplug_dt_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&guruplug_ge00_data);
+-	kirkwood_ge01_init(&guruplug_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-ib62x0.c
++++ /dev/null
+@@ -1,29 +0,0 @@
+-/*
+- * Copyright 2012 (C), Simon Baatz <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-ib62x0.c
+- *
+- * RaidSonic ICY BOX IB-NAS6210 & IB-NAS6220 init for drivers not
+- * converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data ib62x0_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init ib62x0_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&ib62x0_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-iconnect.c
++++ /dev/null
+@@ -1,24 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-iconnect.c
+- *
+- * Iomega i-connect Board Setup
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/of.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data iconnect_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(11),
+-};
+-
+-void __init iconnect_init(void)
+-{
+-	kirkwood_ge00_init(&iconnect_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-iomega_ix2_200.c
+- *
+- * Iomega StorCenter ix2-200
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/ethtool.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = {
+-	.phy_addr       = MV643XX_ETH_PHY_NONE,
+-	.speed          = SPEED_1000,
+-	.duplex         = DUPLEX_FULL,
+-};
+-
+-static struct mv643xx_eth_platform_data iomega_ix2_200_ge01_data = {
+-        .phy_addr       = MV643XX_ETH_PHY_ADDR(11),
+-};
+-
+-void __init iomega_ix2_200_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&iomega_ix2_200_ge00_data);
+-	kirkwood_ge01_init(&iomega_ix2_200_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-km_kirkwood.c
++++ /dev/null
+@@ -1,44 +0,0 @@
+-/*
+- * Copyright 2012 2012 KEYMILE AG, CH-3097 Bern
+- * Valentin Longchamp <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-km_kirkwood.c
+- *
+- * Keymile km_kirkwood Reference Desing Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/clk.h>
+-#include <linux/clk-private.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data km_kirkwood_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init km_kirkwood_init(void)
+-{
+-	struct clk *sata_clk;
+-	/*
+-	 * Our variant of kirkwood (integrated in the Bobcat) hangs on accessing
+-	 * SATA bits (14-15) of the Clock Gating Control Register. Since these
+-	 * devices are also not present in this variant, their clocks get
+-	 * disabled because unused when clk_disable_unused() gets called.
+-	 * That's why we change the flags to these clocks to CLK_IGNORE_UNUSED
+-	 */
+-	sata_clk = clk_get_sys("sata_mv.0", "0");
+-	if (!IS_ERR(sata_clk))
+-		sata_clk->flags |= CLK_IGNORE_UNUSED;
+-	sata_clk = clk_get_sys("sata_mv.0", "1");
+-	if (!IS_ERR(sata_clk))
+-		sata_clk->flags |= CLK_IGNORE_UNUSED;
+-
+-	kirkwood_ge00_init(&km_kirkwood_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-lsxl.c
++++ /dev/null
+@@ -1,52 +0,0 @@
+-/*
+- * Copyright 2012 (C), Michael Walle <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-lsxl.c
+- *
+- * Buffalo Linkstation LS-XHL and LS-CHLv2 init for drivers not
+- * converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data lsxl_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data lsxl_ge01_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-/*
+- * On the LS-XHL/LS-CHLv2, the shutdown process is following:
+- * - Userland monitors key events until the power switch goes to off position
+- * - The board reboots
+- * - U-boot starts and goes into an idle mode waiting for the user
+- *   to move the switch to ON position
+- *
+- */
+-static void lsxl_power_off(void)
+-{
+-	kirkwood_restart('h', NULL);
+-}
+-
+-void __init lsxl_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-
+-	kirkwood_ge00_init(&lsxl_ge00_data);
+-	kirkwood_ge01_init(&lsxl_ge01_data);
+-
+-	/* register power-off method */
+-	pm_power_off = lsxl_power_off;
+-}
+--- a/arch/arm/mach-kirkwood/board-mplcec4.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright (C) 2012 MPL AG, Switzerland
+- * Stefan Peter <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-mplcec4.c
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data mplcec4_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-static struct mv643xx_eth_platform_data mplcec4_ge01_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(2),
+-};
+-
+-void __init mplcec4_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&mplcec4_ge00_data);
+-	kirkwood_ge01_init(&mplcec4_ge01_data);
+-}
+-
+-
+-
+--- a/arch/arm/mach-kirkwood/board-ns2.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright 2012 (C), Simon Guinot <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-ns2.c
+- *
+- * LaCie Network Space v2 board (and parents) initialization for drivers
+- * not converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/of.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data ns2_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init ns2_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	if (of_machine_is_compatible("lacie,cloudbox") ||
+-	    of_machine_is_compatible("lacie,netspace_lite_v2") ||
+-	    of_machine_is_compatible("lacie,netspace_mini_v2"))
+-		ns2_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
+-	kirkwood_ge00_init(&ns2_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-openblocks_a6.c
++++ /dev/null
+@@ -1,26 +0,0 @@
+-/*
+- * Copyright 2012 Nobuhiro Iwamatsu <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-openblocks_a6.c
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data openblocks_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init openblocks_a6_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&openblocks_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-readynas.c
++++ /dev/null
+@@ -1,28 +0,0 @@
+-/*
+- * NETGEAR ReadyNAS Duo v2 Board setup for drivers not already
+- * converted to DT.
+- *
+- * Copyright (C) 2013, Arnaud EBALARD <[email protected]>
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License
+- * as published by the Free Software Foundation; either version
+- * 2 of the License, or (at your option) any later version.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <mach/kirkwood.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data netgear_readynas_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init netgear_readynas_init(void)
+-{
+-	kirkwood_ge00_init(&netgear_readynas_ge00_data);
+-	kirkwood_pcie_init(KW_PCIE0);
+-}
+--- a/arch/arm/mach-kirkwood/board-ts219.c
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- *
+- * QNAP TS-11x/TS-21x Turbo NAS Board Setup via DT
+- *
+- * Copyright (C) 2012 Andrew Lunn <[email protected]>
+- *
+- * Based on the board file ts219-setup.c:
+- *
+- * Copyright (C) 2009  Martin Michlmayr <[email protected]>
+- * Copyright (C) 2008  Byron Bradley <[email protected]>
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License
+- * as published by the Free Software Foundation; either version
+- * 2 of the License, or (at your option) any later version.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <asm/mach-types.h>
+-#include <asm/mach/arch.h>
+-#include <mach/kirkwood.h>
+-#include "common.h"
+-#include "tsx1x-common.h"
+-
+-static struct mv643xx_eth_platform_data qnap_ts219_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init qnap_dt_ts219_init(void)
+-{
+-	u32 dev, rev;
+-
+-	kirkwood_pcie_id(&dev, &rev);
+-	if (dev == MV88F6282_DEV_ID)
+-		qnap_ts219_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
+-
+-	kirkwood_ge00_init(&qnap_ts219_ge00_data);
+-
+-	pm_power_off = qnap_tsx1x_power_off;
+-}
+--- a/arch/arm/mach-kirkwood/board-usi_topkick.c
++++ /dev/null
+@@ -1,29 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <[email protected]>
+- *
+- * arch/arm/mach-kirkwood/board-usi_topkick.c
+- *
+- * USI Topkick Init for drivers not converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2.  This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data topkick_ge00_data = {
+-	.phy_addr	= MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init usi_topkick_init(void)
+-{
+-	/*
+-	 * Basic setup. Needs to be called early.
+-	 */
+-	kirkwood_ge00_init(&topkick_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/common.h
++++ b/arch/arm/mach-kirkwood/common.h
+@@ -55,116 +55,12 @@ void kirkwood_restart(char, const char *
+ void kirkwood_clk_init(void);
+ 
+ /* board init functions for boards not fully converted to fdt */
+-#ifdef CONFIG_MACH_DREAMPLUG_DT
+-void dreamplug_init(void);
+-#else
+-static inline void dreamplug_init(void) {};
+-#endif
+-#ifdef CONFIG_MACH_GURUPLUG_DT
+-void guruplug_dt_init(void);
+-#else
+-static inline void guruplug_dt_init(void) {};
+-#endif
+-#ifdef CONFIG_MACH_TS219_DT
+-void qnap_dt_ts219_init(void);
+-#else
+-static inline void qnap_dt_ts219_init(void) {};
+-#endif
+-
+ #ifdef CONFIG_MACH_DLINK_KIRKWOOD_DT
+ void dnskw_init(void);
+ #else
+ static inline void dnskw_init(void) {};
+ #endif
+ 
+-#ifdef CONFIG_MACH_ICONNECT_DT
+-void iconnect_init(void);
+-#else
+-static inline void iconnect_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_IB62X0_DT
+-void ib62x0_init(void);
+-#else
+-static inline void ib62x0_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_DOCKSTAR_DT
+-void dockstar_dt_init(void);
+-#else
+-static inline void dockstar_dt_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_GOFLEXNET_DT
+-void goflexnet_init(void);
+-#else
+-static inline void goflexnet_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_LSXL_DT
+-void lsxl_init(void);
+-#else
+-static inline void lsxl_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_IOMEGA_IX2_200_DT
+-void iomega_ix2_200_init(void);
+-#else
+-static inline void iomega_ix2_200_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_KM_KIRKWOOD_DT
+-void km_kirkwood_init(void);
+-#else
+-static inline void km_kirkwood_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_DB88F628X_BP_DT
+-void db88f628x_init(void);
+-#else
+-static inline void db88f628x_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_MPLCEC4_DT
+-void mplcec4_init(void);
+-#else
+-static inline void mplcec4_init(void) {};
+-#endif
+-
+-#if defined(CONFIG_MACH_INETSPACE_V2_DT) || \
+-	defined(CONFIG_MACH_NETSPACE_V2_DT) || \
+-	defined(CONFIG_MACH_NETSPACE_MAX_V2_DT) || \
+-	defined(CONFIG_MACH_NETSPACE_LITE_V2_DT) || \
+-	defined(CONFIG_MACH_NETSPACE_MINI_V2_DT)
+-void ns2_init(void);
+-#else
+-static inline void ns2_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_OPENBLOCKS_A6_DT
+-void openblocks_a6_init(void);
+-#else
+-static inline void openblocks_a6_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_READYNAS_DT
+-void netgear_readynas_init(void);
+-#else
+-static inline void netgear_readynas_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_TOPKICK_DT
+-void usi_topkick_init(void);
+-#else
+-static inline void usi_topkick_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_CLOUDBOX_DT
+-void cloudbox_init(void);
+-#else
+-static inline void cloudbox_init(void) {};
+-#endif
+-
+ /* early init functions not converted to fdt yet */
+ char *kirkwood_id(void);
+ void kirkwood_l2_init(void);

+ 4 - 8
target/linux/kirkwood/patches-3.10/0026-ARM-kirkwood-remove-legacy-clk-alias-for-mv643xx_eth.patch → target/linux/kirkwood/patches-3.10/0028-ARM-kirkwood-remove-legacy-clk-alias-for-mv643xx_eth.patch

@@ -1,21 +1,20 @@
-From dcfe8d8652de29fae2e247137d0e776fdda60b14 Mon Sep 17 00:00:00 2001
+From 57bad8fd425fd4fd2ae6e4ae1e7e19c9281d2d3d Mon Sep 17 00:00:00 2001
 From: Sebastian Hesselbarth <[email protected]>
 From: Sebastian Hesselbarth <[email protected]>
 Date: Tue, 2 Jul 2013 13:00:23 +0200
 Date: Tue, 2 Jul 2013 13:00:23 +0200
-Subject: [PATCH 26/29] ARM: kirkwood: remove legacy clk alias for mv643xx_eth
+Subject: [PATCH 28/29] ARM: kirkwood: remove legacy clk alias for mv643xx_eth
 
 
 With all boards converted to DT enabled mv643xx_eth we can now
 With all boards converted to DT enabled mv643xx_eth we can now
 remove the clock alias for gbe clocks.
 remove the clock alias for gbe clocks.
 
 
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
 Signed-off-by: Sebastian Hesselbarth <[email protected]>
+Signed-off-by: Jason Cooper <[email protected]>
 ---
 ---
  arch/arm/mach-kirkwood/board-dt.c | 2 --
  arch/arm/mach-kirkwood/board-dt.c | 2 --
  1 file changed, 2 deletions(-)
  1 file changed, 2 deletions(-)
 
 
-diff --git a/arch/arm/mach-kirkwood/board-dt.c b/arch/arm/mach-kirkwood/board-dt.c
-index 15e61c8..a6ff0a8 100644
 --- a/arch/arm/mach-kirkwood/board-dt.c
 --- a/arch/arm/mach-kirkwood/board-dt.c
 +++ b/arch/arm/mach-kirkwood/board-dt.c
 +++ b/arch/arm/mach-kirkwood/board-dt.c
-@@ -66,12 +66,10 @@ static void __init kirkwood_legacy_clk_init(void)
+@@ -66,12 +66,10 @@ static void __init kirkwood_legacy_clk_i
  	 */
  	 */
  	clkspec.args[0] = CGC_BIT_GE0;
  	clkspec.args[0] = CGC_BIT_GE0;
  	clk = of_clk_get_from_provider(&clkspec);
  	clk = of_clk_get_from_provider(&clkspec);
@@ -28,6 +27,3 @@ index 15e61c8..a6ff0a8 100644
  	clk_prepare_enable(clk);
  	clk_prepare_enable(clk);
  }
  }
  
  
--- 
-1.8.4.rc1
-

+ 8 - 12
target/linux/kirkwood/patches-3.10/0027-net-mv643xx_eth-do-not-use-port-number-as-platform-d.patch → target/linux/kirkwood/patches-3.10/0029-net-mv643xx_eth-do-not-use-port-number-as-platform-d.patch

@@ -1,7 +1,7 @@
-From eac92acae29cfab34785d61cbb3218e88e487b77 Mon Sep 17 00:00:00 2001
+From dc4eff91629aa5132f9c0737ef6d9ef013d4f8ce Mon Sep 17 00:00:00 2001
 From: Jonas Gorski <[email protected]>
 From: Jonas Gorski <[email protected]>
-Date: Mon, 8 Jul 2013 00:35:12 +0200
-Subject: [PATCH 27/29] net: mv643xx_eth: do not use port number as platform
+Date: Mon, 8 Jul 2013 00:44:55 +0200
+Subject: [PATCH 29/29] net: mv643xx_eth: do not use port number as platform
  device id
  device id
 
 
 The port number is only local to the ethernet block, not global, so
 The port number is only local to the ethernet block, not global, so
@@ -12,15 +12,14 @@ Fix this by using the array index offset for the allocated platform
 devices as the id.
 devices as the id.
 
 
 Signed-off-by: Jonas Gorski <[email protected]>
 Signed-off-by: Jonas Gorski <[email protected]>
+Signed-off-by: David S. Miller <[email protected]>
 ---
 ---
  drivers/net/ethernet/marvell/mv643xx_eth.c | 13 +++++++++++--
  drivers/net/ethernet/marvell/mv643xx_eth.c | 13 +++++++++++--
  1 file changed, 11 insertions(+), 2 deletions(-)
  1 file changed, 11 insertions(+), 2 deletions(-)
 
 
-diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
-index 004a250..e57d292 100644
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
 +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
-@@ -2483,6 +2483,7 @@ static int mv643xx_eth_shared_of_add_port(struct platform_device *pdev,
+@@ -2483,6 +2483,7 @@ static int mv643xx_eth_shared_of_add_por
  	struct resource res;
  	struct resource res;
  	const char *mac_addr;
  	const char *mac_addr;
  	int ret;
  	int ret;
@@ -28,7 +27,7 @@ index 004a250..e57d292 100644
  
  
  	memset(&ppd, 0, sizeof(ppd));
  	memset(&ppd, 0, sizeof(ppd));
  	ppd.shared = pdev;
  	ppd.shared = pdev;
-@@ -2503,6 +2504,14 @@ static int mv643xx_eth_shared_of_add_port(struct platform_device *pdev,
+@@ -2503,6 +2504,14 @@ static int mv643xx_eth_shared_of_add_por
  		return -EINVAL;
  		return -EINVAL;
  	}
  	}
  
  
@@ -43,7 +42,7 @@ index 004a250..e57d292 100644
  	mac_addr = of_get_mac_address(pnp);
  	mac_addr = of_get_mac_address(pnp);
  	if (mac_addr)
  	if (mac_addr)
  		memcpy(ppd.mac_addr, mac_addr, 6);
  		memcpy(ppd.mac_addr, mac_addr, 6);
-@@ -2521,7 +2530,7 @@ static int mv643xx_eth_shared_of_add_port(struct platform_device *pdev,
+@@ -2521,7 +2530,7 @@ static int mv643xx_eth_shared_of_add_por
  		of_property_read_u32(pnp, "duplex", &ppd.duplex);
  		of_property_read_u32(pnp, "duplex", &ppd.duplex);
  	}
  	}
  
  
@@ -52,7 +51,7 @@ index 004a250..e57d292 100644
  	if (!ppdev)
  	if (!ppdev)
  		return -ENOMEM;
  		return -ENOMEM;
  	ppdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
  	ppdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
-@@ -2538,7 +2547,7 @@ static int mv643xx_eth_shared_of_add_port(struct platform_device *pdev,
+@@ -2538,7 +2547,7 @@ static int mv643xx_eth_shared_of_add_por
  	if (ret)
  	if (ret)
  		goto port_err;
  		goto port_err;
  
  
@@ -61,6 +60,3 @@ index 004a250..e57d292 100644
  
  
  	return 0;
  	return 0;
  
  
--- 
-1.8.4.rc1
-

+ 2 - 7
target/linux/kirkwood/patches-3.10/0050-of-add-support-for-parsing-mac-addresses-from-mtd.patch

@@ -8,8 +8,6 @@ Signed-off-by: Jonas Gorski <[email protected]>
  drivers/of/of_net.c | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++-
  drivers/of/of_net.c | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++-
  1 file changed, 99 insertions(+), 1 deletion(-)
  1 file changed, 99 insertions(+), 1 deletion(-)
 
 
-diff --git a/drivers/of/of_net.c b/drivers/of/of_net.c
-index ffab033..8b40ac6 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 @@
@@ -20,7 +18,7 @@ index ffab033..8b40ac6 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
-@@ -55,6 +56,103 @@ const int of_get_phy_mode(struct device_node *np)
+@@ -55,6 +56,103 @@ const int of_get_phy_mode(struct device_
  }
  }
  EXPORT_SYMBOL_GPL(of_get_phy_mode);
  EXPORT_SYMBOL_GPL(of_get_phy_mode);
  
  
@@ -124,7 +122,7 @@ index ffab033..8b40ac6 100644
  /**
  /**
   * Search the device tree for the best MAC address to use.  'mac-address' is
   * Search the device tree for the best MAC address to use.  'mac-address' is
   * checked first, because that is supposed to contain to "most recent" MAC
   * checked first, because that is supposed to contain to "most recent" MAC
-@@ -89,6 +187,6 @@ const void *of_get_mac_address(struct device_node *np)
+@@ -89,6 +187,6 @@ const void *of_get_mac_address(struct de
  	if (pp && (pp->length == 6) && is_valid_ether_addr(pp->value))
  	if (pp && (pp->length == 6) && is_valid_ether_addr(pp->value))
  		return pp->value;
  		return pp->value;
  
  
@@ -132,6 +130,3 @@ index ffab033..8b40ac6 100644
 +	return of_get_mac_address_mtd(np);
 +	return of_get_mac_address_mtd(np);
  }
  }
  EXPORT_SYMBOL(of_get_mac_address);
  EXPORT_SYMBOL(of_get_mac_address);
--- 
-1.8.4.rc1
-

+ 84 - 0
target/linux/kirkwood/patches-3.10/110-ib62x0.patch

@@ -0,0 +1,84 @@
+--- a/arch/arm/boot/dts/kirkwood-ib62x0.dts
++++ b/arch/arm/boot/dts/kirkwood-ib62x0.dts
+@@ -5,7 +5,7 @@
+ 
+ / {
+ 	model = "RaidSonic ICY BOX IB-NAS62x0 (Rev B)";
+-	compatible = "raidsonic,ib-nas6210-b", "raidsonic,ib-nas6220-b", "raidsonic,ib-nas6210", "raidsonic,ib-nas6220", "raidsonic,ib-nas62x0",  "marvell,kirkwood-88f6281", "marvell,kirkwood";
++	compatible = "raidsonic,ib-nas6210-b", "raidsonic,ib-nas6220-b", "raidsonic,ib-nas6210", "raidsonic,ib-nas6220", "raidsonic,ib-nas62x0", "marvell,kirkwood-88f6281", "marvell,kirkwood";
+ 
+ 	memory {
+ 		device_type = "memory";
+@@ -50,6 +50,7 @@
+ 				marvell,function = "gpio";
+ 			};
+ 		};
++
+ 		serial@12000 {
+ 			status = "okay";
+ 		};
+@@ -64,19 +65,18 @@
+ 
+ 			partition@0 {
+ 				label = "u-boot";
+-				reg = <0x0000000 0x100000>;
++				reg = <0x0000000 0xe0000>;
+ 			};
+ 
+-			partition@100000 {
+-				label = "uImage";
+-				reg = <0x0100000 0x600000>;
++			partition@e0000 {
++				label = "u-boot environment";
++				reg = <0xe0000 0x100000>;
+ 			};
+ 
+-			partition@700000 {
+-				label = "root";
+-				reg = <0x0700000 0xf900000>;
++			partition@100000 {
++				label = "rootfs";
++				reg = <0x100000 0xff00000>;
+ 			};
+-
+ 		};
+ 	};
+ 
+@@ -84,6 +84,7 @@
+ 		compatible = "gpio-keys";
+ 		#address-cells = <1>;
+ 		#size-cells = <0>;
++
+ 		button@1 {
+ 			label = "USB Copy";
+ 			linux,code = <133>;
+@@ -95,6 +96,7 @@
+ 			gpios = <&gpio0 28 1>;
+ 		};
+ 	};
++
+ 	gpio-leds {
+ 		compatible = "gpio-leds";
+ 
+@@ -112,12 +114,11 @@
+ 			gpios = <&gpio0 27 0>;
+ 		};
+ 	};
++
+ 	gpio_poweroff {
+ 		compatible = "gpio-poweroff";
+ 		gpios = <&gpio0 24 0>;
+ 	};
+-
+-
+ };
+ 
+ &mdio {
+@@ -131,6 +132,7 @@
+ 
+ &eth0 {
+ 	status = "okay";
++
+ 	ethernet0-port@0 {
+ 		phy-handle = <&ethphy0>;
+ 	};