blob: 2022a1fa31cabf0c4ae39ee425d451cb6636182b [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001/* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) */
2/*
3 * Copyright (C) 2020 STMicroelectronics - All Rights Reserved
4 * Copyright (C) 2020 Ahmad Fatoum, Pengutronix
5 */
6
7#include "stm32mp15-pinctrl.dtsi"
8
9#include <dt-bindings/mfd/st,stpmic1.h>
10
11/ {
12 reserved-memory {
13 #address-cells = <1>;
14 #size-cells = <1>;
15 ranges;
16
17 mcuram2: mcuram2@10000000 {
18 compatible = "shared-dma-pool";
19 reg = <0x10000000 0x40000>;
20 no-map;
21 };
22
23 vdev0vring0: vdev0vring0@10040000 {
24 compatible = "shared-dma-pool";
25 reg = <0x10040000 0x1000>;
26 no-map;
27 };
28
29 vdev0vring1: vdev0vring1@10041000 {
30 compatible = "shared-dma-pool";
31 reg = <0x10041000 0x1000>;
32 no-map;
33 };
34
35 vdev0buffer: vdev0buffer@10042000 {
36 compatible = "shared-dma-pool";
37 reg = <0x10042000 0x4000>;
38 no-map;
39 };
40
41 mcuram: mcuram@30000000 {
42 compatible = "shared-dma-pool";
43 reg = <0x30000000 0x40000>;
44 no-map;
45 };
46
47 retram: retram@38000000 {
48 compatible = "shared-dma-pool";
49 reg = <0x38000000 0x10000>;
50 no-map;
51 };
52 };
53};
54
55&i2c4 {
56 pinctrl-names = "default", "sleep";
57 pinctrl-0 = <&i2c4_pins_a>;
58 pinctrl-1 = <&i2c4_sleep_pins_a>;
59 clock-frequency = <400000>;
60 i2c-scl-rising-time-ns = <185>;
61 i2c-scl-falling-time-ns = <20>;
62 status = "okay";
63
64 pmic: stpmic@33 {
65 compatible = "st,stpmic1";
66 reg = <0x33>;
67 interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
68 interrupt-controller;
69 #interrupt-cells = <2>;
70
71 regulators {
72 compatible = "st,stpmic1-regulators";
73
74 ldo1-supply = <&v3v3>;
75 ldo3-supply = <&vdd_ddr>;
76 ldo6-supply = <&v3v3>;
77 pwr_sw1-supply = <&bst_out>;
78
79 vddcore: buck1 {
80 regulator-name = "vddcore";
81 regulator-min-microvolt = <1200000>;
82 regulator-max-microvolt = <1350000>;
83 regulator-always-on;
84 regulator-initial-mode = <0>;
85 regulator-over-current-protection;
86 };
87
88 vdd_ddr: buck2 {
89 regulator-name = "vdd_ddr";
90 regulator-min-microvolt = <1350000>;
91 regulator-max-microvolt = <1350000>;
92 regulator-always-on;
93 regulator-initial-mode = <0>;
94 regulator-over-current-protection;
95 };
96
97 vdd: buck3 {
98 regulator-name = "vdd";
99 regulator-min-microvolt = <3300000>;
100 regulator-max-microvolt = <3300000>;
101 regulator-always-on;
102 st,mask-reset;
103 regulator-initial-mode = <0>;
104 regulator-over-current-protection;
105 };
106
107 v3v3: buck4 {
108 regulator-name = "v3v3";
109 regulator-min-microvolt = <3300000>;
110 regulator-max-microvolt = <3300000>;
111 regulator-always-on;
112 regulator-over-current-protection;
113 regulator-initial-mode = <0>;
114 };
115
116 v1v8_audio: ldo1 {
117 regulator-name = "v1v8_audio";
118 regulator-min-microvolt = <1800000>;
119 regulator-max-microvolt = <1800000>;
120 interrupts = <IT_CURLIM_LDO1 0>;
121 };
122
123 v3v3_hdmi: ldo2 {
124 regulator-name = "v3v3_hdmi";
125 regulator-min-microvolt = <3300000>;
126 regulator-max-microvolt = <3300000>;
127 interrupts = <IT_CURLIM_LDO2 0>;
128 };
129
130 vtt_ddr: ldo3 {
131 regulator-name = "vtt_ddr";
132 regulator-min-microvolt = <500000>;
133 regulator-max-microvolt = <750000>;
134 regulator-always-on;
135 regulator-over-current-protection;
136 };
137
138 vdd_usb: ldo4 {
139 regulator-name = "vdd_usb";
140 interrupts = <IT_CURLIM_LDO4 0>;
141 };
142
143 vdda: ldo5 {
144 regulator-name = "vdda";
145 regulator-min-microvolt = <2900000>;
146 regulator-max-microvolt = <2900000>;
147 interrupts = <IT_CURLIM_LDO5 0>;
148 regulator-boot-on;
149 };
150
151 v1v2_hdmi: ldo6 {
152 regulator-name = "v1v2_hdmi";
153 regulator-min-microvolt = <1200000>;
154 regulator-max-microvolt = <1200000>;
155 interrupts = <IT_CURLIM_LDO6 0>;
156 };
157
158 vref_ddr: vref_ddr {
159 regulator-name = "vref_ddr";
160 regulator-always-on;
161 };
162
163 bst_out: boost {
164 regulator-name = "bst_out";
165 interrupts = <IT_OCP_BOOST 0>;
166 };
167
168 vbus_otg: pwr_sw1 {
169 regulator-name = "vbus_otg";
170 interrupts = <IT_OCP_OTG 0>;
171 regulator-active-discharge = <1>;
172 };
173
174 vbus_sw: pwr_sw2 {
175 regulator-name = "vbus_sw";
176 interrupts = <IT_OCP_SWOUT 0>;
177 regulator-active-discharge = <1>;
178 };
179 };
180
181 onkey {
182 compatible = "st,stpmic1-onkey";
183 interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
184 interrupt-names = "onkey-falling", "onkey-rising";
185 };
186
187 pmic_watchdog: watchdog {
188 compatible = "st,stpmic1-wdt";
189 status = "disabled";
190 };
191 };
192
193 sip_eeprom: eeprom@50 {
194 compatible = "atmel,24c32";
195 vcc-supply = <&vdd>;
196 reg = <0x50>;
197 };
198};
199
200&ipcc {
201 status = "okay";
202};
203
204&m4_rproc {
205 memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>,
206 <&vdev0vring1>, <&vdev0buffer>;
207 mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>;
208 mbox-names = "vq0", "vq1", "shutdown", "detach";
209 interrupt-parent = <&exti>;
210 interrupts = <68 1>;
211 status = "okay";
212};
213
214&rng1 {
215 status = "okay";
216};
Tom Rini6b642ac2024-10-01 12:20:28 -0600217
218&pwr_regulators {
219 vdd-supply = <&vdd>;
220 vdd_3v3_usbfs-supply = <&vdd_usb>;
221};
222
223&usbphyc_port0 {
224 phy-supply = <&vdd_usb>;
225};
226
227&usbphyc_port1 {
228 phy-supply = <&vdd_usb>;
229};