4 * Versatile Express (VE) system model
5 * Motherboard component
11 arm,v2m-memory-map = "rs1";
12 compatible = "arm,vexpress,v2m-p1", "simple-bus";
13 #address-cells = <2>; /* SMB chipselect number and offset */
15 #interrupt-cells = <1>;
19 compatible = "arm,vexpress-flash", "cfi-flash";
20 reg = <0 0x00000000 0x04000000>,
21 <4 0x00000000 0x04000000>;
25 v2m_video_ram: vram@2,00000000 {
26 compatible = "arm,vexpress-vram";
27 reg = <2 0x00000000 0x00800000>;
31 compatible = "smsc,lan91c111";
32 reg = <2 0x02000000 0x10000>;
36 v2m_clk24mhz: clk24mhz {
37 compatible = "fixed-clock";
39 clock-frequency = <24000000>;
40 clock-output-names = "v2m:clk24mhz";
43 v2m_refclk1mhz: refclk1mhz {
44 compatible = "fixed-clock";
46 clock-frequency = <1000000>;
47 clock-output-names = "v2m:refclk1mhz";
50 v2m_refclk32khz: refclk32khz {
51 compatible = "fixed-clock";
53 clock-frequency = <32768>;
54 clock-output-names = "v2m:refclk32khz";
58 compatible = "arm,amba-bus", "simple-bus";
61 ranges = <0 3 0 0x200000>;
63 v2m_sysreg: sysreg@010000 {
64 compatible = "arm,vexpress-sysreg";
65 reg = <0x010000 0x1000>;
70 v2m_sysctl: sysctl@020000 {
71 compatible = "arm,sp810", "arm,primecell";
72 reg = <0x020000 0x1000>;
73 clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&v2m_clk24mhz>;
74 clock-names = "refclk", "timclk", "apb_pclk";
76 clock-output-names = "timerclken0", "timerclken1", "timerclken2", "timerclken3";
77 assigned-clocks = <&v2m_sysctl 0>, <&v2m_sysctl 1>, <&v2m_sysctl 3>, <&v2m_sysctl 3>;
78 assigned-clock-parents = <&v2m_refclk1mhz>, <&v2m_refclk1mhz>, <&v2m_refclk1mhz>, <&v2m_refclk1mhz>;
82 compatible = "arm,pl041", "arm,primecell";
83 reg = <0x040000 0x1000>;
85 clocks = <&v2m_clk24mhz>;
86 clock-names = "apb_pclk";
90 compatible = "arm,pl180", "arm,primecell";
91 reg = <0x050000 0x1000>;
93 cd-gpios = <&v2m_sysreg 0 0>;
94 wp-gpios = <&v2m_sysreg 1 0>;
95 max-frequency = <12000000>;
96 vmmc-supply = <&v2m_fixed_3v3>;
97 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
98 clock-names = "mclk", "apb_pclk";
102 compatible = "arm,pl050", "arm,primecell";
103 reg = <0x060000 0x1000>;
105 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
106 clock-names = "KMIREFCLK", "apb_pclk";
110 compatible = "arm,pl050", "arm,primecell";
111 reg = <0x070000 0x1000>;
113 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
114 clock-names = "KMIREFCLK", "apb_pclk";
117 v2m_serial0: uart@090000 {
118 compatible = "arm,pl011", "arm,primecell";
119 reg = <0x090000 0x1000>;
121 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
122 clock-names = "uartclk", "apb_pclk";
125 v2m_serial1: uart@0a0000 {
126 compatible = "arm,pl011", "arm,primecell";
127 reg = <0x0a0000 0x1000>;
129 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
130 clock-names = "uartclk", "apb_pclk";
133 v2m_serial2: uart@0b0000 {
134 compatible = "arm,pl011", "arm,primecell";
135 reg = <0x0b0000 0x1000>;
137 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
138 clock-names = "uartclk", "apb_pclk";
141 v2m_serial3: uart@0c0000 {
142 compatible = "arm,pl011", "arm,primecell";
143 reg = <0x0c0000 0x1000>;
145 clocks = <&v2m_clk24mhz>, <&v2m_clk24mhz>;
146 clock-names = "uartclk", "apb_pclk";
150 compatible = "arm,sp805", "arm,primecell";
151 reg = <0x0f0000 0x1000>;
153 clocks = <&v2m_refclk32khz>, <&v2m_clk24mhz>;
154 clock-names = "wdogclk", "apb_pclk";
157 v2m_timer01: timer@110000 {
158 compatible = "arm,sp804", "arm,primecell";
159 reg = <0x110000 0x1000>;
161 clocks = <&v2m_sysctl 0>, <&v2m_sysctl 1>, <&v2m_clk24mhz>;
162 clock-names = "timclken1", "timclken2", "apb_pclk";
165 v2m_timer23: timer@120000 {
166 compatible = "arm,sp804", "arm,primecell";
167 reg = <0x120000 0x1000>;
169 clocks = <&v2m_sysctl 2>, <&v2m_sysctl 3>, <&v2m_clk24mhz>;
170 clock-names = "timclken1", "timclken2", "apb_pclk";
174 compatible = "arm,pl031", "arm,primecell";
175 reg = <0x170000 0x1000>;
177 clocks = <&v2m_clk24mhz>;
178 clock-names = "apb_pclk";
182 compatible = "arm,pl111", "arm,primecell";
183 reg = <0x1f0000 0x1000>;
184 interrupt-names = "combined";
186 clocks = <&v2m_oscclk1>, <&v2m_clk24mhz>;
187 clock-names = "clcdclk", "apb_pclk";
188 arm,pl11x,framebuffer = <0x18000000 0x00180000>;
189 memory-region = <&v2m_video_ram>;
190 max-memory-bandwidth = <130000000>; /* 16bpp @ 63.5MHz */
193 v2m_clcd_pads: endpoint {
194 remote-endpoint = <&v2m_clcd_panel>;
195 arm,pl11x,tft-r0g0b0-pads = <0 8 16>;
200 compatible = "panel-dpi";
203 v2m_clcd_panel: endpoint {
204 remote-endpoint = <&v2m_clcd_pads>;
209 clock-frequency = <63500127>;
222 virtio_block@0130000 {
223 compatible = "virtio,mmio";
224 reg = <0x130000 0x200>;
229 v2m_fixed_3v3: fixedregulator@0 {
230 compatible = "regulator-fixed";
231 regulator-name = "3V3";
232 regulator-min-microvolt = <3300000>;
233 regulator-max-microvolt = <3300000>;
238 compatible = "arm,vexpress,config-bus";
239 arm,vexpress,config-bridge = <&v2m_sysreg>;
243 compatible = "arm,vexpress-osc";
244 arm,vexpress-sysreg,func = <1 1>;
245 freq-range = <23750000 63500000>;
247 clock-output-names = "v2m:oscclk1";
251 compatible = "arm,vexpress-reset";
252 arm,vexpress-sysreg,func = <5 0>;
256 compatible = "arm,vexpress-muxfpga";
257 arm,vexpress-sysreg,func = <7 0>;
261 compatible = "arm,vexpress-shutdown";
262 arm,vexpress-sysreg,func = <8 0>;
266 compatible = "arm,vexpress-reboot";
267 arm,vexpress-sysreg,func = <9 0>;
271 compatible = "arm,vexpress-dvimode";
272 arm,vexpress-sysreg,func = <11 0>;