From ff58943d8ec03f72609c9248b56f549f75baf505 Mon Sep 17 00:00:00 2001 From: Arne Fitzenreiter Date: Sat, 15 Feb 2020 17:06:24 +0000 Subject: [PATCH] kernel: cleanup unused kirkwood patches Signed-off-by: Arne Fitzenreiter --- .../linux-3.14.22-kirkwood_legacy_boot.patch | 1563 ----------------- .../linux/linux-4.14.40-kirkwood-dtb.patch | 59 - 2 files changed, 1622 deletions(-) delete mode 100644 src/patches/linux-3.14.22-kirkwood_legacy_boot.patch delete mode 100644 src/patches/linux/linux-4.14.40-kirkwood-dtb.patch diff --git a/src/patches/linux-3.14.22-kirkwood_legacy_boot.patch b/src/patches/linux-3.14.22-kirkwood_legacy_boot.patch deleted file mode 100644 index 97b2cc1f27..0000000000 --- a/src/patches/linux-3.14.22-kirkwood_legacy_boot.patch +++ /dev/null @@ -1,1563 +0,0 @@ -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/db88f6281-bp-setup.c linux-3.14.22/arch/arm/mach-kirkwood/db88f6281-bp-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/db88f6281-bp-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/db88f6281-bp-setup.c 2014-11-05 22:07:58.828714499 +0100 -@@ -0,0 +1,108 @@ -+/* -+ * arch/arm/mach-kirkwood/db88f6281-bp-setup.c -+ * -+ * Marvell DB-88F6281-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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static struct mtd_partition db88f6281_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = SZ_4M -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL -+ }, -+}; -+ -+static struct mv643xx_eth_platform_data db88f6281_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(8), -+}; -+ -+static struct mv_sata_platform_data db88f6281_sata_data = { -+ .n_ports = 2, -+}; -+ -+static struct mvsdio_platform_data db88f6281_mvsdio_data = { -+ .gpio_write_protect = 37, -+ .gpio_card_detect = 38, -+}; -+ -+static unsigned int db88f6281_mpp_config[] __initdata = { -+ MPP0_NF_IO2, -+ MPP1_NF_IO3, -+ MPP2_NF_IO4, -+ MPP3_NF_IO5, -+ MPP4_NF_IO6, -+ MPP5_NF_IO7, -+ MPP18_NF_IO0, -+ MPP19_NF_IO1, -+ MPP37_GPIO, -+ MPP38_GPIO, -+ 0 -+}; -+ -+static void __init db88f6281_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(db88f6281_mpp_config); -+ -+ kirkwood_nand_init(ARRAY_AND_SIZE(db88f6281_nand_parts), 25); -+ kirkwood_ehci_init(); -+ kirkwood_ge00_init(&db88f6281_ge00_data); -+ kirkwood_sata_init(&db88f6281_sata_data); -+ kirkwood_uart0_init(); -+ kirkwood_sdio_init(&db88f6281_mvsdio_data); -+} -+ -+static int __init db88f6281_pci_init(void) -+{ -+ if (machine_is_db88f6281_bp()) { -+ u32 dev, rev; -+ -+ kirkwood_pcie_id(&dev, &rev); -+ if (dev == MV88F6282_DEV_ID) -+ kirkwood_pcie_init(KW_PCIE1 | KW_PCIE0); -+ else -+ kirkwood_pcie_init(KW_PCIE0); -+ } -+ return 0; -+} -+subsys_initcall(db88f6281_pci_init); -+ -+MACHINE_START(DB88F6281_BP, "Marvell DB-88F6281-BP Development Board") -+ /* Maintainer: Saeed Bishara */ -+ .atag_offset = 0x100, -+ .init_machine = db88f6281_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/dockstar-setup.c linux-3.14.22/arch/arm/mach-kirkwood/dockstar-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/dockstar-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/dockstar-setup.c 2014-11-05 22:07:58.828714499 +0100 -@@ -0,0 +1,111 @@ -+/* -+ * arch/arm/mach-kirkwood/dockstar-setup.c -+ * -+ * Seagate FreeAgent DockStar 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static struct mtd_partition dockstar_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = SZ_4M -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL -+ }, -+}; -+ -+static struct mv643xx_eth_platform_data dockstar_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(0), -+}; -+ -+static struct gpio_led dockstar_led_pins[] = { -+ { -+ .name = "dockstar:green:health", -+ .default_trigger = "default-on", -+ .gpio = 46, -+ .active_low = 1, -+ }, -+ { -+ .name = "dockstar:orange:misc", -+ .default_trigger = "none", -+ .gpio = 47, -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_led_platform_data dockstar_led_data = { -+ .leds = dockstar_led_pins, -+ .num_leds = ARRAY_SIZE(dockstar_led_pins), -+}; -+ -+static struct platform_device dockstar_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &dockstar_led_data, -+ } -+}; -+ -+static unsigned int dockstar_mpp_config[] __initdata = { -+ MPP29_GPIO, /* USB Power Enable */ -+ MPP46_GPIO, /* LED green */ -+ MPP47_GPIO, /* LED orange */ -+ 0 -+}; -+ -+static void __init dockstar_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ -+ /* setup gpio pin select */ -+ kirkwood_mpp_conf(dockstar_mpp_config); -+ -+ kirkwood_uart0_init(); -+ kirkwood_nand_init(ARRAY_AND_SIZE(dockstar_nand_parts), 25); -+ -+ if (gpio_request(29, "USB Power Enable") != 0 || -+ gpio_direction_output(29, 1) != 0) -+ pr_err("can't set up GPIO 29 (USB Power Enable)\n"); -+ kirkwood_ehci_init(); -+ -+ kirkwood_ge00_init(&dockstar_ge00_data); -+ -+ platform_device_register(&dockstar_leds); -+} -+ -+MACHINE_START(DOCKSTAR, "Seagate FreeAgent DockStar") -+ .atag_offset = 0x100, -+ .init_machine = dockstar_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/dreamplug-setup.c linux-3.14.22/arch/arm/mach-kirkwood/dreamplug-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/dreamplug-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/dreamplug-setup.c 2014-11-05 22:07:58.833714499 +0100 -@@ -0,0 +1,151 @@ -+/* -+ * arch/arm/mach-kirkwood/dreamplug-setup.c -+ * -+ * Marvell DreamPlug Reference 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static const struct flash_platform_data dreamplug_spi_slave_data = { -+ .type = "mx25l1606e", -+}; -+ -+static struct spi_board_info __initdata dreamplug_spi_slave_info[] = { -+ { -+ .modalias = "m25p80", -+ .platform_data = &dreamplug_spi_slave_data, -+ .irq = -1, -+ .max_speed_hz = 50000000, -+ .bus_num = 0, -+ .chip_select = 0, -+ }, -+}; -+ -+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), -+}; -+ -+static struct mv_sata_platform_data dreamplug_sata_data = { -+ .n_ports = 1, -+}; -+ -+static struct mvsdio_platform_data dreamplug_mvsdio_data = { -+ /* unfortunately the CD signal has not been connected */ -+}; -+ -+static struct gpio_led dreamplug_led_pins[] = { -+ { -+ .name = "dreamplug:blue:bluetooth", -+ .gpio = 47, -+ .active_low = 1, -+ }, -+ { -+ .name = "dreamplug:green:wlan", -+ .gpio = 48, -+ .active_low = 1, -+ }, -+ { -+ .name = "dreamplug:blue:wlanap", -+ .gpio = 49, -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_led_platform_data dreamplug_led_data = { -+ .leds = dreamplug_led_pins, -+ .num_leds = ARRAY_SIZE(dreamplug_led_pins), -+}; -+ -+static struct platform_device dreamplug_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &dreamplug_led_data, -+ } -+}; -+ -+static unsigned int dreamplug_mpp_config[] __initdata = { -+ MPP0_SPI_SCn, -+ MPP1_SPI_MOSI, -+ MPP2_SPI_SCK, -+ MPP3_SPI_MISO, -+ MPP4_GPIO, -+ MPP5_GPO, -+ MPP7_GPO, -+ MPP18_GPO, -+ MPP19_GPO, -+ MPP47_GPIO, /* B_BLED */ -+ MPP48_GPIO, /* W_GLED */ -+ MPP49_GPIO, /* W_BLED */ -+ 0 -+}; -+ -+static void __init dreamplug_legacy_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(dreamplug_mpp_config); -+ -+ kirkwood_uart0_init(); -+ -+ spi_register_board_info(dreamplug_spi_slave_info, -+ ARRAY_SIZE(dreamplug_spi_slave_info)); -+ -+ kirkwood_spi_init(); -+ kirkwood_ehci_init(); -+ -+ kirkwood_ge00_init(&dreamplug_ge00_data); -+ kirkwood_ge01_init(&dreamplug_ge01_data); -+ kirkwood_sata_init(&dreamplug_sata_data); -+ kirkwood_sdio_init(&dreamplug_mvsdio_data); -+ -+ platform_device_register(&dreamplug_leds); -+} -+ -+MACHINE_START(DREAMPLUG, "Marvell DreamPlug Reference Board") -+ /* Maintainer: Siddarth Gore marvell.com> */ -+ .atag_offset = 0x100, -+ .init_machine = dreamplug_legacy_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+ -+MACHINE_START(DREAMPLUG1, "Marvell DreamPlug Reference Board") -+ .atag_offset = 0x100, -+ .init_machine = dreamplug_legacy_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+ -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/guruplug-setup.c linux-3.14.22/arch/arm/mach-kirkwood/guruplug-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/guruplug-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/guruplug-setup.c 2014-11-05 22:07:58.838714499 +0100 -@@ -0,0 +1,135 @@ -+/* -+ * arch/arm/mach-kirkwood/guruplug-setup.c -+ * -+ * Marvell GuruPlug Reference 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static struct mtd_partition guruplug_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M, -+ .mask_flags = MTD_WRITEABLE, /* read only */ -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = SZ_4M, -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL, -+ }, -+}; -+ -+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), -+}; -+ -+static struct mv_sata_platform_data guruplug_sata_data = { -+ .n_ports = 1, -+}; -+ -+static struct mvsdio_platform_data guruplug_mvsdio_data = { -+ /* unfortunately the CD signal has not been connected */ -+ .gpio_card_detect = -1, -+ .gpio_write_protect = -1, -+}; -+ -+static struct gpio_led guruplug_led_pins[] = { -+ { -+ .name = "guruplug:red:health", -+ .gpio = 46, -+ .active_low = 1, -+ }, -+ { -+ .name = "guruplug:green:health", -+ .gpio = 47, -+ .active_low = 1, -+ }, -+ { -+ .name = "guruplug:red:wmode", -+ .gpio = 48, -+ .active_low = 1, -+ }, -+ { -+ .name = "guruplug:green:wmode", -+ .gpio = 49, -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_led_platform_data guruplug_led_data = { -+ .leds = guruplug_led_pins, -+ .num_leds = ARRAY_SIZE(guruplug_led_pins), -+}; -+ -+static struct platform_device guruplug_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &guruplug_led_data, -+ } -+}; -+ -+static unsigned int guruplug_mpp_config[] __initdata = { -+ MPP46_GPIO, /* M_RLED */ -+ MPP47_GPIO, /* M_GLED */ -+ MPP48_GPIO, /* B_RLED */ -+ MPP49_GPIO, /* B_GLED */ -+ 0 -+}; -+ -+static void __init guruplug_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(guruplug_mpp_config); -+ -+ kirkwood_uart0_init(); -+ kirkwood_nand_init(ARRAY_AND_SIZE(guruplug_nand_parts), 25); -+ -+ kirkwood_ehci_init(); -+ kirkwood_ge00_init(&guruplug_ge00_data); -+ kirkwood_ge01_init(&guruplug_ge01_data); -+ kirkwood_sata_init(&guruplug_sata_data); -+ kirkwood_sdio_init(&guruplug_mvsdio_data); -+ -+ platform_device_register(&guruplug_leds); -+} -+ -+MACHINE_START(GURUPLUG, "Marvell GuruPlug Reference Board") -+ /* Maintainer: Siddarth Gore */ -+ .atag_offset = 0x100, -+ .init_machine = guruplug_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/iconnect-setup.c linux-3.14.22/arch/arm/mach-kirkwood/iconnect-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/iconnect-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/iconnect-setup.c 2014-11-05 22:07:58.843714499 +0100 -@@ -0,0 +1,214 @@ -+/* -+ * arch/arm/mach-kirkwood/iconnect-setup.c -+ * -+ * Iomega iConnect Wireless Data Station 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static struct mtd_partition iconnect_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M, -+ .mask_flags = MTD_WRITEABLE, /* read only */ -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = 0x440000, -+ }, { -+ .name = "uInit", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = 0x440000, -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL, -+ }, -+}; -+ -+static struct mv643xx_eth_platform_data iconnect_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(0xB), -+}; -+ -+static struct gpio_led iconnect_led_pins[] = { -+ { -+ .name = "iconnect:led_level", -+ .default_trigger = "default-on", -+ .gpio = 41, -+ .active_low = 0, -+ }, -+ -+ { -+ .name = "iconnect:blue:power", -+ .default_trigger = "default-on", -+ .gpio = 42, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:red:power", -+ .default_trigger = "none", -+ .gpio = 43, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:blue:usb_1", -+ .default_trigger = "none", -+ .gpio = 44, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:blue:usb_2", -+ .default_trigger = "none", -+ .gpio = 45, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:blue:usb_3", -+ .default_trigger = "none", -+ .gpio = 46, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:blue:usb_4", -+ .default_trigger = "none", -+ .gpio = 47, -+ .active_low = 0, -+ }, -+ { -+ .name = "iconnect:blue:otb", -+ .default_trigger = "none", -+ .gpio = 48, -+ .active_low = 0, -+ }, -+}; -+ -+static struct gpio_led_platform_data iconnect_led_data = { -+ .leds = iconnect_led_pins, -+ .num_leds = ARRAY_SIZE(iconnect_led_pins), -+}; -+ -+static struct platform_device iconnect_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &iconnect_led_data, -+ } -+}; -+ -+static struct gpio_keys_button iconnect_buttons[] = { -+ { -+ .code = KEY_COPY, -+ .gpio = 35, -+ .desc = "OTB Button", -+ .active_low = 1, -+ }, -+ { -+ .code = KEY_RESTART, -+ .gpio = 12, -+ .desc = "Reset", -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_keys_platform_data iconnect_button_data = { -+ .buttons = iconnect_buttons, -+ .nbuttons = ARRAY_SIZE(iconnect_buttons), -+}; -+ -+static struct platform_device iconnect_button_device = { -+ .name = "gpio-keys", -+ .id = -1, -+ .num_resources = 0, -+ .dev = { -+ .platform_data = &iconnect_button_data, -+ } -+}; -+ -+static unsigned int iconnect_mpp_config[] __initdata = { -+ MPP0_NF_IO2, -+ MPP1_NF_IO3, -+ MPP2_NF_IO4, -+ MPP3_NF_IO5, -+ MPP4_NF_IO6, -+ MPP5_NF_IO7, -+ MPP18_NF_IO0, -+ MPP19_NF_IO1, -+ MPP12_GPIO, /* Reset Button */ -+ MPP35_GPIO, /* OTB Button */ -+ -+ MPP41_GPIO, /* LED Level */ -+ MPP42_GPIO, /* Power LED blue */ -+ MPP43_GPIO, /* Power LED red */ -+ MPP44_GPIO, /* USB LED 1 */ -+ MPP45_GPIO, /* USB LED 2 */ -+ MPP46_GPIO, /* USB LED 3 */ -+ MPP47_GPIO, /* USB LED 4 */ -+ MPP48_GPIO, /* OTB LED */ -+ 0 -+}; -+ -+static struct i2c_board_info __initdata iconnect_i2c = { -+ I2C_BOARD_INFO("lm63", 0x4c), -+}; -+ -+static void __init iconnect_legacy_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(iconnect_mpp_config); -+ -+ kirkwood_nand_init(ARRAY_AND_SIZE(iconnect_nand_parts), 25); -+ kirkwood_ehci_init(); -+ kirkwood_ge00_init(&iconnect_ge00_data); -+ -+ kirkwood_uart0_init(); -+ platform_device_register(&iconnect_leds); -+ platform_device_register(&iconnect_button_device); -+ -+ kirkwood_i2c_init(); -+ i2c_register_board_info(0, &iconnect_i2c,1); -+} -+ -+static int __init iconnect_pci_init(void) -+{ -+ if (machine_is_iconnect()) { -+ kirkwood_pcie_init(KW_PCIE0); -+ } -+ return 0; -+} -+subsys_initcall(iconnect_pci_init); -+ -+MACHINE_START(ICONNECT, "Iomega iConnect Wireless Data Station") -+ /* Maintainer: Arne Fitzenreiter */ -+ .atag_offset = 0x100, -+ .init_machine = iconnect_legacy_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+ -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/Kconfig linux-3.14.22/arch/arm/mach-kirkwood/Kconfig ---- linux-3.14.22.org/arch/arm/mach-kirkwood/Kconfig 2014-10-15 08:42:04.000000000 +0200 -+++ linux-3.14.22/arch/arm/mach-kirkwood/Kconfig 2014-11-05 22:07:58.848714499 +0100 -@@ -1,3 +1,5 @@ -+ -+ - if ARCH_KIRKWOOD - - menu "Marvell Kirkwood Implementations" -@@ -72,6 +74,83 @@ - Say 'Y' here if you want your kernel to support the - HP t5325 Thin Client. - -+config MACH_DB88F6281_BP -+ bool "Marvell DB-88F6281-BP Development Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ Marvell DB-88F6281-BP Development Board. -+ -+config MACH_DOCKSTAR -+ bool "Seagate FreeAgent DockStar" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ Seagate FreeAgent DockStar. -+ -+config MACH_SHEEVAPLUG -+ bool "Marvell SheevaPlug Reference Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ Marvell SheevaPlug Reference Board. -+ -+config MACH_ESATA_SHEEVAPLUG -+ bool "Marvell eSATA SheevaPlug Reference Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ Marvell eSATA SheevaPlug Reference Board. -+ -+config MACH_GURUPLUG -+ bool "Marvell GuruPlug Reference Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ Marvell GuruPlug Reference Board. -+ -+config MACH_INETSPACE_V2 -+ bool "LaCie Internet Space v2 NAS Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ LaCie Internet Space v2 NAS. -+ -+config MACH_NETSPACE_MAX_V2 -+ bool "LaCie Network Space Max v2 NAS Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ LaCie Network Space Max v2 NAS. -+ -+config MACH_NETSPACE_V2 -+ bool "LaCie Network Space v2 NAS Board" -+ select KIRKWOOD_LEGACY -+ help -+ Say 'Y' here if you want your kernel to support the -+ LaCie Network Space v2 NAS. -+ -+config MACH_DREAMPLUG -+ select KIRKWOOD_LEGACY -+ bool "Marvell DreamPlug Reference Board" -+ help -+ Say 'Y' here if you want your kernel to support the -+ Marvell DreamPlug Reference Board. -+ -+config MACH_ICONNECT -+ select KIRKWOOD_LEGACY -+ bool "Iomega iConnect Wireless Data Station" -+ help -+ Say 'Y' here if you want your kernel to support the -+ Iomega iConnect Wireless Data Station. -+ -+config MACH_NAS6210 -+ select KIRKWOOD_LEGACY -+ bool "Raidsonic ICY BOX IB-62x0" -+ help -+ Say 'Y' here if you want your kernel to support the -+ Raidsonic ICY BOX IB-62x0. -+ - config MACH_TS219 - bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS" - select KIRKWOOD_LEGACY -@@ -113,6 +192,7 @@ - Say 'Y' here if you want your kernel to support the - Marvell 88F6281 GTW GE Board (Flattened Device Tree). - -+ - endmenu - - endif -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/Makefile linux-3.14.22/arch/arm/mach-kirkwood/Makefile ---- linux-3.14.22.org/arch/arm/mach-kirkwood/Makefile 2014-10-15 08:42:04.000000000 +0200 -+++ linux-3.14.22/arch/arm/mach-kirkwood/Makefile 2014-11-05 22:09:01.758714529 +0100 -@@ -2,6 +2,15 @@ - obj-$(CONFIG_KIRKWOOD_LEGACY) += irq.o mpp.o - obj-$(CONFIG_PM) += pm.o - -+obj-$(CONFIG_MACH_DB88F6281_BP) += db88f6281-bp-setup.o -+obj-$(CONFIG_MACH_DOCKSTAR) += dockstar-setup.o -+obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG) += sheevaplug-setup.o -+obj-$(CONFIG_MACH_GURUPLUG) += guruplug-setup.o -+obj-$(CONFIG_MACH_DREAMPLUG) += dreamplug-setup.o -+obj-$(CONFIG_MACH_INETSPACE_V2) += netspace_v2-setup.o lacie_v2-common.o -+obj-$(CONFIG_MACH_NETSPACE_MAX_V2) += netspace_v2-setup.o lacie_v2-common.o -+obj-$(CONFIG_MACH_NETSPACE_V2) += netspace_v2-setup.o lacie_v2-common.o -+obj-$(CONFIG_MACH_SHEEVAPLUG) += sheevaplug-setup.o - obj-$(CONFIG_MACH_D2NET_V2) += d2net_v2-setup.o lacie_v2-common.o - obj-$(CONFIG_MACH_NET2BIG_V2) += netxbig_v2-setup.o lacie_v2-common.o - obj-$(CONFIG_MACH_NET5BIG_V2) += netxbig_v2-setup.o lacie_v2-common.o -@@ -11,6 +20,8 @@ - obj-$(CONFIG_MACH_T5325) += t5325-setup.o - obj-$(CONFIG_MACH_TS219) += ts219-setup.o tsx1x-common.o - obj-$(CONFIG_MACH_TS41X) += ts41x-setup.o tsx1x-common.o -+obj-$(CONFIG_MACH_ICONNECT) += iconnect-setup.o -+obj-$(CONFIG_MACH_NAS6210) += nas6210-setup.o - - obj-$(CONFIG_ARCH_KIRKWOOD_DT) += board-dt.o - obj-$(CONFIG_MACH_MV88F6281GTW_GE_DT) += board-mv88f6281gtw_ge.o -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/nas6210-setup.c linux-3.14.22/arch/arm/mach-kirkwood/nas6210-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/nas6210-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/nas6210-setup.c 2014-11-05 22:07:58.858714499 +0100 -@@ -0,0 +1,185 @@ -+/* -+ * arch/arm/mach-kirkwood/nas6210-setup.c -+ * -+ * Raidsonic ICYBOX NAS6210 and 6220 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+#define NAS6210_GPIO_POWER_OFF 24 -+ -+static struct mtd_partition nas6210_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M, -+ .mask_flags = MTD_WRITEABLE, /* read only */ -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = (SZ_1M*6), -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL, -+ }, -+}; -+ -+static struct mv643xx_eth_platform_data nas6210_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(8), -+}; -+ -+static struct mv_sata_platform_data nas6210_sata_data = { -+ .n_ports = 2, -+}; -+ -+static struct gpio_led nas6210_led_pins[] = { -+ { -+ .name = "nas6210:green:power", -+ .default_trigger = "default-on", -+ .gpio = 25, -+ .active_low = 0, -+ }, -+ { -+ .name = "nas6210:red:power", -+ .default_trigger = "none", -+ .gpio = 22, -+ .active_low = 0, -+ }, -+ { -+ .name = "nas6210:red:usb_copy", -+ .default_trigger = "none", -+ .gpio = 27, -+ .active_low = 0, -+ }, -+}; -+ -+static struct gpio_led_platform_data nas6210_led_data = { -+ .leds = nas6210_led_pins, -+ .num_leds = ARRAY_SIZE(nas6210_led_pins), -+}; -+ -+static struct platform_device nas6210_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &nas6210_led_data, -+ } -+}; -+ -+static struct gpio_keys_button nas6210_buttons[] = { -+ { -+ .code = KEY_COPY, -+ .gpio = 29, -+ .desc = "USB Copy", -+ .active_low = 1, -+ }, -+ { -+ .code = KEY_RESTART, -+ .gpio = 28, -+ .desc = "Reset", -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_keys_platform_data nas6210_button_data = { -+ .buttons = nas6210_buttons, -+ .nbuttons = ARRAY_SIZE(nas6210_buttons), -+}; -+ -+static struct platform_device nas6210_button_device = { -+ .name = "gpio-keys", -+ .id = -1, -+ .num_resources = 0, -+ .dev = { -+ .platform_data = &nas6210_button_data, -+ } -+}; -+ -+static unsigned int nas6210_mpp_config[] __initdata = { -+ MPP0_NF_IO2, -+ MPP1_NF_IO3, -+ MPP2_NF_IO4, -+ MPP3_NF_IO5, -+ MPP4_NF_IO6, -+ MPP5_NF_IO7, -+ MPP18_NF_IO0, -+ MPP19_NF_IO1, -+ MPP22_GPIO, /* Power LED red */ -+ MPP24_GPIO, /* Power off */ -+ MPP25_GPIO, /* Power LED green */ -+ MPP27_GPIO, /* USB transfer LED */ -+ MPP28_GPIO, /* Reset button */ -+ MPP29_GPIO, /* USB Copy button */ -+ 0 -+}; -+ -+void nas6210_power_off(void) -+{ -+ gpio_set_value(NAS6210_GPIO_POWER_OFF, 1); -+ while(1); -+} -+ -+static void __init nas6210_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(nas6210_mpp_config); -+ -+ kirkwood_nand_init(ARRAY_AND_SIZE(nas6210_nand_parts), 25); -+ kirkwood_ehci_init(); -+ kirkwood_ge00_init(&nas6210_ge00_data); -+ kirkwood_sata_init(&nas6210_sata_data); -+ kirkwood_uart0_init(); -+ platform_device_register(&nas6210_leds); -+ platform_device_register(&nas6210_button_device); -+ -+ if (gpio_request(NAS6210_GPIO_POWER_OFF, "power-off") == 0 && -+ gpio_direction_output(NAS6210_GPIO_POWER_OFF, 0) == 0) -+ pm_power_off = nas6210_power_off; -+ -+ else -+ pr_err("nas6210: failed to configure power-off gpio pin"); -+} -+ -+static int __init nas6210_pci_init(void) -+{ -+ if (machine_is_nas6210()) { -+ kirkwood_pcie_init(KW_PCIE0); -+ } -+ return 0; -+} -+subsys_initcall(nas6210_pci_init); -+ -+MACHINE_START(NAS6210, "RaidSonic ICY BOX IB-NAS62x0") -+ /* Maintainer: Arne Fitzenreiter */ -+ .atag_offset = 0x00000100, -+ .init_machine = nas6210_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/netspace_v2-setup.c linux-3.14.22/arch/arm/mach-kirkwood/netspace_v2-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/netspace_v2-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/netspace_v2-setup.c 2014-11-05 22:07:58.858714499 +0100 -@@ -0,0 +1,293 @@ -+/* -+ * arch/arm/mach-kirkwood/netspace_v2-setup.c -+ * -+ * LaCie Network Space v2 board setup -+ * -+ * Copyright (C) 2009 Simon Guinot -+ * Copyright (C) 2009 Benoît Canet -+ * -+ * 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. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+#include "lacie_v2-common.h" -+ -+/***************************************************************************** -+ * Ethernet -+ ****************************************************************************/ -+ -+static struct mv643xx_eth_platform_data netspace_v2_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(8), -+}; -+ -+/***************************************************************************** -+ * SATA -+ ****************************************************************************/ -+ -+static struct mv_sata_platform_data netspace_v2_sata_data = { -+ .n_ports = 2, -+}; -+ -+/***************************************************************************** -+ * GPIO keys -+ ****************************************************************************/ -+ -+#define NETSPACE_V2_PUSH_BUTTON 32 -+ -+static struct gpio_keys_button netspace_v2_buttons[] = { -+ [0] = { -+ .code = KEY_POWER, -+ .gpio = NETSPACE_V2_PUSH_BUTTON, -+ .desc = "Power push button", -+ .active_low = 0, -+ }, -+}; -+ -+static struct gpio_keys_platform_data netspace_v2_button_data = { -+ .buttons = netspace_v2_buttons, -+ .nbuttons = ARRAY_SIZE(netspace_v2_buttons), -+}; -+ -+static struct platform_device netspace_v2_gpio_buttons = { -+ .name = "gpio-keys", -+ .id = -1, -+ .dev = { -+ .platform_data = &netspace_v2_button_data, -+ }, -+}; -+ -+/***************************************************************************** -+ * GPIO LEDs -+ ****************************************************************************/ -+ -+#define NETSPACE_V2_GPIO_RED_LED 12 -+ -+static struct gpio_led netspace_v2_gpio_led_pins[] = { -+ { -+ .name = "ns_v2:red:fail", -+ .gpio = NETSPACE_V2_GPIO_RED_LED, -+ }, -+}; -+ -+static struct gpio_led_platform_data netspace_v2_gpio_leds_data = { -+ .num_leds = ARRAY_SIZE(netspace_v2_gpio_led_pins), -+ .leds = netspace_v2_gpio_led_pins, -+}; -+ -+static struct platform_device netspace_v2_gpio_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &netspace_v2_gpio_leds_data, -+ }, -+}; -+ -+/***************************************************************************** -+ * Dual-GPIO CPLD LEDs -+ ****************************************************************************/ -+ -+#define NETSPACE_V2_GPIO_BLUE_LED_SLOW 29 -+#define NETSPACE_V2_GPIO_BLUE_LED_CMD 30 -+ -+static struct ns2_led netspace_v2_led_pins[] = { -+ { -+ .name = "ns_v2:blue:sata", -+ .cmd = NETSPACE_V2_GPIO_BLUE_LED_CMD, -+ .slow = NETSPACE_V2_GPIO_BLUE_LED_SLOW, -+ }, -+}; -+ -+static struct ns2_led_platform_data netspace_v2_leds_data = { -+ .num_leds = ARRAY_SIZE(netspace_v2_led_pins), -+ .leds = netspace_v2_led_pins, -+}; -+ -+static struct platform_device netspace_v2_leds = { -+ .name = "leds-ns2", -+ .id = -1, -+ .dev = { -+ .platform_data = &netspace_v2_leds_data, -+ }, -+}; -+ -+/***************************************************************************** -+ * GPIO fan -+ ****************************************************************************/ -+ -+/* Designed for fan 40x40x16: ADDA AD0412LB-D50 6000rpm@12v */ -+static struct gpio_fan_speed netspace_max_v2_fan_speed[] = { -+ { 0, 0 }, -+ { 1500, 15 }, -+ { 1700, 14 }, -+ { 1800, 13 }, -+ { 2100, 12 }, -+ { 3100, 11 }, -+ { 3300, 10 }, -+ { 4300, 9 }, -+ { 5500, 8 }, -+}; -+ -+static unsigned netspace_max_v2_fan_ctrl[] = { 22, 7, 33, 23 }; -+ -+static struct gpio_fan_alarm netspace_max_v2_fan_alarm = { -+ .gpio = 25, -+ .active_low = 1, -+}; -+ -+static struct gpio_fan_platform_data netspace_max_v2_fan_data = { -+ .num_ctrl = ARRAY_SIZE(netspace_max_v2_fan_ctrl), -+ .ctrl = netspace_max_v2_fan_ctrl, -+ .alarm = &netspace_max_v2_fan_alarm, -+ .num_speed = ARRAY_SIZE(netspace_max_v2_fan_speed), -+ .speed = netspace_max_v2_fan_speed, -+}; -+ -+static struct platform_device netspace_max_v2_gpio_fan = { -+ .name = "gpio-fan", -+ .id = -1, -+ .dev = { -+ .platform_data = &netspace_max_v2_fan_data, -+ }, -+}; -+ -+/***************************************************************************** -+ * General Setup -+ ****************************************************************************/ -+ -+static unsigned int netspace_v2_mpp_config[] __initdata = { -+ MPP0_SPI_SCn, -+ MPP1_SPI_MOSI, -+ MPP2_SPI_SCK, -+ MPP3_SPI_MISO, -+ MPP4_NF_IO6, -+ MPP5_NF_IO7, -+ MPP6_SYSRST_OUTn, -+ MPP7_GPO, /* Fan speed (bit 1) */ -+ MPP8_TW0_SDA, -+ MPP9_TW0_SCK, -+ MPP10_UART0_TXD, -+ MPP11_UART0_RXD, -+ MPP12_GPO, /* Red led */ -+ MPP14_GPIO, /* USB fuse */ -+ MPP16_GPIO, /* SATA 0 power */ -+ MPP17_GPIO, /* SATA 1 power */ -+ MPP18_NF_IO0, -+ MPP19_NF_IO1, -+ MPP20_SATA1_ACTn, -+ MPP21_SATA0_ACTn, -+ MPP22_GPIO, /* Fan speed (bit 0) */ -+ MPP23_GPIO, /* Fan power */ -+ MPP24_GPIO, /* USB mode select */ -+ MPP25_GPIO, /* Fan rotation fail */ -+ MPP26_GPIO, /* USB device vbus */ -+ MPP28_GPIO, /* USB enable host vbus */ -+ MPP29_GPIO, /* Blue led (slow register) */ -+ MPP30_GPIO, /* Blue led (command register) */ -+ MPP31_GPIO, /* Board power off */ -+ MPP32_GPIO, /* Power button (0 = Released, 1 = Pushed) */ -+ MPP33_GPO, /* Fan speed (bit 2) */ -+ 0 -+}; -+ -+#define NETSPACE_V2_GPIO_POWER_OFF 31 -+ -+static void netspace_v2_power_off(void) -+{ -+ gpio_set_value(NETSPACE_V2_GPIO_POWER_OFF, 1); -+} -+ -+static void __init netspace_v2_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ kirkwood_mpp_conf(netspace_v2_mpp_config); -+ -+ if (machine_is_netspace_max_v2()) -+ lacie_v2_hdd_power_init(2); -+ else -+ lacie_v2_hdd_power_init(1); -+ -+ kirkwood_ehci_init(); -+ kirkwood_ge00_init(&netspace_v2_ge00_data); -+ kirkwood_sata_init(&netspace_v2_sata_data); -+ kirkwood_uart0_init(); -+ lacie_v2_register_flash(); -+ lacie_v2_register_i2c_devices(); -+ -+ platform_device_register(&netspace_v2_leds); -+ platform_device_register(&netspace_v2_gpio_leds); -+ platform_device_register(&netspace_v2_gpio_buttons); -+ if (machine_is_netspace_max_v2()) -+ platform_device_register(&netspace_max_v2_gpio_fan); -+ -+ if (gpio_request(NETSPACE_V2_GPIO_POWER_OFF, "power-off") == 0 && -+ gpio_direction_output(NETSPACE_V2_GPIO_POWER_OFF, 0) == 0) -+ pm_power_off = netspace_v2_power_off; -+ else -+ pr_err("netspace_v2: failed to configure power-off GPIO\n"); -+} -+ -+#ifdef CONFIG_MACH_NETSPACE_V2 -+MACHINE_START(NETSPACE_V2, "LaCie Network Space v2") -+ .atag_offset = 0x100, -+ .init_machine = netspace_v2_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+#endif -+ -+#ifdef CONFIG_MACH_INETSPACE_V2 -+MACHINE_START(INETSPACE_V2, "LaCie Internet Space v2") -+ .atag_offset = 0x100, -+ .init_machine = netspace_v2_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+#endif -+ -+#ifdef CONFIG_MACH_NETSPACE_MAX_V2 -+MACHINE_START(NETSPACE_MAX_V2, "LaCie Network Space Max v2") -+ .atag_offset = 0x100, -+ .init_machine = netspace_v2_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+#endif -diff -Naur linux-3.14.22.org/arch/arm/mach-kirkwood/sheevaplug-setup.c linux-3.14.22/arch/arm/mach-kirkwood/sheevaplug-setup.c ---- linux-3.14.22.org/arch/arm/mach-kirkwood/sheevaplug-setup.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.14.22/arch/arm/mach-kirkwood/sheevaplug-setup.c 2014-11-05 22:07:58.868714499 +0100 -@@ -0,0 +1,161 @@ -+/* -+ * arch/arm/mach-kirkwood/sheevaplug-setup.c -+ * -+ * Marvell SheevaPlug Reference 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 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "common.h" -+#include "mpp.h" -+ -+static struct mtd_partition sheevaplug_nand_parts[] = { -+ { -+ .name = "u-boot", -+ .offset = 0, -+ .size = SZ_1M -+ }, { -+ .name = "uImage", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = SZ_4M -+ }, { -+ .name = "root", -+ .offset = MTDPART_OFS_NXTBLK, -+ .size = MTDPART_SIZ_FULL -+ }, -+}; -+ -+static struct mv643xx_eth_platform_data sheevaplug_ge00_data = { -+ .phy_addr = MV643XX_ETH_PHY_ADDR(0), -+}; -+ -+static struct mv_sata_platform_data sheeva_esata_sata_data = { -+ .n_ports = 2, -+}; -+ -+static struct mvsdio_platform_data sheevaplug_mvsdio_data = { -+ /* unfortunately the CD signal has not been connected */ -+}; -+ -+static struct mvsdio_platform_data sheeva_esata_mvsdio_data = { -+ .gpio_write_protect = 44, /* MPP44 used as SD write protect */ -+ .gpio_card_detect = 47, /* MPP47 used as SD card detect */ -+}; -+ -+static struct gpio_led sheevaplug_led_pins[] = { -+ { -+ .name = "plug:red:misc", -+ .default_trigger = "none", -+ .gpio = 46, -+ .active_low = 1, -+ }, -+ { -+ .name = "plug:green:health", -+ .default_trigger = "default-on", -+ .gpio = 49, -+ .active_low = 1, -+ }, -+}; -+ -+static struct gpio_led_platform_data sheevaplug_led_data = { -+ .leds = sheevaplug_led_pins, -+ .num_leds = ARRAY_SIZE(sheevaplug_led_pins), -+}; -+ -+static struct platform_device sheevaplug_leds = { -+ .name = "leds-gpio", -+ .id = -1, -+ .dev = { -+ .platform_data = &sheevaplug_led_data, -+ } -+}; -+ -+static unsigned int sheevaplug_mpp_config[] __initdata = { -+ MPP29_GPIO, /* USB Power Enable */ -+ MPP46_GPIO, /* LED Red */ -+ MPP49_GPIO, /* LED */ -+ 0 -+}; -+ -+static unsigned int sheeva_esata_mpp_config[] __initdata = { -+ MPP29_GPIO, /* USB Power Enable */ -+ MPP44_GPIO, /* SD Write Protect */ -+ MPP47_GPIO, /* SD Card Detect */ -+ MPP49_GPIO, /* LED Green */ -+ 0 -+}; -+ -+static void __init sheevaplug_init(void) -+{ -+ /* -+ * Basic setup. Needs to be called early. -+ */ -+ kirkwood_init(); -+ -+ /* setup gpio pin select */ -+ if (machine_is_esata_sheevaplug()) -+ kirkwood_mpp_conf(sheeva_esata_mpp_config); -+ else -+ kirkwood_mpp_conf(sheevaplug_mpp_config); -+ -+ kirkwood_uart0_init(); -+ kirkwood_nand_init(ARRAY_AND_SIZE(sheevaplug_nand_parts), 25); -+ -+ if (gpio_request(29, "USB Power Enable") != 0 || -+ gpio_direction_output(29, 1) != 0) -+ pr_err("can't set up GPIO 29 (USB Power Enable)\n"); -+ kirkwood_ehci_init(); -+ -+ kirkwood_ge00_init(&sheevaplug_ge00_data); -+ -+ /* honor lower power consumption for plugs with out eSATA */ -+ if (machine_is_esata_sheevaplug()) -+ kirkwood_sata_init(&sheeva_esata_sata_data); -+ -+ /* enable sd wp and sd cd on plugs with esata */ -+ if (machine_is_esata_sheevaplug()) -+ kirkwood_sdio_init(&sheeva_esata_mvsdio_data); -+ else -+ kirkwood_sdio_init(&sheevaplug_mvsdio_data); -+ -+ platform_device_register(&sheevaplug_leds); -+} -+ -+#ifdef CONFIG_MACH_SHEEVAPLUG -+MACHINE_START(SHEEVAPLUG, "Marvell SheevaPlug Reference Board") -+ /* Maintainer: shadi Ammouri */ -+ .atag_offset = 0x100, -+ .init_machine = sheevaplug_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+#endif -+ -+#ifdef CONFIG_MACH_ESATA_SHEEVAPLUG -+MACHINE_START(ESATA_SHEEVAPLUG, "Marvell eSATA SheevaPlug Reference Board") -+ .atag_offset = 0x100, -+ .init_machine = sheevaplug_init, -+ .map_io = kirkwood_map_io, -+ .init_early = kirkwood_init_early, -+ .init_irq = kirkwood_init_irq, -+ .init_time = kirkwood_timer_init, -+ .restart = kirkwood_restart, -+MACHINE_END -+#endif -diff -Naur linux-3.14.22.org/arch/arm/tools/mach-types linux-3.14.22/arch/arm/tools/mach-types ---- linux-3.14.22.org/arch/arm/tools/mach-types 2014-10-15 08:42:04.000000000 +0200 -+++ linux-3.14.22/arch/arm/tools/mach-types 2014-11-05 22:07:58.868714499 +0100 -@@ -447,6 +447,7 @@ - smartq5 MACH_SMARTQ5 SMARTQ5 2534 - davinci_dm6467tevm MACH_DAVINCI_DM6467TEVM DAVINCI_DM6467TEVM 2548 - mxt_td60 MACH_MXT_TD60 MXT_TD60 2550 -+guruplug MACH_GURUPLUG GURUPLUG 2601 - capc7117 MACH_CAPC7117 CAPC7117 2612 - icontrol MACH_ICONTROL ICONTROL 2624 - gplugd MACH_GPLUGD GPLUGD 2625 -@@ -454,7 +455,7 @@ - mx23evk MACH_MX23EVK MX23EVK 2629 - ap4evb MACH_AP4EVB AP4EVB 2630 - mityomapl138 MACH_MITYOMAPL138 MITYOMAPL138 2650 --guruplug MACH_GURUPLUG GURUPLUG 2659 -+dreamplug1 MACH_DREAMPLUG1 DREAMPLUG1 2659 - spear310 MACH_SPEAR310 SPEAR310 2660 - spear320 MACH_SPEAR320 SPEAR320 2661 - aquila MACH_AQUILA AQUILA 2676 -@@ -491,6 +492,7 @@ - t5325 MACH_T5325 T5325 2846 - income MACH_INCOME INCOME 2849 - goni MACH_GONI GONI 2862 -+iconnect MACH_ICONNECT ICONNECT 2870 - bv07 MACH_BV07 BV07 2882 - openrd_ultimate MACH_OPENRD_ULTIMATE OPENRD_ULTIMATE 2884 - devixp MACH_DEVIXP DEVIXP 2885 -@@ -520,6 +522,7 @@ - vpr200 MACH_VPR200 VPR200 3087 - torbreck MACH_TORBRECK TORBRECK 3090 - prima2_evb MACH_PRIMA2_EVB PRIMA2_EVB 3103 -+nas6210 MACH_NAS6210 NAS6210 3104 - paz00 MACH_PAZ00 PAZ00 3128 - acmenetusfoxg20 MACH_ACMENETUSFOXG20 ACMENETUSFOXG20 3129 - ag5evm MACH_AG5EVM AG5EVM 3189 -@@ -544,6 +547,7 @@ - nspire MACH_NSPIRE NSPIRE 3503 - nokia_rm696 MACH_NOKIA_RM696 NOKIA_RM696 3522 - mikrap_x168 MACH_MIKRAP_X168 MIKRAP_X168 3543 -+dreamplug MACH_DREAMPLUG DREAMPLUG 3550 - deto_macarm9 MACH_DETO_MACARM9 DETO_MACARM9 3568 - m28evk MACH_M28EVK M28EVK 3613 - kota2 MACH_KOTA2 KOTA2 3616 diff --git a/src/patches/linux/linux-4.14.40-kirkwood-dtb.patch b/src/patches/linux/linux-4.14.40-kirkwood-dtb.patch deleted file mode 100644 index f3c88205da..0000000000 --- a/src/patches/linux/linux-4.14.40-kirkwood-dtb.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff --git a/arch/arm/boot/dts/kirkwood-iconnect.dts b/arch/arm/boot/dts/kirkwood-iconnect.dts -index 4a512d8..f550bba 100644 ---- a/arch/arm/boot/dts/kirkwood-iconnect.dts -+++ b/arch/arm/boot/dts/kirkwood-iconnect.dts -@@ -5,7 +5,7 @@ - #include "kirkwood-6281.dtsi" - - / { -- model = "Iomega Iconnect"; -+ model = "Iomega iConnect"; - compatible = "iom,iconnect-1.1", "iom,iconnect", "marvell,kirkwood-88f6281", "marvell,kirkwood"; - - memory { -@@ -85,37 +85,37 @@ - pinctrl-names = "default"; - - led-level { -- label = "led_level"; -+ label = "iconnect::led_level"; - gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; - default-state = "on"; - }; - power-blue { -- label = "power:blue"; -+ label = "iconnect:blue:power"; - gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; - default-state = "keep"; - }; - power-red { -- label = "power:red"; -+ label = "iconnect:red:power"; - gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; - }; - usb1 { -- label = "usb1:blue"; -+ label = "iconnect:blue:usb_1"; - gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>; - }; - usb2 { -- label = "usb2:blue"; -+ label = "iconnect:blue:usb_2"; - gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; - }; - usb3 { -- label = "usb3:blue"; -+ label = "iconnect:blue:usb_3"; - gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>; - }; - usb4 { -- label = "usb4:blue"; -+ label = "iconnect:blue:usb_4"; - gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>; - }; - otb { -- label = "otb:blue"; -+ label = "iconnect:blue:otb"; - gpios = <&gpio1 16 GPIO_ACTIVE_HIGH>; - }; - }; -- 2.39.5