ASR_BASE

Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/target/linux/bcm63xx/dts/bcm6348.dtsi b/target/linux/bcm63xx/dts/bcm6348.dtsi
new file mode 100644
index 0000000..38bb71e
--- /dev/null
+++ b/target/linux/bcm63xx/dts/bcm6348.dtsi
@@ -0,0 +1,160 @@
+/dts-v1/;
+
+/ {
+	#address-cells = <1>;
+	#size-cells = <1>;
+	compatible = "brcm,bcm6348";
+
+	aliases {
+		pflash = &pflash;
+		pinctrl = &pinctrl;
+		serial0 = &uart0;
+		spi0 = &lsspi;
+	};
+
+	cpus {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		cpu@0 {
+			compatible = "brcm,bmips3300", "mips,mips4Kc";
+			device_type = "cpu";
+			reg = <0>;
+		};
+	};
+
+	cpu_intc: interrupt-controller {
+		#address-cells = <0>;
+		compatible = "mti,cpu-interrupt-controller";
+
+		interrupt-controller;
+		#interrupt-cells = <1>;
+	};
+
+	memory { device_type = "memory"; reg = <0 0>; };
+
+	pflash: nor@1fc00000 {
+		compatible = "cfi-flash";
+		reg = <0x1fc00000 0x400000>;
+		bank-width = <2>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		status = "disabled";
+	};
+
+	ubus@fff00000 {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges;
+		compatible = "simple-bus";
+		interrupt-parent = <&periph_intc>;
+
+		periph_intc: interrupt-controller@fffe000c {
+			compatible = "brcm,bcm6345-l1-intc";
+			reg = <0xfffe000c 0x8>;
+
+			interrupt-controller;
+			#interrupt-cells = <1>;
+
+			interrupt-parent = <&cpu_intc>;
+			interrupts = <2>;
+		};
+
+		ext_intc: interrupt-controller@fffe0014 {
+			compatible = "brcm,bcm6345-ext-intc";
+			reg = <0xfffe0014 0x4>;
+
+			interrupt-controller;
+			#interrupt-cells = <2>;
+
+			interrupt-parent = <&cpu_intc>;
+			interrupts = <3>, <4>, <5>, <6>;
+
+			brcm,field-width = <5>;
+		};
+
+		pinctrl: pin-controller@fffe0400 {
+			compatible = "brcm,bcm6348-pinctrl";
+			reg = <0xfffe0400 0x8>,
+			      <0xfffe0408 0x8>,
+			      <0xfffe0418 0x4>;
+			reg-names = "dirout", "dat", "mode";
+
+			gpio-controller;
+			#gpio-cells = <2>;
+
+			interrupt-parent = <&ext_intc>;
+			interrupts = <0 0>, <1 0>, <2 0>, <3 0>;
+			interrupt-names = "gpio32", "gpio33", "gpio34", "gpio35";
+
+			pinctrl_ext_ephy: ext_ephy {
+				function = "ext_ephy";
+				groups = "group1", "group4";
+			};
+
+			pinctrl_mii_snoop: mii_snoop {
+				function = "mii_snoop";
+				groups = "group1", "group4";
+			};
+
+			pinctrl_legacy_led: legacy_led {
+				function = "legacy_led";
+				groups = "group4";
+			};
+
+			pinctrl_mii_pccard: mii_pccard {
+				function = "mii_pccard";
+				groups = "group1";
+			};
+
+			pinctrl_pci: pci {
+				function = "pci";
+				groups = "group2";
+			};
+
+			pinctrl_spi_master_uart: spi_master_uart {
+				function = "spi_master_uart";
+				groups = "group1";
+			};
+
+			pinctrl_ext_mii: ext_mii {
+				function = "ext_mii";
+				groups = "group0", "group3";
+			};
+
+			pinctrl_utopia: utopia {
+				function = "utopia";
+				groups = "group1", "group3", "group4";
+			};
+
+			pinctrl_diag: diag {
+				function = "diag";
+				groups = "group0", "group1", "group2", "group3", "group4";
+			};
+		};
+
+		uart0: serial@fffe0300 {
+			compatible = "brcm,bcm6345-uart";
+			reg = <0xfffe0300 0x18>;
+
+			interrupt-parent = <&periph_intc>;
+			interrupts = <2>;
+
+			/* clocks = <&periph_clk>; */
+			/* clock-names = "refclk"; */
+
+			status = "disabled";
+		};
+
+		lsspi: spi@fffe0c00 {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			compatible = "brcm,bcm6348-spi";
+			reg = <0xfffe0c00 0x40>;
+			interrupts = <1>;
+			/* clocks = <&clkctl 9>; */
+
+		};
+	};
+};