[RFC PATCH 13/14] ARM: vexpress: Definition of vexpress dts specification

Lorenzo Pieralisi lorenzo.pieralisi at arm.com
Thu Aug 19 04:59:59 EST 2010


The device tree methodology requires a dts file to be defined per
platform in order to describe the platform address space and topology,
in short the device tree in source format.

This patch adds the dts file for the Versatile Express board.
Some device names are still temporary and non-compliant waiting for the
definition of proper clock bindings.

Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
---
 arch/arm/boot/dts/vexpress.dts |  199 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 199 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/boot/dts/vexpress.dts

diff --git a/arch/arm/boot/dts/vexpress.dts b/arch/arm/boot/dts/vexpress.dts
new file mode 100644
index 0000000..cc58603
--- /dev/null
+++ b/arch/arm/boot/dts/vexpress.dts
@@ -0,0 +1,199 @@
+/dts-v1/;
+
+/ {
+	model = "versatile-express";
+	compatible = "arm,versatile-express";
+	#address-cells = <1>;
+	#size-cells = <1>;
+	#interrupt-cells = <1>;
+	interrupt-parent = <&intc>;
+
+	memory {
+		name = "memory";
+		device_type = "memory";
+		reg = <0x60000000 0x20000000>;
+	};
+
+	chosen {
+		bootargs = "rdinit=/bin/ash console=ttyAMA0 vga=0x311 mem=512M debug earlyprintk";
+	};
+
+	soc {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		device_type = "soc";
+		compatible = "simple-bus";
+		ranges = <0x00000000 0x00000000 0xFFFFFFFF>;
+
+		gic-cpu {
+			#address-cells = <0>;
+			#interrupt-cells = <1>;
+			interrupt-controller;
+			reg = <0x1e000100 0x1000>;
+			compatible = "arm,gic-cpu-interrupt-controller";
+			device_type = "gic";
+		};
+
+		intc: gic-dist {
+			#address-cells = <0>;
+			#interrupt-cells = <1>;
+			interrupt-controller;
+			reg = <0x1e001000 0x1000>;
+			compatible = "arm,gic-dist-interrupt-controller";
+			device_type = "gic";
+			irq-start = <29>;
+		};
+
+		smsc at 4e000000 {
+			compatible = "smc,smsc-911";
+			 reg = <0x4e000000 0x1000>;
+			interrupts = <47>;
+			flags = <2>;
+			irq-polarity = <1>;
+			irq-type = <1>;
+			phy-interface = <0>;
+		};
+
+		flash at 40000000 {
+			compatible = "arm,arm-flash";
+			reg = <0x40000000 0x4000000
+			       0x44000000 0x4000000>;
+		};
+
+		isp at 4f000000 {
+			compatible = "nxp,usb-isp1761";
+			reg = <0x4f000000 0x20000>;
+			interrupts = <48>;
+			port1_otg;
+		};
+
+		ddc at 10016000 {
+			compatible = "arm,versatile-i2c";
+			reg = <0x10016000 0x1000>;
+		};
+
+		pmu at 0 {
+			compatible = "arm,arm-pmu";
+			interrupts = <92 93 94 95>;
+		};
+
+		timer at 10011000 {
+			compatible = "arm,arm-sp804";
+			reg = <0x10011000 0x1000>;
+			interrupts = <34>;
+		};
+
+		timer at 10012000 {
+			compatible = "arm,arm-sp804";
+			reg = <0x10012000 0x1000>;
+		};
+
+	};
+
+	amba {
+		compatible = "arm,amba";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		uart at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x10009000 0x1000>;
+			arm,amba-deviceid = <0x00141011>;
+			interrupts = <37>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		uart at 1 {
+			compatible = "arm,amba-device";
+			reg = <0x1000a000 0x1000>;
+			arm,amba-deviceid = <0x00141011>;
+			interrupts = <38>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		kbd at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x10006000 0x1000>;
+			arm,amba-deviceid = <0x00041050>;
+			interrupts = <44>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		aaci at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x10004000 0x1000>;
+			arm,amba-deviceid = <0x00041041>;
+			interrupts = <43>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		ps2 at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x10007000 0x1000>;
+			arm,amba-deviceid = <0x00041050>;
+			interrupts = <45>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		rtc at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x10017000 0x1000>;
+			arm,amba-deviceid = <0x00041031>;
+			interrupts = <36>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		wdt at 0 {
+			compatible = "arm,amba-device";
+			reg = <0x1000f000 0x1000>;
+			arm,amba-deviceid = <0x00041085>;
+			interrupts = <32>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		clcd at 0 {
+			compatible = "arm,clcd-pl11x","arm,amba-device";
+			reg = <0x10020000 0x1000>;
+			arm,amba-deviceid = <0x00041111>;
+			interrupts = <76>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		mmci at 0 {
+			compatible = "arm,mmc-pl18x","arm,amba-device";
+			reg = <0x10005000 0x1000>;
+			interrupts = <41 42>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		dmc at 0 {
+			compatible = "arm,dmc","arm,amba-device";
+			reg = <0x100e0000 0x1000>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		smc at 0 {
+			compatible = "arm,smc","arm,amba-device";
+			reg = <0x100e1000 0x1000>;
+			interrupts = <77 78>;
+			clock-map = <&ref24_clk 0>;
+		};
+
+		gpio at 0 {
+			compatible = "arm,gpio","arm,amba-device";
+			reg = <0x100e8000 0x1000>;
+			interrupts = <82>;
+			clock-map = <&ref24_clk 0>;
+		};
+	};
+
+	clocks {
+		ref24_clk: clock at 0 {
+			device_type = "clock";
+			compatible = "fixed-clock";
+			clock-frequency = <24000000>;
+			clock-output-names = "ref";
+		};
+	};
+
+};
-- 
1.6.3.3



More information about the devicetree-discuss mailing list