[PATCH 2/3] ARM: mach-moxart: add MOXA ART device tree files
Jonas Jensen
jonas.jensen at gmail.com
Wed Jun 12 08:34:07 EDT 2013
Signed-off-by: Jonas Jensen <jonas.jensen at gmail.com>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/moxart-uc7112lx.dts | 89 +++++++++++++++++++++++++++++++++
arch/arm/boot/dts/moxart.dtsi | 84 +++++++++++++++++++++++++++++++
3 files changed, 174 insertions(+), 0 deletions(-)
create mode 100644 arch/arm/boot/dts/moxart-uc7112lx.dts
create mode 100644 arch/arm/boot/dts/moxart.dtsi
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 0d1e98b..059e6d3 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -217,6 +217,7 @@ dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07.dtb \
wm8750-apc8750.dtb \
wm8850-w70v2.dtb
dtb-$(CONFIG_ARCH_ZYNQ) += zynq-zc702.dtb
+dtb-$(CONFIG_ARCH_MOXART) += moxart-uc7112lx.dtb
targets += dtbs
targets += $(dtb-y)
diff --git a/arch/arm/boot/dts/moxart-uc7112lx.dts b/arch/arm/boot/dts/moxart-uc7112lx.dts
new file mode 100644
index 0000000..c2bb7dc
--- /dev/null
+++ b/arch/arm/boot/dts/moxart-uc7112lx.dts
@@ -0,0 +1,89 @@
+/* moxart-uc7112lx.dts - Device Tree file for MOXA UC-7112-LX
+ *
+ * Copyright (C) 2013 Jonas Jensen <jonas.jensen at gmail.com>
+ *
+ * Licensed under GPLv2 or later. */
+
+/dts-v1/;
+/include/ "moxart.dtsi"
+
+/ {
+ model = "MOXA UC-7112-LX";
+ compatible = "moxa,moxart-uc-7112-lx";
+
+ memory {
+ reg = <0x00000000 0x02000000>;
+ };
+
+ flash at 80000000,0 {
+ /* JS28F128 J3D75 A9087684 - Numonyx Embedded Flash Memory (J3 v. D) */
+ compatible = "numonyx,js28f128", "cfi-flash";
+ reg = <0x80000000 0x01000000>;
+ bank-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ partition at 0 {
+ label = "bootloader";
+ reg = <0x00000000 0x00040000>;
+ };
+ partition at 40000 {
+ label = "linux kernel";
+ reg = <0x00040000 0x001C0000>;
+ };
+ partition at 200000 {
+ label = "root filesystem";
+ reg = <0x00200000 0x00800000>;
+ };
+ partition at a00000 {
+ label = "user filesystem";
+ reg = <0x00a00000 0x00600000>;
+ };
+ };
+
+ mmc at 98e00000 {
+ compatible = "moxa,moxart-mmc";
+ reg = <0x98e00000 0x00001000>;
+ interrupts = <5 0>;
+ clock-names = "sys_clk";
+ clocks = <&sys_clk>;
+ };
+
+ mxser at 98200040 {
+ compatible = "moxa,moxart-mxser";
+ reg = <0x98200040 0x00000080>, /* UART "3" base */
+ <0x982000e4 0x00000080>, /* UART mode base */
+ <0x982000c0 0x00000020>; /* UART interrupt vector */
+ interrupts = <31 1>;
+ };
+
+ mac0: mac at 90900000 {
+ compatible = "moxa,moxart-mac0";
+ reg = <0x90900000 0x1000>,
+ <0x80000050 0x5>; /* MAC address stored on flash */
+ interrupts = <25 0>;
+ };
+
+ mac1: mac at 92000000 {
+ compatible = "moxa,moxart-mac1";
+ reg = <0x92000000 0x1000>,
+ <0x80000056 0x5>; /* MAC address stored on flash */
+ interrupts = <27 0>;
+ };
+
+ uart0: uart at 98200000 {
+ compatible = "ns16550a";
+ reg = <0x98200000 0x20>;
+ interrupts = <31 0>;
+ reg-shift = <2>;
+ reg-io-width = <4>;
+ clock-frequency = <14745600>;
+ status = "okay";
+ };
+
+ chosen {
+ /* uncomment to use on board flash root
+ bootargs = "console=ttyS0,115200n8 root=/dev/mtdblock2 rootfstype=jffs2 rw";
+ */
+ bootargs = "console=ttyS0,115200n8 root=/dev/mmcblk0p1 rw rootwait";
+ };
+};
diff --git a/arch/arm/boot/dts/moxart.dtsi b/arch/arm/boot/dts/moxart.dtsi
new file mode 100644
index 0000000..debedb7
--- /dev/null
+++ b/arch/arm/boot/dts/moxart.dtsi
@@ -0,0 +1,84 @@
+/* moxart.dtsi - Device Tree Include file for MOXA ART family SoC
+ *
+ * Copyright (C) 2013 Jonas Jensen <jonas.jensen at gmail.com>
+ *
+ * Licensed under GPLv2 or later. */
+
+/include/ "skeleton.dtsi"
+
+/ {
+ interrupt-parent = <&intc>;
+
+ cpus {
+ cpu at 0 {
+ compatible = "faraday,fa526";
+ };
+ };
+
+ clocks {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ osc: oscillator {
+ #clock-cells = <0>;
+ compatible = "fixed-clock";
+ clock-frequency = <24000000>;
+ };
+ };
+
+ soc {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ reg = <0x90000000 0x10000000>;
+ ranges;
+
+ intc: interrupt-controller at 98800000 {
+ compatible = "moxa,moxart-interrupt-controller";
+ reg = <0x98800000 0x38>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupt-mask = <0x00080000>; /* single register vector, interrupts 0-31, 1s signify edge */
+ };
+
+ timer: timer at 98400000 {
+ compatible = "moxa,moxart-timer";
+ reg = <0x98400000 0x10>;
+ interrupts = <19 1>;
+ };
+
+ gpio: gpio at 98700000 {
+ compatible = "moxa,moxart-gpio";
+ reg = <0x98700000 0x1000>,
+ <0x98100100 0x4>; /* Power Management Unit
+ enable/disable pin 0-31 (32bit register) */
+ };
+
+ rtc: rtc {
+ compatible = "moxa,moxart-rtc";
+ };
+
+ dma: dma at 90500000 {
+ compatible = "moxa,moxart-dma";
+ reg = <0x90500000 0x1000>;
+ interrupts = <24 0>;
+ };
+
+ watchdog: watchdog at 98500000 {
+ compatible = "moxa,moxart-watchdog";
+ reg = <0x98500000 0x1000>;
+ };
+
+ pmu: pmu at 98100000 { /* Power Management Unit */
+ compatible = "moxa,moxart-pmu";
+ reg = <0x98100000 0x34>; /* offset mul @ 0x30, val @ 0x0c (2 * 32 bit registers) */
+ clocks {
+ sys_clk: sys_clk {
+ #clock-cells = <0>;
+ compatible = "moxa,moxart-sysclk";
+ clock-output-names = "sys_clk";
+ };
+ };
+ };
+ };
+};
--
1.7.2.5
More information about the linux-arm-kernel
mailing list