vt8500.dtsi 2.8 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/*
 * vt8500.dtsi - Device tree file for VIA VT8500 SoC
 *
 * Copyright (C) 2012 Tony Prisk <linux@prisktech.co.nz>
 *
 * Licensed under GPLv2 or later
 */

/include/ "skeleton.dtsi"

/ {
	compatible = "via,vt8500";

	soc {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "simple-bus";
		ranges;
		interrupt-parent = <&intc>;

		intc: interrupt-controller@d8140000 {
			compatible = "via,vt8500-intc";
			interrupt-controller;
			reg = <0xd8140000 0x10000>;
			#interrupt-cells = <1>;
		};

28 29
		pinctrl: pinctrl@d8110000 {
			compatible = "via,vt8500-pinctrl";
30
			reg = <0xd8110000 0x10000>;
31 32 33 34
			interrupt-controller;
			#interrupt-cells = <2>;
			gpio-controller;
			#gpio-cells = <2>;
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
		};

		pmc@d8130000 {
			compatible = "via,vt8500-pmc";
			reg = <0xd8130000 0x1000>;

			clocks {
				#address-cells = <1>;
				#size-cells = <0>;

				ref24: ref24M {
					#clock-cells = <0>;
					compatible = "fixed-clock";
					clock-frequency = <24000000>;
				};
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81

				clkuart0: uart0 {
					#clock-cells = <0>;
					compatible = "via,vt8500-device-clock";
					clocks = <&ref24>;
					enable-reg = <0x250>;
					enable-bit = <1>;
				};

				clkuart1: uart1 {
					#clock-cells = <0>;
					compatible = "via,vt8500-device-clock";
					clocks = <&ref24>;
					enable-reg = <0x250>;
					enable-bit = <2>;
				};

				clkuart2: uart2 {
					#clock-cells = <0>;
					compatible = "via,vt8500-device-clock";
					clocks = <&ref24>;
					enable-reg = <0x250>;
					enable-bit = <3>;
				};

				clkuart3: uart3 {
					#clock-cells = <0>;
					compatible = "via,vt8500-device-clock";
					clocks = <&ref24>;
					enable-reg = <0x250>;
					enable-bit = <4>;
				};
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
			};
		};

		timer@d8130100 {
			compatible = "via,vt8500-timer";
			reg = <0xd8130100 0x28>;
			interrupts = <36>;
		};

		ehci@d8007900 {
			compatible = "via,vt8500-ehci";
			reg = <0xd8007900 0x200>;
			interrupts = <43>;
		};

		uhci@d8007b00 {
			compatible = "platform-uhci";
			reg = <0xd8007b00 0x200>;
			interrupts = <43>;
		};

103
		fb: fb@d8050800 {
104 105 106 107 108 109 110 111 112 113 114 115 116 117
			compatible = "via,vt8500-fb";
			reg = <0xd800e400 0x400>;
			interrupts = <12>;
		};

		ge_rops@d8050400 {
			compatible = "wm,prizm-ge-rops";
			reg = <0xd8050400 0x100>;
		};

		uart@d8200000 {
			compatible = "via,vt8500-uart";
			reg = <0xd8200000 0x1040>;
			interrupts = <32>;
118
			clocks = <&clkuart0>;
119 120 121 122 123 124
		};

		uart@d82b0000 {
			compatible = "via,vt8500-uart";
			reg = <0xd82b0000 0x1040>;
			interrupts = <33>;
125
			clocks = <&clkuart1>;
126 127 128 129 130 131
		};

		uart@d8210000 {
			compatible = "via,vt8500-uart";
			reg = <0xd8210000 0x1040>;
			interrupts = <47>;
132
			clocks = <&clkuart2>;
133 134 135 136 137 138
		};

		uart@d82c0000 {
			compatible = "via,vt8500-uart";
			reg = <0xd82c0000 0x1040>;
			interrupts = <50>;
139
			clocks = <&clkuart3>;
140 141 142 143 144 145 146 147 148
		};

		rtc@d8100000 {
			compatible = "via,vt8500-rtc";
			reg = <0xd8100000 0x10000>;
			interrupts = <48>;
		};
	};
};