diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2016-11-29 17:09:56 -0800 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-12-04 11:41:51 +0100 |
commit | da5155b1a5f3f6c042b18944f1718dbbe03b74fa (patch) | |
tree | ffe356b9c5224a1c70d88d13d48dc9ad1b0898ac /target/linux/orion/patches-4.4/210-wn802t_support.patch | |
parent | cec7e661e7a7e30de00607df5772510b30eb5dad (diff) | |
download | upstream-da5155b1a5f3f6c042b18944f1718dbbe03b74fa.tar.gz upstream-da5155b1a5f3f6c042b18944f1718dbbe03b74fa.tar.bz2 upstream-da5155b1a5f3f6c042b18944f1718dbbe03b74fa.zip |
orion: Add support for 4.4 kernel
Patches and configuration apply just fine on the Marvell Orion target.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Diffstat (limited to 'target/linux/orion/patches-4.4/210-wn802t_support.patch')
-rw-r--r-- | target/linux/orion/patches-4.4/210-wn802t_support.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/target/linux/orion/patches-4.4/210-wn802t_support.patch b/target/linux/orion/patches-4.4/210-wn802t_support.patch new file mode 100644 index 0000000000..e7827edd29 --- /dev/null +++ b/target/linux/orion/patches-4.4/210-wn802t_support.patch @@ -0,0 +1,75 @@ +--- a/arch/arm/mach-orion5x/Kconfig ++++ b/arch/arm/mach-orion5x/Kconfig +@@ -147,10 +147,13 @@ config MACH_MSS2_DT + Maxtor Shared Storage II platform. + + config MACH_WNR854T +- bool "Netgear WNR854T" ++ bool "Netgear WNR854T / WN802T" + help + Say 'Y' here if you want your kernel to support the +- Netgear WNR854T platform. ++ Netgear WNR854T or WN802T platform. ++ ++config MACH_WN802T ++ def_bool MACH_WNR854T + + config MACH_RD88F5181L_GE + bool "Marvell Orion-VoIP GE Reference Design" +--- a/arch/arm/mach-orion5x/wnr854t-setup.c ++++ b/arch/arm/mach-orion5x/wnr854t-setup.c +@@ -115,6 +115,15 @@ static struct dsa_platform_data wnr854t_ + .chip = &wnr854t_switch_chip_data, + }; + ++static struct dsa_chip_data wn802t_switch_chip_data = { ++ .port_names[2] = "wan", ++ .port_names[3] = "cpu", ++}; ++ ++static struct dsa_platform_data wn802t_switch_plat_data = { ++ .nr_chips = 1, ++ .chip = &wn802t_switch_chip_data, ++}; + static void __init wnr854t_init(void) + { + /* +@@ -128,7 +137,12 @@ static void __init wnr854t_init(void) + * Configure peripherals. + */ + orion5x_eth_init(&wnr854t_eth_data); +- orion5x_eth_switch_init(&wnr854t_switch_plat_data, NO_IRQ); ++ ++ if (machine_is_wn802t()) ++ orion5x_eth_switch_init(&wn802t_switch_plat_data, NO_IRQ); ++ else ++ orion5x_eth_switch_init(&wnr854t_switch_plat_data, NO_IRQ); ++ + orion5x_uart0_init(); + + mvebu_mbus_add_window_by_id(ORION_MBUS_DEVBUS_BOOT_TARGET, +@@ -168,7 +182,7 @@ static struct hw_pci wnr854t_pci __initd + + static int __init wnr854t_pci_init(void) + { +- if (machine_is_wnr854t()) ++ if (machine_is_wnr854t() || machine_is_wn802t()) + pci_common_init(&wnr854t_pci); + + return 0; +@@ -186,3 +200,15 @@ MACHINE_START(WNR854T, "Netgear WNR854T" + .fixup = tag_fixup_mem32, + .restart = orion5x_restart, + MACHINE_END ++ ++MACHINE_START(WN802T, "Netgear WN802T") ++ /* Maintainer: Imre Kaloz <kaloz@openwrt.org> */ ++ .atag_offset = 0x100, ++ .init_machine = wnr854t_init, ++ .map_io = orion5x_map_io, ++ .init_early = orion5x_init_early, ++ .init_irq = orion5x_init_irq, ++ .init_time = orion5x_timer_init, ++ .fixup = tag_fixup_mem32, ++ .restart = orion5x_restart, ++MACHINE_END |