OpenWrt – Rev 1

Subversion Repositories:
Rev:
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -250,6 +250,7 @@ dtb-$(CONFIG_MACH_KIRKWOOD) += \
        kirkwood-linkstation-lswsxl.dtb \
        kirkwood-linkstation-lswvl.dtb \
        kirkwood-linkstation-lswxl.dtb \
+       kirkwood-linksys-audi.dtb \
        kirkwood-linksys-viper.dtb \
        kirkwood-lschlv2.dtb \
        kirkwood-lsxhl.dtb \
--- /dev/null
+++ b/arch/arm/boot/dts/kirkwood-linksys-audi.dts
@@ -0,0 +1,245 @@
+/*
+ * kirkwood-linksys-audi.dts - Device Tree file for Linksys EA3500
+ *
+ * (c) 2013 Jonas Gorski <jogo@openwrt.org>
+ * (c) 2013 Deutsche Telekom Innovation Laboratories
+ * (c) 2014 Luka Perkov <luka@openwrt.org>
+ * (c) 2014 Dan Walters <dan@walters.io>
+ *
+ * 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 Audi (EA3500)";
+       compatible = "linksys,audi", "marvell,kirkwood-88f6282", "marvell,kirkwood";
+
+       memory {
+               device_type = "memory";
+               reg = <0x00000000 0x4000000>;
+       };
+
+       aliases {
+               serial0 = &uart0;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       gpio_keys {
+               compatible = "gpio-keys";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >;
+               pinctrl-names = "default";
+
+               wps {
+                       label = "WPS Button";
+                       linux,code = <KEY_WPS_BUTTON>;
+                       gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
+               };
+
+               reset {
+                       label = "Reset Button";
+                       linux,code = <KEY_RESTART>;
+                       gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+               pinctrl-0 = < &pmx_led_green_power >;
+               pinctrl-names = "default";
+
+               green-power {
+                       label = "audi:green:power";
+                       gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
+               };
+       };
+
+       mvsw61xx {
+               compatible = "marvell,88e6171";
+               status = "okay";
+               reg = <0x10>;
+
+               mii-bus = <&mdio>;
+               cpu-port-0 = <5>;
+               cpu-port-1 = <6>;
+               is-indirect;
+       };
+
+       dsa {
+               compatible = "marvell,dsa";
+               #address-cells = <2>;
+               #size-cells = <0>;
+
+               dsa,ethernet = <&eth0port>;
+               dsa,mii-bus = <&mdio>;
+
+               switch@16,0 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       reg = <16 0>;   /* MDIO address 16, switch 0 in tree */
+
+                       port@0 {
+                               reg = <0>;
+                               label = "ethernet1";
+                       };
+
+                       port@1 {
+                               reg = <1>;
+                               label = "ethernet2";
+                       };
+
+                       port@2 {
+                               reg = <2>;
+                               label = "ethernet3";
+                       };
+
+                       port@3 {
+                               reg = <3>;
+                               label = "ethernet4";
+                       };
+
+                       port@4 {
+                               reg = <4>;
+                               label = "internet";
+                       };
+
+                       port@5 {
+                               reg = <5>;
+                               label = "cpu";
+                       };
+               };
+       };
+};
+
+&pinctrl {
+       pmx_led_green_power: pmx-led-green-power {
+               marvell,pins = "mpp7";
+               marvell,function = "gpo";
+       };
+       pmx_btn_wps: pmx-btn-wps {
+               marvell,pins = "mpp47";
+               marvell,function = "gpio";
+       };
+       pmx_btn_reset: pmx-btn-reset {
+               marvell,pins = "mpp48";
+               marvell,function = "gpio";
+       };
+};
+
+&nand {
+       status = "okay";
+       pinctrl-0 = <&pmx_nand>;
+       pinctrl-names = "default";
+
+       partitions {
+               compatible = "fixed-partitions";
+               #address-cells = <1>;
+               #size-cells = <1>;
+
+               partition@0 {
+                       label = "u-boot";
+                       reg = <0x0 0x80000>;
+                       read-only;
+               };
+
+               partition@80000 {
+                       label = "u_env";
+                       reg = <0x80000 0x4000>;
+               };
+
+               partition@84000 {
+                       label = "s_env";
+                       reg = <0x84000 0x4000>;
+               };
+
+               partition@200000 {
+                       label = "kernel1";
+                       reg = <0x200000 0x290000>;
+               };
+
+               partition@490000 {
+                       label = "rootfs1";
+                       reg = <0x490000 0x1170000>;
+               };
+
+               partition@1600000 {
+                       label = "kernel2";
+                       reg = <0x1600000 0x290000>;
+               };
+
+               partition@1890000 {
+                       label = "rootfs2";
+                       reg = <0x1890000 0x1170000>;
+               };
+
+               partition@2a00000 {
+                       label = "syscfg";
+                       reg = <0x2a00000  0x1600000>;
+               };
+
+               partition@88000 {
+                       label = "unused";
+                       reg = <0x88000 0x178000>;
+               };
+
+       };
+};
+
+&pciec {
+       status = "okay";
+};
+
+&pcie0 {
+       status = "okay";
+};
+
+&pcie1 {
+       status = "okay";
+};
+
+&mdio {
+       status = "okay";
+};
+
+&uart0 {
+       status = "okay";
+};
+
+/* eth0 is connected to a Marvell 88E6171 switch, without a PHY. So set
+ * fixed speed and duplex.
+ */
+&eth0 {
+       status = "okay";
+       ethernet0-port@0 {
+               speed = <1000>;
+               duplex = <1>;
+       };
+};
+
+/* eth1 is connected to the switch at port 6. However DSA only supports a
+ * single CPU port. Upstream uses DSA so they disable this port to avoid confusion.
+ */
+&eth1 {
+       status = "okay";
+       ethernet1-port@0 {
+               speed = <1000>;
+               duplex = <1>;
+       };
+};
+
+/* There is no battery on the board, so the RTC does not keep
+ * time when there is no power, making it useless.
+ */
+&rtc {
+       status = "disabled";
+};

Generated by GNU Enscript 1.6.5.90.