From 879ea89c252b59a44a6abe06cb8695a0695d676f Mon Sep 17 00:00:00 2001 From: blogic Date: Mon, 6 May 2013 16:45:35 +0000 Subject: 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36564 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../ramips/base-files/etc/uci-defaults/02_network | 2 +- target/linux/ramips/dts/FREESTATION5.dts | 45 +++++++++++++++++++++- .../linux/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 41907bf1d..fe81899e7 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 7b7d2d0af..a3cc8fc97 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 6da1e68c2..a3c105b95 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)) -- cgit v1.2.3