~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/st/stm32mp157c-ed1.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
  2 /*
  3  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
  4  * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
  5  */
  6 /dts-v1/;
  7 
  8 #include "stm32mp157.dtsi"
  9 #include "stm32mp15xc.dtsi"
 10 #include "stm32mp15-pinctrl.dtsi"
 11 #include "stm32mp15xxaa-pinctrl.dtsi"
 12 #include <dt-bindings/gpio/gpio.h>
 13 #include <dt-bindings/leds/common.h>
 14 #include <dt-bindings/mfd/st,stpmic1.h>
 15 
 16 / {
 17         model = "STMicroelectronics STM32MP157C eval daughter";
 18         compatible = "st,stm32mp157c-ed1", "st,stm32mp157";
 19 
 20         aliases {
 21                 serial0 = &uart4;
 22         };
 23 
 24         chosen {
 25                 stdout-path = "serial0:115200n8";
 26         };
 27 
 28         memory@c0000000 {
 29                 device_type = "memory";
 30                 reg = <0xC0000000 0x40000000>;
 31         };
 32 
 33         reserved-memory {
 34                 #address-cells = <1>;
 35                 #size-cells = <1>;
 36                 ranges;
 37 
 38                 mcuram2: mcuram2@10000000 {
 39                         compatible = "shared-dma-pool";
 40                         reg = <0x10000000 0x40000>;
 41                         no-map;
 42                 };
 43 
 44                 vdev0vring0: vdev0vring0@10040000 {
 45                         compatible = "shared-dma-pool";
 46                         reg = <0x10040000 0x1000>;
 47                         no-map;
 48                 };
 49 
 50                 vdev0vring1: vdev0vring1@10041000 {
 51                         compatible = "shared-dma-pool";
 52                         reg = <0x10041000 0x1000>;
 53                         no-map;
 54                 };
 55 
 56                 vdev0buffer: vdev0buffer@10042000 {
 57                         compatible = "shared-dma-pool";
 58                         reg = <0x10042000 0x4000>;
 59                         no-map;
 60                 };
 61 
 62                 mcuram: mcuram@30000000 {
 63                         compatible = "shared-dma-pool";
 64                         reg = <0x30000000 0x40000>;
 65                         no-map;
 66                 };
 67 
 68                 retram: retram@38000000 {
 69                         compatible = "shared-dma-pool";
 70                         reg = <0x38000000 0x10000>;
 71                         no-map;
 72                 };
 73         };
 74 
 75         led {
 76                 compatible = "gpio-leds";
 77                 led-blue {
 78                         gpios = <&gpiod 9 GPIO_ACTIVE_HIGH>;
 79                         linux,default-trigger = "heartbeat";
 80                         default-state = "off";
 81                         function = LED_FUNCTION_HEARTBEAT;
 82                         color = <LED_COLOR_ID_BLUE>;
 83                 };
 84         };
 85 
 86         sd_switch: regulator-sd_switch {
 87                 compatible = "regulator-gpio";
 88                 regulator-name = "sd_switch";
 89                 regulator-min-microvolt = <1800000>;
 90                 regulator-max-microvolt = <2900000>;
 91                 regulator-type = "voltage";
 92                 regulator-always-on;
 93 
 94                 gpios = <&gpiof 14 GPIO_ACTIVE_HIGH>;
 95                 gpios-states = <0>;
 96                 states = <1800000 0x1>,
 97                          <2900000 0x0>;
 98         };
 99 
100         vin: vin {
101                 compatible = "regulator-fixed";
102                 regulator-name = "vin";
103                 regulator-min-microvolt = <5000000>;
104                 regulator-max-microvolt = <5000000>;
105                 regulator-always-on;
106         };
107 };
108 
109 &adc {
110         /* ANA0, ANA1 are dedicated pins and don't need pinctrl: only in6. */
111         pinctrl-0 = <&adc1_in6_pins_a>;
112         pinctrl-names = "default";
113         vdd-supply = <&vdd>;
114         vdda-supply = <&vdda>;
115         vref-supply = <&vdda>;
116         status = "disabled";
117         adc1: adc@0 {
118                 status = "okay";
119                 channel@0 {
120                         reg = <0>;
121                         /* 16.5 ck_cycles sampling time */
122                         st,min-sample-time-ns = <400>;
123                 };
124                 channel@1 {
125                         reg = <1>;
126                         st,min-sample-time-ns = <400>;
127                 };
128                 channel@6 {
129                         reg = <6>;
130                         st,min-sample-time-ns = <400>;
131                 };
132         };
133 };
134 
135 &crc1 {
136         status = "okay";
137 };
138 
139 &cryp1 {
140         status = "okay";
141 };
142 
143 &dac {
144         pinctrl-names = "default";
145         pinctrl-0 = <&dac_ch1_pins_a &dac_ch2_pins_a>;
146         vref-supply = <&vdda>;
147         status = "disabled";
148         dac1: dac@1 {
149                 status = "okay";
150         };
151         dac2: dac@2 {
152                 status = "okay";
153         };
154 };
155 
156 &dts {
157         status = "okay";
158 };
159 
160 &hash1 {
161         status = "okay";
162 };
163 
164 &i2c4 {
165         pinctrl-names = "default", "sleep";
166         pinctrl-0 = <&i2c4_pins_a>;
167         pinctrl-1 = <&i2c4_sleep_pins_a>;
168         i2c-scl-rising-time-ns = <185>;
169         i2c-scl-falling-time-ns = <20>;
170         clock-frequency = <400000>;
171         status = "okay";
172         /* spare dmas for other usage */
173         /delete-property/dmas;
174         /delete-property/dma-names;
175 
176         pmic: stpmic@33 {
177                 compatible = "st,stpmic1";
178                 reg = <0x33>;
179                 interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
180                 interrupt-controller;
181                 #interrupt-cells = <2>;
182                 status = "okay";
183 
184                 regulators {
185                         compatible = "st,stpmic1-regulators";
186                         buck1-supply = <&vin>;
187                         buck2-supply = <&vin>;
188                         buck3-supply = <&vin>;
189                         buck4-supply = <&vin>;
190                         ldo1-supply = <&v3v3>;
191                         ldo2-supply = <&v3v3>;
192                         ldo3-supply = <&vdd_ddr>;
193                         ldo4-supply = <&vin>;
194                         ldo5-supply = <&v3v3>;
195                         ldo6-supply = <&v3v3>;
196                         vref_ddr-supply = <&vin>;
197                         boost-supply = <&vin>;
198                         pwr_sw1-supply = <&bst_out>;
199                         pwr_sw2-supply = <&bst_out>;
200 
201                         vddcore: buck1 {
202                                 regulator-name = "vddcore";
203                                 regulator-min-microvolt = <1200000>;
204                                 regulator-max-microvolt = <1350000>;
205                                 regulator-always-on;
206                                 regulator-initial-mode = <0>;
207                                 regulator-over-current-protection;
208                         };
209 
210                         vdd_ddr: buck2 {
211                                 regulator-name = "vdd_ddr";
212                                 regulator-min-microvolt = <1350000>;
213                                 regulator-max-microvolt = <1350000>;
214                                 regulator-always-on;
215                                 regulator-initial-mode = <0>;
216                                 regulator-over-current-protection;
217                         };
218 
219                         vdd: buck3 {
220                                 regulator-name = "vdd";
221                                 regulator-min-microvolt = <3300000>;
222                                 regulator-max-microvolt = <3300000>;
223                                 regulator-always-on;
224                                 st,mask-reset;
225                                 regulator-initial-mode = <0>;
226                                 regulator-over-current-protection;
227                         };
228 
229                         v3v3: buck4 {
230                                 regulator-name = "v3v3";
231                                 regulator-min-microvolt = <3300000>;
232                                 regulator-max-microvolt = <3300000>;
233                                 regulator-always-on;
234                                 regulator-over-current-protection;
235                                 regulator-initial-mode = <0>;
236                         };
237 
238                         vdda: ldo1 {
239                                 regulator-name = "vdda";
240                                 regulator-min-microvolt = <2900000>;
241                                 regulator-max-microvolt = <2900000>;
242                                 interrupts = <IT_CURLIM_LDO1 0>;
243                         };
244 
245                         v2v8: ldo2 {
246                                 regulator-name = "v2v8";
247                                 regulator-min-microvolt = <2800000>;
248                                 regulator-max-microvolt = <2800000>;
249                                 interrupts = <IT_CURLIM_LDO2 0>;
250                         };
251 
252                         vtt_ddr: ldo3 {
253                                 regulator-name = "vtt_ddr";
254                                 regulator-min-microvolt = <500000>;
255                                 regulator-max-microvolt = <750000>;
256                                 regulator-always-on;
257                                 regulator-over-current-protection;
258                         };
259 
260                         vdd_usb: ldo4 {
261                                 regulator-name = "vdd_usb";
262                                 interrupts = <IT_CURLIM_LDO4 0>;
263                         };
264 
265                         vdd_sd: ldo5 {
266                                 regulator-name = "vdd_sd";
267                                 regulator-min-microvolt = <2900000>;
268                                 regulator-max-microvolt = <2900000>;
269                                 interrupts = <IT_CURLIM_LDO5 0>;
270                                 regulator-boot-on;
271                         };
272 
273                         v1v8: ldo6 {
274                                 regulator-name = "v1v8";
275                                 regulator-min-microvolt = <1800000>;
276                                 regulator-max-microvolt = <1800000>;
277                                 interrupts = <IT_CURLIM_LDO6 0>;
278                         };
279 
280                         vref_ddr: vref_ddr {
281                                 regulator-name = "vref_ddr";
282                                 regulator-always-on;
283                         };
284 
285                         bst_out: boost {
286                                 regulator-name = "bst_out";
287                                 interrupts = <IT_OCP_BOOST 0>;
288                         };
289 
290                         vbus_otg: pwr_sw1 {
291                                 regulator-name = "vbus_otg";
292                                 interrupts = <IT_OCP_OTG 0>;
293                          };
294 
295                          vbus_sw: pwr_sw2 {
296                                 regulator-name = "vbus_sw";
297                                 interrupts = <IT_OCP_SWOUT 0>;
298                                 regulator-active-discharge = <1>;
299                          };
300                 };
301 
302                 onkey {
303                         compatible = "st,stpmic1-onkey";
304                         interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 0>;
305                         interrupt-names = "onkey-falling", "onkey-rising";
306                         power-off-time-sec = <10>;
307                         status = "okay";
308                 };
309 
310                 watchdog {
311                         compatible = "st,stpmic1-wdt";
312                         status = "disabled";
313                 };
314         };
315 };
316 
317 &ipcc {
318         status = "okay";
319 };
320 
321 &iwdg2 {
322         timeout-sec = <32>;
323         status = "okay";
324 };
325 
326 &m4_rproc {
327         memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>,
328                         <&vdev0vring1>, <&vdev0buffer>;
329         mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>;
330         mbox-names = "vq0", "vq1", "shutdown", "detach";
331         interrupt-parent = <&exti>;
332         interrupts = <68 1>;
333         status = "okay";
334 };
335 
336 &pwr_regulators {
337         vdd-supply = <&vdd>;
338         vdd_3v3_usbfs-supply = <&vdd_usb>;
339 };
340 
341 &rng1 {
342         status = "okay";
343 };
344 
345 &rtc {
346         status = "okay";
347 };
348 
349 &sdmmc1 {
350         pinctrl-names = "default", "opendrain", "sleep";
351         pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>;
352         pinctrl-1 = <&sdmmc1_b4_od_pins_a &sdmmc1_dir_pins_a>;
353         pinctrl-2 = <&sdmmc1_b4_sleep_pins_a &sdmmc1_dir_sleep_pins_a>;
354         cd-gpios = <&gpiog 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
355         disable-wp;
356         st,sig-dir;
357         st,neg-edge;
358         st,use-ckin;
359         bus-width = <4>;
360         vmmc-supply = <&vdd_sd>;
361         vqmmc-supply = <&sd_switch>;
362         sd-uhs-sdr12;
363         sd-uhs-sdr25;
364         sd-uhs-sdr50;
365         sd-uhs-ddr50;
366         status = "okay";
367 };
368 
369 &sdmmc2 {
370         pinctrl-names = "default", "opendrain", "sleep";
371         pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_a>;
372         pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_a>;
373         pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_a>;
374         non-removable;
375         no-sd;
376         no-sdio;
377         st,neg-edge;
378         bus-width = <8>;
379         vmmc-supply = <&v3v3>;
380         vqmmc-supply = <&vdd>;
381         mmc-ddr-3_3v;
382         status = "okay";
383 };
384 
385 &timers6 {
386         status = "okay";
387         /* spare dmas for other usage */
388         /delete-property/dmas;
389         /delete-property/dma-names;
390         timer@5 {
391                 status = "okay";
392         };
393 };
394 
395 &uart4 {
396         pinctrl-names = "default", "sleep", "idle";
397         pinctrl-0 = <&uart4_pins_a>;
398         pinctrl-1 = <&uart4_sleep_pins_a>;
399         pinctrl-2 = <&uart4_idle_pins_a>;
400         /delete-property/dmas;
401         /delete-property/dma-names;
402         status = "okay";
403 };
404 
405 &usbotg_hs {
406         vbus-supply = <&vbus_otg>;
407 };
408 
409 &usbphyc_port0 {
410         phy-supply = <&vdd_usb>;
411 };
412 
413 &usbphyc_port1 {
414         phy-supply = <&vdd_usb>;
415 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php