From eddd7f577318c75bd4adc5d1b954813b3a41c568 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Mon, 6 May 2013 16:45:35 +0000 Subject: [PATCH] ramips: Update ARC Freestation profile These devices are actually built around the 8devices Carambola dev board. ARC FreeStation, Flex mARC, iFlex, and SplitStation devices are supported with this image, see "ARCFlex Firmware Downloads": http://www.antennas.com/wiki/index.php?title=ARC-OS_Firmware_Downloads_and_Revision_History Funnily enough if present the external USB wlan ends up being wlan-0, with the SoC device being wlan-1. - Invert port map so special handling of vlan config can be removed. - Add LED config similar to original ArcOS firmware. - Add GPIO export for enabling PoE passthrough from ethernet port 0 to port 1 - Get MACs from factory partition. - Update description to list supported devices. - Carambola uses RT3050 (not RT3052), though my Carambola CPU actually reports itself as being an RT3350 while still having RT3050F markings. Signed-off-by: Tobias Diedrich SVN-Revision: 36564 --- .../base-files/etc/uci-defaults/02_network | 2 +- target/linux/ramips/dts/FREESTATION5.dts | 45 ++++++++++++++++++- .../ramips/rt305x/profiles/freestation5.mk | 2 +- 3 files changed, 45 insertions(+), 4 deletions(-) diff --git a/target/linux/ramips/base-files/etc/uci-defaults/02_network b/target/linux/ramips/base-files/etc/uci-defaults/02_network index 41907bf1d1..fe81899e7b 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/02_network +++ b/target/linux/ramips/base-files/etc/uci-defaults/02_network @@ -129,7 +129,6 @@ ramips_setup_interfaces() ucidef_add_switch_vlan "switch0" "2" "0t 5" ;; - freestation5 | \ wcr-150gn) ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1" ;; @@ -255,6 +254,7 @@ ramips_setup_macs() all0239-3g | \ carambola | \ + freestation5 | \ w502u | \ wnce2001) lan_mac=$(mtd_get_mac_binary factory 40) diff --git a/target/linux/ramips/dts/FREESTATION5.dts b/target/linux/ramips/dts/FREESTATION5.dts index 7b7d2d0af7..a3cc8fc97d 100644 --- a/target/linux/ramips/dts/FREESTATION5.dts +++ b/target/linux/ramips/dts/FREESTATION5.dts @@ -3,13 +3,25 @@ /include/ "rt3050.dtsi" / { - compatible = "FREESTATION5", "ralink,rt3052-soc"; + compatible = "FREESTATION5", "ralink,rt3050-soc"; model = "ARC FreeStation5"; chosen { bootargs = "console=ttyS0,115200"; }; + palmbus@10000000 { + sysc@0 { + ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii"; + ralink,uartmux = "gpio"; + ralink,wdtmux = <1>; + }; + + gpio0: gpio@600 { + status = "okay"; + }; + }; + cfi@1f000000 { compatible = "cfi-flash"; reg = <0x1f000000 0x800000>; @@ -49,7 +61,7 @@ esw@10110000 { status = "okay"; - ralink,portmap = <0x3e>; + ralink,portmap = <0x01>; }; wmac@10180000 { @@ -59,4 +71,33 @@ otg@101c0000 { status = "okay"; }; + + gpio-export { + compatible = "gpio-export"; + // Used to enable power-over-ethernet passthrough from port0 to port1. + // Disable passthrough by default to prevent accidental equipment damage. + poe { + gpio-export,name = "poe-passthrough"; + gpio-export,output = <1>; // OUT_INIT_HIGH + gpios = <&gpio0 11 1>; // GPIO 11, ACTIVE_LOW + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + // The following leds are defined in the ArcOS firmware, but reportedly + // not present in the Freestation5 device. + wifi { + label = "freestation:unknown:wifi"; + gpios = <&gpio0 7 1>; + }; + powerg { + label = "freestation:unknown:powerg"; + gpios = <&gpio0 9 1>; + }; + usb { + label = "freestation:unknown:usb"; + gpios = <&gpio0 14 1>; + }; + }; }; diff --git a/target/linux/ramips/rt305x/profiles/freestation5.mk b/target/linux/ramips/rt305x/profiles/freestation5.mk index 6da1e68c2e..a3c105b95f 100644 --- a/target/linux/ramips/rt305x/profiles/freestation5.mk +++ b/target/linux/ramips/rt305x/profiles/freestation5.mk @@ -12,7 +12,7 @@ define Profile/FREESTATION5 endef define Profile/FREESTATION5/Description - Package set for ARC Flex FreeStation5 + Package set for ARC FreeStation, Flex mARC, iFlex, and SplitStation endef $(eval $(call Profile,FREESTATION5))