kirkwood: add support for Linksys EA4500
Support is added only for kernel 3.14 - do not show it until the switch is made. Following uboot env changes are needed to make it work on stock uboot:
This commit is contained in:
parent
95c615262c
commit
4122af10f9
5 changed files with 203 additions and 2 deletions
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2012-2013 OpenWrt.org
|
||||
# Copyright (C) 2012-2014 OpenWrt.org
|
||||
#
|
||||
|
||||
. /lib/functions/uci-defaults.sh
|
||||
|
@ -14,6 +14,10 @@ case "`cat /proc/device-tree/model`" in
|
|||
ucidef_set_led_default "health" "status:green:health" "1"
|
||||
ucidef_set_led_default "fault" "status:orange:fault" "1"
|
||||
;;
|
||||
"Linksys EA4500")
|
||||
ucidef_set_led_default "health" "ea4500:white:health" "1"
|
||||
ucidef_set_led_default "pulse" "ea4500:white:pulse" "1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2012-2013 OpenWrt.org
|
||||
# Copyright (C) 2012-2014 OpenWrt.org
|
||||
#
|
||||
|
||||
[ -e /etc/config/network ] && exit 0
|
||||
|
@ -37,6 +37,9 @@ case "`cat /proc/device-tree/model`" in
|
|||
"Cloud Engines Pogoplug E02")
|
||||
set_lan_dhcp "eth0"
|
||||
;;
|
||||
"Linksys EA4500")
|
||||
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
||||
;;
|
||||
*)
|
||||
ucidef_set_interface_lan "eth0"
|
||||
;;
|
||||
|
|
|
@ -117,6 +117,9 @@ Image/InstallKernel/Template/Generic=$(call Image/InstallKernel/Template)
|
|||
Image/BuildKernel/Template/DOCKSTAR=$(call Image/BuildKernel/Template,dockstar)
|
||||
Image/InstallKernel/Template/DOCKSTAR=$(call Image/InstallKernel/Template,dockstar)
|
||||
|
||||
Image/BuildKernel/Template/EA4500=$(call Image/BuildKernel/Template,ea4500)
|
||||
Image/InstallKernel/Template/EA4500=$(call Image/InstallKernel/Template,ea4500)
|
||||
|
||||
Image/BuildKernel/Template/GOFLEXNET=$(call Image/BuildKernel/Template,goflexnet)
|
||||
Image/InstallKernel/Template/GOFLEXNET=$(call Image/InstallKernel/Template,goflexnet)
|
||||
|
||||
|
|
169
target/linux/kirkwood/patches-3.14/160-ea4500.patch
Normal file
169
target/linux/kirkwood/patches-3.14/160-ea4500.patch
Normal file
|
@ -0,0 +1,169 @@
|
|||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -90,6 +90,7 @@
|
||||
kirkwood-dns325.dtb \
|
||||
kirkwood-dockstar.dtb \
|
||||
kirkwood-dreamplug.dtb \
|
||||
+ kirkwood-ea4500.dtb \
|
||||
kirkwood-goflexnet.dtb \
|
||||
kirkwood-guruplug-server-plus.dtb \
|
||||
kirkwood-ib62x0.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/kirkwood-ea4500.dts
|
||||
@@ -0,0 +1,156 @@
|
||||
+/*
|
||||
+ * kirkwood-ea4500.dts - Device Tree file for Linksys EA4500
|
||||
+ *
|
||||
+ * (c) 2013 Jonas Gorski <jogo@openwrt.org>
|
||||
+ * (c) 2013 Deutsche Telekom Innovation Laboratories
|
||||
+ * (c) 2014 Luka Perkov <luka@openwrt.org>
|
||||
+ *
|
||||
+ * 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.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "kirkwood.dtsi"
|
||||
+#include "kirkwood-6282.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ model = "Linksys EA4500";
|
||||
+ compatible = "linksys,ea4500", "marvell,kirkwood-88f6282", "marvell,kirkwood";
|
||||
+
|
||||
+ memory {
|
||||
+ device_type = "memory";
|
||||
+ reg = <0x00000000 0x8000000>;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "console=ttyS0,115200n8 earlyprintk";
|
||||
+ };
|
||||
+
|
||||
+ mbus {
|
||||
+ pcie-controller {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ pcie@1,0 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ pcie@2,0 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ ocp@f1000000 {
|
||||
+ pinctrl: pinctrl@10000 {
|
||||
+ pmx_led_white_health: pmx-led-white-health {
|
||||
+ marvell,pins = "mpp7";
|
||||
+ marvell,function = "gpo";
|
||||
+ };
|
||||
+ pmx_led_white_pulse: pmx-led-white-pulse {
|
||||
+ marvell,pins = "mpp14";
|
||||
+ marvell,function = "gpio";
|
||||
+ };
|
||||
+ pmx_btn_wps: pmx-btn-wps {
|
||||
+ marvell,pins = "mpp47";
|
||||
+ marvell,function = "gpio";
|
||||
+ };
|
||||
+ pmx_btn_reset: pmx-btn-reset {
|
||||
+ marvell,pins = "mpp48";
|
||||
+ marvell,function = "gpio";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ rtc@10300 {
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+
|
||||
+ serial@12000 {
|
||||
+ status = "okay";
|
||||
+ };
|
||||
+
|
||||
+ };
|
||||
+
|
||||
+ gpio_keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >;
|
||||
+ pinctrl-names = "default";
|
||||
+
|
||||
+ button@15 {
|
||||
+ label = "WPS Button";
|
||||
+ linux,code = <KEY_WPS_BUTTON>;
|
||||
+ gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ button@16 {
|
||||
+ label = "Reset Button";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+ pinctrl-0 = < &pmx_led_white_health &pmx_led_white_pulse >;
|
||||
+ pinctrl-names = "default";
|
||||
+
|
||||
+ white-health {
|
||||
+ label = "ea4500:white:health";
|
||||
+ gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ white-pulse {
|
||||
+ label = "ea4500:white:pulse";
|
||||
+ gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&nand {
|
||||
+ status = "okay";
|
||||
+ pinctrl-0 = <&pmx_nand>;
|
||||
+ pinctrl-names = "default";
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "u-boot";
|
||||
+ reg = <0x0000000 0x80000>;
|
||||
+ };
|
||||
+
|
||||
+ partition@80000 {
|
||||
+ label = "u-boot environment";
|
||||
+ reg = <0x80000 0x20000>;
|
||||
+ };
|
||||
+
|
||||
+ partition@200000 {
|
||||
+ label = "kernel";
|
||||
+ reg = <0x200000 0x200000>;
|
||||
+ };
|
||||
+
|
||||
+ partition@400000 {
|
||||
+ label = "root";
|
||||
+ reg = <0x400000 0x1c00000>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&mdio {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+ð0 {
|
||||
+ status = "okay";
|
||||
+ ethernet0-port@0 {
|
||||
+ speed = <1000>;
|
||||
+ duplex = <1>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+ð1 {
|
||||
+ status = "okay";
|
||||
+ ethernet1-port@0 {
|
||||
+ speed = <1000>;
|
||||
+ duplex = <1>;
|
||||
+ };
|
||||
+};
|
22
target/linux/kirkwood/profiles/115-router.mk
Normal file
22
target/linux/kirkwood/profiles/115-router.mk
Normal file
|
@ -0,0 +1,22 @@
|
|||
#
|
||||
# Copyright (C) 2014 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
define Profile/EA4500
|
||||
NAME:=Linksys EA4500
|
||||
PACKAGES:= \
|
||||
kmod-mwl8k kmod-usb2 kmod-usb-storage \
|
||||
uboot-envtools
|
||||
endef
|
||||
|
||||
define Profile/EA4500/Description
|
||||
Package set compatible with Linksys EA4500 board.
|
||||
endef
|
||||
|
||||
EA4500_UBIFS_OPTS:="-m 2048 -e 126KiB -c 4096"
|
||||
EA4500_UBI_OPTS:="-m 2048 -p 128KiB -s 512"
|
||||
|
||||
# $(eval $(call Profile,EA4500))
|
Loading…
Reference in a new issue