Merge tag 'sched_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / arch / arm / boot / dts / owl-s500-roseapplepi.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Roseapple Pi
4  *
5  * Copyright (C) 2020-2021 Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
6  */
7
8 /dts-v1/;
9
10 #include "owl-s500.dtsi"
11
12 / {
13         compatible = "roseapplepi,roseapplepi", "actions,s500";
14         model = "Roseapple Pi";
15
16         aliases {
17                 mmc0 = &mmc0;
18                 serial2 = &uart2;
19         };
20
21         chosen {
22                 stdout-path = "serial2:115200n8";
23         };
24
25         memory@0 {
26                 device_type = "memory";
27                 reg = <0x0 0x80000000>; /* 2GB */
28         };
29
30         syspwr: regulator-5v0 {
31                 compatible = "regulator-fixed";
32                 regulator-name = "SYSPWR";
33                 regulator-min-microvolt = <5000000>;
34                 regulator-max-microvolt = <5000000>;
35                 regulator-always-on;
36         };
37 };
38
39 &cpu0 {
40         cpu0-supply = <&vdd_cpu>;
41 };
42
43 &i2c0 {
44         status = "okay";
45         pinctrl-names = "default";
46         pinctrl-0 = <&i2c0_pins>;
47
48         atc260x: pmic@65 {
49                 compatible = "actions,atc2603c";
50                 reg = <0x65>;
51                 interrupt-parent = <&sirq>;
52                 interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
53
54                 reset-time-sec = <6>;
55
56                 regulators {
57                         compatible = "actions,atc2603c-regulator";
58
59                         dcdc1-supply = <&syspwr>;
60                         dcdc2-supply = <&syspwr>;
61                         dcdc3-supply = <&syspwr>;
62                         ldo1-supply = <&syspwr>;
63                         ldo2-supply = <&syspwr>;
64                         ldo3-supply = <&syspwr>;
65                         ldo5-supply = <&syspwr>;
66                         ldo6-supply = <&syspwr>;
67                         ldo7-supply = <&syspwr>;
68                         ldo8-supply = <&syspwr>;
69                         ldo11-supply = <&syspwr>;
70                         ldo12-supply = <&syspwr>;
71                         switchldo1-supply = <&vcc>;
72
73                         vdd_cpu: dcdc1 {
74                                 regulator-name = "VDD_CPU";
75                                 regulator-min-microvolt = <700000>;
76                                 regulator-max-microvolt = <1400000>;
77                                 regulator-always-on;
78                         };
79
80                         vddq: dcdc2 {
81                                 regulator-name = "VDDQ";
82                                 regulator-min-microvolt = <1300000>;
83                                 regulator-max-microvolt = <2150000>;
84                                 regulator-always-on;
85                                 regulator-boot-on;
86                         };
87
88                         vcc: dcdc3 {
89                                 regulator-name = "VCC";
90                                 regulator-min-microvolt = <2600000>;
91                                 regulator-max-microvolt = <3300000>;
92                                 regulator-always-on;
93                         };
94
95                         vcc_3v3: ldo1 {
96                                 regulator-name = "VCC_3V3";
97                                 regulator-min-microvolt = <2600000>;
98                                 regulator-max-microvolt = <3300000>;
99                                 regulator-always-on;
100                         };
101
102                         avcc: ldo2 {
103                                 regulator-name = "AVCC";
104                                 regulator-min-microvolt = <2600000>;
105                                 regulator-max-microvolt = <3300000>;
106                                 regulator-always-on;
107                         };
108
109                         vdd_1v8: ldo3 {
110                                 regulator-name = "VDD_1V8";
111                                 regulator-min-microvolt = <1500000>;
112                                 regulator-max-microvolt = <2000000>;
113                                 regulator-always-on;
114                         };
115
116                         vcc_3v1: ldo5 {
117                                 regulator-name = "VCC_3V1";
118                                 regulator-min-microvolt = <2600000>;
119                                 regulator-max-microvolt = <3300000>;
120                         };
121
122                         avdd: ldo6 {
123                                 regulator-name = "AVDD";
124                                 regulator-min-microvolt = <700000>;
125                                 regulator-max-microvolt = <1400000>;
126                                 regulator-always-on;
127                         };
128
129                         sens_1v8: ldo7 {
130                                 regulator-name = "SENS_1V8";
131                                 regulator-min-microvolt = <1800000>;
132                                 regulator-max-microvolt = <1800000>;
133                         };
134
135                         ldo8: ldo8 {
136                                 regulator-name = "LDO8";
137                                 regulator-min-microvolt = <2300000>;
138                                 regulator-max-microvolt = <3300000>;
139                         };
140
141                         svcc: ldo11 {
142                                 regulator-name = "SVCC";
143                                 regulator-min-microvolt = <2600000>;
144                                 regulator-max-microvolt = <3300000>;
145                                 regulator-always-on;
146                         };
147
148                         rtc_vdd: ldo12 {
149                                 regulator-name = "RTC_VDD";
150                                 regulator-min-microvolt = <1800000>;
151                                 regulator-max-microvolt = <1800000>;
152                                 regulator-always-on;
153                         };
154
155                         sd_vcc: switchldo1 {
156                                 regulator-name = "SD_VCC";
157                                 regulator-min-microvolt = <3000000>;
158                                 regulator-max-microvolt = <3300000>;
159                                 regulator-always-on;
160                                 regulator-boot-on;
161                         };
162                 };
163         };
164 };
165
166 &i2c1 {
167         status = "disabled";
168         pinctrl-names = "default";
169         pinctrl-0 = <&i2c1_pins>;
170 };
171
172 &i2c2 {
173         status = "disabled";
174         pinctrl-names = "default";
175         pinctrl-0 = <&i2c2_pins>;
176 };
177
178 &pinctrl {
179         i2c0_pins: i2c0-pins {
180                 pinmux {
181                         groups = "i2c0_mfp";
182                         function = "i2c0";
183                 };
184
185                 pinconf {
186                         pins = "i2c0_sclk", "i2c0_sdata";
187                         bias-pull-up;
188                 };
189         };
190
191         i2c1_pins: i2c1-pins {
192                 pinconf {
193                         pins = "i2c1_sclk", "i2c1_sdata";
194                         bias-pull-up;
195                 };
196         };
197
198         i2c2_pins: i2c2-pins {
199                 pinconf {
200                         pins = "i2c2_sclk", "i2c2_sdata";
201                         bias-pull-up;
202                 };
203         };
204
205         mmc0_pins: mmc0-pins {
206                 pinmux {
207                         groups = "sd0_d0_mfp", "sd0_d1_mfp", "sd0_d2_d3_mfp",
208                                  "sd0_cmd_mfp", "sd0_clk_mfp";
209                         function = "sd0";
210                 };
211
212                 drv-pinconf {
213                         groups = "sd0_d0_d3_drv", "sd0_cmd_drv", "sd0_clk_drv";
214                         drive-strength = <8>;
215                 };
216
217                 bias0-pinconf {
218                         pins = "sd0_d0", "sd0_d1", "sd0_d2",
219                                "sd0_d3", "sd0_cmd";
220                         bias-pull-up;
221                 };
222
223                 bias1-pinconf {
224                         pins = "sd0_clk";
225                         bias-pull-down;
226                 };
227         };
228
229         ethernet_pins: ethernet-pins {
230                 eth_rmii-pinmux {
231                         groups = "rmii_txd0_mfp", "rmii_txd1_mfp",
232                                  "rmii_rxd0_mfp", "rmii_rxd1_mfp",
233                                  "rmii_txen_mfp", "rmii_rxen_mfp",
234                                  "rmii_crs_dv_mfp", "rmii_ref_clk_mfp";
235                         function = "eth_rmii";
236                 };
237
238                 phy_clk-pinmux {
239                         groups = "clko_25m_mfp";
240                         function = "clko_25m";
241                 };
242
243                 ref_clk-pinconf {
244                         groups = "rmii_ref_clk_drv";
245                         drive-strength = <2>;
246                 };
247
248         };
249 };
250
251 /* uSD */
252 &mmc0 {
253         status = "okay";
254         pinctrl-names = "default";
255         pinctrl-0 = <&mmc0_pins>;
256         no-sdio;
257         no-mmc;
258         no-1-8-v;
259         cd-gpios = <&pinctrl 117 GPIO_ACTIVE_LOW>;
260         bus-width = <4>;
261         vmmc-supply = <&sd_vcc>;
262         vqmmc-supply = <&sd_vcc>;
263 };
264
265 &ethernet {
266         pinctrl-names = "default";
267         pinctrl-0 = <&ethernet_pins>;
268         phy-mode = "rmii";
269         phy-handle = <&eth_phy>;
270         status = "okay";
271
272         mdio {
273                 #address-cells = <1>;
274                 #size-cells = <0>;
275
276                 reset-gpios = <&pinctrl 88 GPIO_ACTIVE_LOW>; /* GPIOC24 */
277                 reset-delay-us = <10000>;
278                 reset-post-delay-us = <150000>;
279
280                 eth_phy: ethernet-phy@3 {
281                         reg = <0x3>;
282                         max-speed = <100>;
283                         interrupt-parent = <&sirq>;
284                         interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
285                 };
286         };
287 };
288
289 &twd_timer {
290         status = "okay";
291 };
292
293 &timer {
294         clocks = <&hosc>;
295 };
296
297 &uart2 {
298         status = "okay";
299 };