1/*
2 * Copyright (c) 2019-2021 Linaro Limited
3 * Copyright 2024 Arm Limited and/or its affiliates <open-source-office@arm.com>
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 */
7
8sysclk: system-clock {
9	compatible = "fixed-clock";
10	clock-frequency = <25000000>;
11	#clock-cells = <0>;
12};
13
14gpio0: gpio@1100000 {
15	compatible = "arm,cmsdk-gpio";
16	reg = <0x1100000 0x1000>;
17	interrupts = <69 3>;
18	gpio-controller;
19	#gpio-cells = <2>;
20};
21
22gpio1: gpio@1101000 {
23	compatible = "arm,cmsdk-gpio";
24	reg = <0x1101000 0x1000>;
25	interrupts = <70 3>;
26	gpio-controller;
27	#gpio-cells = <2>;
28};
29
30gpio2: gpio@1102000 {
31	compatible = "arm,cmsdk-gpio";
32	reg = <0x1102000 0x1000>;
33	interrupts = <71 3>;
34	gpio-controller;
35	#gpio-cells = <2>;
36};
37
38gpio3: gpio@1103000 {
39	compatible = "arm,cmsdk-gpio";
40	reg = <0x1103000 0x1000>;
41	interrupts = <72 3>;
42	gpio-controller;
43	#gpio-cells = <2>;
44};
45
46eth0: eth@1400000 {
47	/* Linux has "smsc,lan9115" */
48	compatible = "smsc,lan9220";
49	/* Actual reg range is ~0x200 */
50	reg = <0x1400000 0x100000>;
51	interrupts = <49 3>;
52};
53
54i2c_touch: i2c@9200000 {
55	compatible = "arm,versatile-i2c";
56	clock-frequency = <I2C_BITRATE_STANDARD>;
57	#address-cells = <1>;
58	#size-cells = <0>;
59	reg = <0x9200000 0x1000>;
60};
61
62i2c_audio_conf: i2c@9201000 {
63	compatible = "arm,versatile-i2c";
64	clock-frequency = <I2C_BITRATE_STANDARD>;
65	#address-cells = <1>;
66	#size-cells = <0>;
67	reg = <0x9201000 0x1000>;
68};
69
70spi_adc: spi@9202000 {
71	compatible = "arm,pl022";
72	reg = <0x9202000 DT_SIZE_K(4)>;
73	interrupts = <53 3>;
74	interrupt-names = "shield_adc";
75	clocks = <&sysclk>;
76	#address-cells = <1>;
77	#size-cells = <0>;
78};
79
80spi_shield0: spi@9203000 {
81	compatible = "arm,pl022";
82	reg = <0x9203000 DT_SIZE_K(4)>;
83	interrupts = <54 3>;
84	interrupt-names = "shield0_spi";
85	clocks = <&sysclk>;
86	#address-cells = <1>;
87	#size-cells = <0>;
88};
89
90spi_shield1: spi@9204000 {
91	compatible = "arm,pl022";
92	reg = <0x9204000 DT_SIZE_K(4)>;
93	interrupts = <55 3>;
94	interrupt-names = "shield1_spi";
95	clocks = <&sysclk>;
96	#address-cells = <1>;
97	#size-cells = <0>;
98};
99
100i2c_shield0: i2c@9205000 {
101	compatible = "arm,versatile-i2c";
102	clock-frequency = <I2C_BITRATE_STANDARD>;
103	#address-cells = <1>;
104	#size-cells = <0>;
105	reg = <0x9205000 0x1000>;
106};
107
108i2c_shield1: i2c@9206000 {
109	compatible = "arm,versatile-i2c";
110	clock-frequency = <I2C_BITRATE_STANDARD>;
111	#address-cells = <1>;
112	#size-cells = <0>;
113	reg = <0x9206000 0x1000>;
114};
115
116i2c_ddr4_eeprom: i2c@9208000 {
117	compatible = "arm,versatile-i2c";
118	clock-frequency = <I2C_BITRATE_STANDARD>;
119	#address-cells = <1>;
120	#size-cells = <0>;
121	reg = <0x9208000 0x1000>;
122};
123
124gpio_led0: mps3_fpgaio@9302000 {
125	compatible = "arm,mps3-fpgaio-gpio";
126
127	reg = <0x9302000 0x4>;
128	gpio-controller;
129	#gpio-cells = <1>;
130	ngpios = <8>;
131};
132
133gpio_button: mps3_fpgaio@9302008 {
134	compatible = "arm,mps3-fpgaio-gpio";
135
136	reg = <0x9302008 0x4>;
137	gpio-controller;
138	#gpio-cells = <1>;
139	ngpios = <2>;
140};
141
142gpio_misc: mps3_fpgaio@930204c {
143	compatible = "arm,mps3-fpgaio-gpio";
144
145	reg = <0x930204c 0x4>;
146	gpio-controller;
147	#gpio-cells = <1>;
148	ngpios = <3>;
149};
150
151uart0: uart@9303000 {
152	compatible = "arm,cmsdk-uart";
153	reg = <0x9303000 0x1000>;
154	interrupts = <34 3 33 3>;
155	interrupt-names = "tx", "rx";
156	clocks = <&sysclk>;
157	current-speed = <115200>;
158};
159
160uart1: uart@9304000 {
161	compatible = "arm,cmsdk-uart";
162	reg = <0x9304000 0x1000>;
163	interrupts = <36 3 35 3>;
164	interrupt-names = "tx", "rx";
165	clocks = <&sysclk>;
166	current-speed = <115200>;
167};
168
169uart2: uart@9305000 {
170	compatible = "arm,cmsdk-uart";
171	reg = <0x9305000 0x1000>;
172	interrupts = <38 3 37 3>;
173	interrupt-names = "tx", "rx";
174	clocks = <&sysclk>;
175	current-speed = <115200>;
176};
177
178uart3: uart@9306000 {
179	compatible = "arm,cmsdk-uart";
180	reg = <0x9306000 0x1000>;
181	interrupts = <40 3 39 3>;
182	interrupt-names = "tx", "rx";
183	clocks = <&sysclk>;
184	current-speed = <115200>;
185};
186
187uart4: uart@9307000 {
188	compatible = "arm,cmsdk-uart";
189	reg = <0x9307000 0x1000>;
190	interrupts = <42 3 41 3>;
191	interrupt-names = "tx", "rx";
192	clocks = <&sysclk>;
193	current-speed = <115200>;
194};
195
196uart5: uart@9308000 {
197	compatible = "arm,cmsdk-uart";
198	status = "disabled";
199	reg = <0x9308000 0x1000>;
200	interrupt-names = "tx", "rx";
201	interrupts = <126 3 125 3>;
202	clocks = <&sysclk>;
203	current-speed = <115200>;
204};
205