ramips: Update ARC Freestation profile
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 6 May 2013 16:45:35 +0000 (16:45 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 6 May 2013 16:45:35 +0000 (16:45 +0000)
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 <ranma+openwrt@tdiedrich.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36564 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ramips/base-files/etc/uci-defaults/02_network
target/linux/ramips/dts/FREESTATION5.dts
target/linux/ramips/rt305x/profiles/freestation5.mk

index 41907bf..fe81899 100755 (executable)
@@ -129,7 +129,6 @@ ramips_setup_interfaces()
                ucidef_add_switch_vlan "switch0" "2" "0t 5"
                ;;
 
                ucidef_add_switch_vlan "switch0" "2" "0t 5"
                ;;
 
-       freestation5 | \
        wcr-150gn)
                ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1"
                ;;
        wcr-150gn)
                ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1"
                ;;
@@ -255,6 +254,7 @@ ramips_setup_macs()
 
        all0239-3g | \
        carambola | \
 
        all0239-3g | \
        carambola | \
+       freestation5 | \
        w502u | \
        wnce2001)
                lan_mac=$(mtd_get_mac_binary factory 40)
        w502u | \
        wnce2001)
                lan_mac=$(mtd_get_mac_binary factory 40)
index 7b7d2d0..a3cc8fc 100644 (file)
@@ -3,13 +3,25 @@
 /include/ "rt3050.dtsi"
 
 / {
 /include/ "rt3050.dtsi"
 
 / {
-       compatible = "FREESTATION5", "ralink,rt3052-soc";
+       compatible = "FREESTATION5", "ralink,rt3050-soc";
        model = "ARC FreeStation5";
 
        chosen {
                bootargs = "console=ttyS0,115200";
        };
 
        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>;
        cfi@1f000000 {
                compatible = "cfi-flash";
                reg = <0x1f000000 0x800000>;
@@ -49,7 +61,7 @@
 
        esw@10110000 {
                status = "okay";
 
        esw@10110000 {
                status = "okay";
-               ralink,portmap = <0x3e>;
+               ralink,portmap = <0x01>;
        };
 
        wmac@10180000 {
        };
 
        wmac@10180000 {
        otg@101c0000 {
                status = "okay";
        };
        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>;
+               };
+       };
 };
 };
index 6da1e68..a3c105b 100644 (file)
@@ -12,7 +12,7 @@ define Profile/FREESTATION5
 endef
 
 define Profile/FREESTATION5/Description
 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))
 endef
 
 $(eval $(call Profile,FREESTATION5))