aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/apm821xx/dts/MX60.dts
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/apm821xx/dts/MX60.dts')
-rw-r--r--target/linux/apm821xx/dts/MX60.dts186
1 files changed, 186 insertions, 0 deletions
diff --git a/target/linux/apm821xx/dts/MX60.dts b/target/linux/apm821xx/dts/MX60.dts
new file mode 100644
index 0000000000..4ec0043f32
--- /dev/null
+++ b/target/linux/apm821xx/dts/MX60.dts
@@ -0,0 +1,186 @@
+/*
+ * Device Tree Source for Meraki MX60/MX60W (Buckminster)
+ *
+ * Copyright (C) 2016 Chris Blake <chrisrblake93@gmail.com>
+ *
+ * Based on Cisco Meraki DTS extracted from release wired-12-217818
+ *
+ * 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 "apm82181.dtsi"
+
+/ {
+ model = "Meraki MX60/MX60W Security Appliance";
+ compatible = "meraki,buckminster";
+
+ aliases {
+ serial0 = &UART1;
+ };
+
+ chosen {
+ linux,stdout-path = "/plb/opb/serial@ef600400";
+ };
+
+};
+
+&CRYPTO {
+ status = "okay";
+};
+
+&PKA {
+ status = "okay";
+};
+
+&TRNG {
+ status = "okay";
+};
+
+&USBOTG0 {
+ status = "okay";
+ dr_mode = "host";
+};
+
+&EBC0 {
+ /* Buckminster has 1GiB of NAND */
+ ndfc@1,0 {
+ status = "okay";
+ nand {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x00000000 0x00100000>;
+ read-only;
+ };
+
+ partition@100000 {
+ label = "u-boot-env";
+ reg = <0x00100000 0x00100000>;
+ read-only;
+ };
+
+ partition@200000 {
+ label = "oops";
+ reg = <0x00200000 0x00040000>;
+ };
+
+ partition@240000 {
+ label = "ubi";
+ reg = <0x00240000 0x3fdc0000>;
+ };
+
+ all {
+ label = "all";
+ reg = <0x00000000 0x40000000>;
+ };
+ };
+ };
+};
+
+&UART1 {
+ status = "okay";
+};
+
+&GPIO0 {
+ status = "okay";
+};
+
+&IIC0 {
+ status = "okay";
+};
+
+&EMAC0 {
+ status = "okay";
+ phy-handle = <&phy0>;
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ phy0: ethernet-phy@0 {
+ device_type = "ethernet-phy";
+ reg = <0>;
+ qca,ar8327-initvals = <
+ 0x0010 0x40000000
+ 0x0624 0x007f7f7f
+ 0x0004 0x07a00000 /* PAD0_MODE */
+ 0x000c 0x01000000 /* PAD6_MODE */
+ 0x007c 0x0000007e /* PORT0_STATUS */
+ >;
+ };
+ };
+};
+
+&POB0 {
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power-green {
+ label = "mx60:green:power";
+ gpios = <&GPIO0 18 GPIO_ACTIVE_LOW>;
+ };
+
+ power-orange {
+ label = "mx60:orange:power";
+ gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
+ };
+
+ wan-green {
+ label = "mx60:green:wan";
+ gpios = <&GPIO0 17 GPIO_ACTIVE_LOW>;
+ };
+
+ wan-orange {
+ label = "mx60:orange:wan";
+ gpios = <&GPIO0 15 GPIO_ACTIVE_LOW>;
+ };
+
+ lan1 {
+ label = "mx60:green:lan1";
+ gpios = <&GPIO0 20 GPIO_ACTIVE_LOW>;
+ };
+
+ lan2 {
+ label = "mx60:green:lan2";
+ gpios = <&GPIO0 21 GPIO_ACTIVE_LOW>;
+ };
+
+ lan3 {
+ label = "mx60:green:lan3";
+ gpios = <&GPIO0 22 GPIO_ACTIVE_LOW>;
+ };
+
+ lan4 {
+ label = "mx60:green:lan4";
+ gpios = <&GPIO0 23 GPIO_ACTIVE_LOW>;
+ };
+ };
+
+ gpio_keys_polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <60>; /* 3 * 20 = 60ms */
+ autorepeat;
+
+ button@1 {
+ label = "Reset button";
+ linux,code = <KEY_RESTART>;
+ gpios = <&GPIO0 16 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+&PCIE0 {
+ /* Leave this enabled as u-boot on the MX60 will disable it for us */
+ status = "okay";
+};
+
+&MSI {
+ status = "okay";
+};