1f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Copyright (C) 2019-2020 Marek Vasut <marex@denx.de> 4f126890aSEmmanuel Vadot */ 5f126890aSEmmanuel Vadot 6f126890aSEmmanuel Vadot#include "stm32mp15-pinctrl.dtsi" 7f126890aSEmmanuel Vadot#include "stm32mp15xxaa-pinctrl.dtsi" 8f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 9f126890aSEmmanuel Vadot#include <dt-bindings/mfd/st,stpmic1.h> 10f126890aSEmmanuel Vadot 11f126890aSEmmanuel Vadot/ { 12f126890aSEmmanuel Vadot aliases { 13f126890aSEmmanuel Vadot ethernet0 = ðernet0; 14f126890aSEmmanuel Vadot ethernet1 = &ksz8851; 15f126890aSEmmanuel Vadot rtc0 = &hwrtc; 16f126890aSEmmanuel Vadot rtc1 = &rtc; 17f126890aSEmmanuel Vadot }; 18f126890aSEmmanuel Vadot 19f126890aSEmmanuel Vadot memory@c0000000 { 20f126890aSEmmanuel Vadot device_type = "memory"; 21f126890aSEmmanuel Vadot reg = <0xC0000000 0x40000000>; 22f126890aSEmmanuel Vadot }; 23f126890aSEmmanuel Vadot 24f126890aSEmmanuel Vadot reserved-memory { 25f126890aSEmmanuel Vadot #address-cells = <1>; 26f126890aSEmmanuel Vadot #size-cells = <1>; 27f126890aSEmmanuel Vadot ranges; 28f126890aSEmmanuel Vadot 29f126890aSEmmanuel Vadot mcuram2: mcuram2@10000000 { 30f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 31f126890aSEmmanuel Vadot reg = <0x10000000 0x40000>; 32f126890aSEmmanuel Vadot no-map; 33f126890aSEmmanuel Vadot }; 34f126890aSEmmanuel Vadot 35f126890aSEmmanuel Vadot vdev0vring0: vdev0vring0@10040000 { 36f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 37f126890aSEmmanuel Vadot reg = <0x10040000 0x1000>; 38f126890aSEmmanuel Vadot no-map; 39f126890aSEmmanuel Vadot }; 40f126890aSEmmanuel Vadot 41f126890aSEmmanuel Vadot vdev0vring1: vdev0vring1@10041000 { 42f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 43f126890aSEmmanuel Vadot reg = <0x10041000 0x1000>; 44f126890aSEmmanuel Vadot no-map; 45f126890aSEmmanuel Vadot }; 46f126890aSEmmanuel Vadot 47f126890aSEmmanuel Vadot vdev0buffer: vdev0buffer@10042000 { 48f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 49f126890aSEmmanuel Vadot reg = <0x10042000 0x4000>; 50f126890aSEmmanuel Vadot no-map; 51f126890aSEmmanuel Vadot }; 52f126890aSEmmanuel Vadot 53f126890aSEmmanuel Vadot mcuram: mcuram@30000000 { 54f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 55f126890aSEmmanuel Vadot reg = <0x30000000 0x40000>; 56f126890aSEmmanuel Vadot no-map; 57f126890aSEmmanuel Vadot }; 58f126890aSEmmanuel Vadot 59f126890aSEmmanuel Vadot retram: retram@38000000 { 60f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 61f126890aSEmmanuel Vadot reg = <0x38000000 0x10000>; 62f126890aSEmmanuel Vadot no-map; 63f126890aSEmmanuel Vadot }; 64f126890aSEmmanuel Vadot }; 65f126890aSEmmanuel Vadot 66f126890aSEmmanuel Vadot ethernet_vio: vioregulator { 67f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 68f126890aSEmmanuel Vadot regulator-name = "vio"; 69f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 70f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 71f126890aSEmmanuel Vadot gpio = <&gpiog 3 GPIO_ACTIVE_LOW>; 72f126890aSEmmanuel Vadot regulator-always-on; 73f126890aSEmmanuel Vadot regulator-boot-on; 74f126890aSEmmanuel Vadot vin-supply = <&vdd>; 75f126890aSEmmanuel Vadot }; 76f126890aSEmmanuel Vadot}; 77f126890aSEmmanuel Vadot 78f126890aSEmmanuel Vadot&adc { 79f126890aSEmmanuel Vadot vdd-supply = <&vdd>; 80f126890aSEmmanuel Vadot vdda-supply = <&vdda>; 81f126890aSEmmanuel Vadot vref-supply = <&vdda>; 82f126890aSEmmanuel Vadot status = "okay"; 83f126890aSEmmanuel Vadot}; 84f126890aSEmmanuel Vadot 85f126890aSEmmanuel Vadot&adc1 { 86f126890aSEmmanuel Vadot channel@0 { 87f126890aSEmmanuel Vadot reg = <0>; 88f126890aSEmmanuel Vadot st,min-sample-time-ns = <5000>; 89f126890aSEmmanuel Vadot }; 90f126890aSEmmanuel Vadot}; 91f126890aSEmmanuel Vadot 92f126890aSEmmanuel Vadot&adc2 { 93f126890aSEmmanuel Vadot channel@1 { 94f126890aSEmmanuel Vadot reg = <1>; 95f126890aSEmmanuel Vadot st,min-sample-time-ns = <5000>; 96f126890aSEmmanuel Vadot }; 97f126890aSEmmanuel Vadot}; 98f126890aSEmmanuel Vadot 99f126890aSEmmanuel Vadot&crc1 { 100f126890aSEmmanuel Vadot status = "okay"; 101f126890aSEmmanuel Vadot}; 102f126890aSEmmanuel Vadot 103f126890aSEmmanuel Vadot&dac { 104f126890aSEmmanuel Vadot pinctrl-names = "default"; 105f126890aSEmmanuel Vadot pinctrl-0 = <&dac_ch1_pins_a &dac_ch2_pins_a>; 106f126890aSEmmanuel Vadot vref-supply = <&vdda>; 107f126890aSEmmanuel Vadot status = "okay"; 108f126890aSEmmanuel Vadot 109f126890aSEmmanuel Vadot dac1: dac@1 { 110f126890aSEmmanuel Vadot status = "okay"; 111f126890aSEmmanuel Vadot }; 112f126890aSEmmanuel Vadot dac2: dac@2 { 113f126890aSEmmanuel Vadot status = "okay"; 114f126890aSEmmanuel Vadot }; 115f126890aSEmmanuel Vadot}; 116f126890aSEmmanuel Vadot 117f126890aSEmmanuel Vadot&dts { 118f126890aSEmmanuel Vadot status = "okay"; 119f126890aSEmmanuel Vadot}; 120f126890aSEmmanuel Vadot 121f126890aSEmmanuel Vadotðernet0 { 122f126890aSEmmanuel Vadot status = "okay"; 123f126890aSEmmanuel Vadot pinctrl-0 = <ðernet0_rmii_pins_c &mco2_pins_a>; 124f126890aSEmmanuel Vadot pinctrl-1 = <ðernet0_rmii_sleep_pins_c &mco2_sleep_pins_a>; 125f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 126f126890aSEmmanuel Vadot phy-mode = "rmii"; 127f126890aSEmmanuel Vadot max-speed = <100>; 128f126890aSEmmanuel Vadot phy-handle = <&phy0>; 129f126890aSEmmanuel Vadot 130f126890aSEmmanuel Vadot mdio { 131f126890aSEmmanuel Vadot #address-cells = <1>; 132f126890aSEmmanuel Vadot #size-cells = <0>; 133f126890aSEmmanuel Vadot compatible = "snps,dwmac-mdio"; 134f126890aSEmmanuel Vadot 135f126890aSEmmanuel Vadot phy0: ethernet-phy@1 { 136f126890aSEmmanuel Vadot reg = <1>; 137f126890aSEmmanuel Vadot /* LAN8710Ai */ 138f126890aSEmmanuel Vadot compatible = "ethernet-phy-id0007.c0f0", 139f126890aSEmmanuel Vadot "ethernet-phy-ieee802.3-c22"; 140f126890aSEmmanuel Vadot clocks = <&rcc CK_MCO2>; 141f126890aSEmmanuel Vadot reset-gpios = <&gpioh 3 GPIO_ACTIVE_LOW>; 142f126890aSEmmanuel Vadot reset-assert-us = <500>; 143f126890aSEmmanuel Vadot reset-deassert-us = <500>; 144f126890aSEmmanuel Vadot smsc,disable-energy-detect; 145f126890aSEmmanuel Vadot interrupt-parent = <&gpioi>; 146f126890aSEmmanuel Vadot interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 147f126890aSEmmanuel Vadot }; 148f126890aSEmmanuel Vadot }; 149f126890aSEmmanuel Vadot}; 150f126890aSEmmanuel Vadot 151f126890aSEmmanuel Vadot&fmc { 152f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 153f126890aSEmmanuel Vadot pinctrl-0 = <&fmc_pins_b>; 154f126890aSEmmanuel Vadot pinctrl-1 = <&fmc_sleep_pins_b>; 155f126890aSEmmanuel Vadot status = "okay"; 156f126890aSEmmanuel Vadot 157f126890aSEmmanuel Vadot ksz8851: ethernet@1,0 { 158f126890aSEmmanuel Vadot compatible = "micrel,ks8851-mll"; 159f126890aSEmmanuel Vadot reg = <1 0x0 0x2>, <1 0x2 0x20000>; 160f126890aSEmmanuel Vadot interrupt-parent = <&gpioc>; 161f126890aSEmmanuel Vadot interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 162f126890aSEmmanuel Vadot bank-width = <2>; 163f126890aSEmmanuel Vadot 164f126890aSEmmanuel Vadot /* Timing values are in nS */ 165f126890aSEmmanuel Vadot st,fmc2-ebi-cs-mux-enable; 166f126890aSEmmanuel Vadot st,fmc2-ebi-cs-transaction-type = <4>; 167f126890aSEmmanuel Vadot st,fmc2-ebi-cs-buswidth = <16>; 168f126890aSEmmanuel Vadot st,fmc2-ebi-cs-address-setup-ns = <5>; 169f126890aSEmmanuel Vadot st,fmc2-ebi-cs-address-hold-ns = <5>; 170f126890aSEmmanuel Vadot st,fmc2-ebi-cs-bus-turnaround-ns = <5>; 171f126890aSEmmanuel Vadot st,fmc2-ebi-cs-data-setup-ns = <45>; 172f126890aSEmmanuel Vadot st,fmc2-ebi-cs-data-hold-ns = <1>; 173f126890aSEmmanuel Vadot st,fmc2-ebi-cs-write-address-setup-ns = <5>; 174f126890aSEmmanuel Vadot st,fmc2-ebi-cs-write-address-hold-ns = <5>; 175f126890aSEmmanuel Vadot st,fmc2-ebi-cs-write-bus-turnaround-ns = <5>; 176f126890aSEmmanuel Vadot st,fmc2-ebi-cs-write-data-setup-ns = <45>; 177f126890aSEmmanuel Vadot st,fmc2-ebi-cs-write-data-hold-ns = <1>; 178f126890aSEmmanuel Vadot }; 179f126890aSEmmanuel Vadot}; 180f126890aSEmmanuel Vadot 181f126890aSEmmanuel Vadot&gpioa { 182f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 183f126890aSEmmanuel Vadot "", "", "DHCOM-K", "", 184f126890aSEmmanuel Vadot "", "", "", "", 185f126890aSEmmanuel Vadot "", "", "", ""; 186f126890aSEmmanuel Vadot}; 187f126890aSEmmanuel Vadot 188f126890aSEmmanuel Vadot&gpiob { 189f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 190f126890aSEmmanuel Vadot "", "", "", "", 191f126890aSEmmanuel Vadot "DHCOM-Q", "", "", "", 192f126890aSEmmanuel Vadot "", "", "", ""; 193f126890aSEmmanuel Vadot}; 194f126890aSEmmanuel Vadot 195f126890aSEmmanuel Vadot&gpioc { 196f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 197f126890aSEmmanuel Vadot "", "", "DHCOM-E", "", 198f126890aSEmmanuel Vadot "", "", "", "", 199f126890aSEmmanuel Vadot "", "", "", ""; 200f126890aSEmmanuel Vadot}; 201f126890aSEmmanuel Vadot 202f126890aSEmmanuel Vadot&gpiod { 203f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 204f126890aSEmmanuel Vadot "", "", "DHCOM-B", "", 205f126890aSEmmanuel Vadot "", "", "", "DHCOM-F", 206f126890aSEmmanuel Vadot "DHCOM-D", "", "", ""; 207f126890aSEmmanuel Vadot}; 208f126890aSEmmanuel Vadot 209f126890aSEmmanuel Vadot&gpioe { 210f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 211f126890aSEmmanuel Vadot "", "", "DHCOM-P", "", 212f126890aSEmmanuel Vadot "", "", "", "", 213f126890aSEmmanuel Vadot "", "", "", ""; 214f126890aSEmmanuel Vadot}; 215f126890aSEmmanuel Vadot 216f126890aSEmmanuel Vadot&gpiof { 217f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "DHCOM-A", 218f126890aSEmmanuel Vadot "", "", "", "", 219f126890aSEmmanuel Vadot "", "", "", "", 220f126890aSEmmanuel Vadot "", "", "", ""; 221f126890aSEmmanuel Vadot}; 222f126890aSEmmanuel Vadot 223f126890aSEmmanuel Vadot&gpiog { 224f126890aSEmmanuel Vadot gpio-line-names = "DHCOM-C", "", "", "", 225f126890aSEmmanuel Vadot "", "", "", "", 226f126890aSEmmanuel Vadot "DHCOM-L", "", "", "", 227f126890aSEmmanuel Vadot "", "", "", ""; 228f126890aSEmmanuel Vadot}; 229f126890aSEmmanuel Vadot 230f126890aSEmmanuel Vadot&gpioh { 231f126890aSEmmanuel Vadot gpio-line-names = "", "", "", "", 232f126890aSEmmanuel Vadot "", "", "", "DHCOM-N", 233f126890aSEmmanuel Vadot "DHCOM-J", "DHCOM-W", "DHCOM-V", "DHCOM-U", 234f126890aSEmmanuel Vadot "DHCOM-T", "", "DHCOM-S", ""; 235f126890aSEmmanuel Vadot}; 236f126890aSEmmanuel Vadot 237f126890aSEmmanuel Vadot&gpioi { 238f126890aSEmmanuel Vadot gpio-line-names = "DHCOM-G", "DHCOM-O", "DHCOM-H", "DHCOM-I", 239f126890aSEmmanuel Vadot "DHCOM-R", "DHCOM-M", "", "", 240f126890aSEmmanuel Vadot "", "", "", "", 241f126890aSEmmanuel Vadot "", "", "", ""; 242f126890aSEmmanuel Vadot}; 243f126890aSEmmanuel Vadot 244f126890aSEmmanuel Vadot&i2c4 { 245f126890aSEmmanuel Vadot pinctrl-names = "default"; 246f126890aSEmmanuel Vadot pinctrl-0 = <&i2c4_pins_a>; 247f126890aSEmmanuel Vadot i2c-scl-rising-time-ns = <185>; 248f126890aSEmmanuel Vadot i2c-scl-falling-time-ns = <20>; 249f126890aSEmmanuel Vadot status = "okay"; 250f126890aSEmmanuel Vadot /* spare dmas for other usage */ 251f126890aSEmmanuel Vadot /delete-property/dmas; 252f126890aSEmmanuel Vadot /delete-property/dma-names; 253f126890aSEmmanuel Vadot 254f126890aSEmmanuel Vadot hwrtc: rtc@32 { 255f126890aSEmmanuel Vadot compatible = "microcrystal,rv8803"; 256f126890aSEmmanuel Vadot reg = <0x32>; 257f126890aSEmmanuel Vadot }; 258f126890aSEmmanuel Vadot 259f126890aSEmmanuel Vadot pmic: stpmic@33 { 260f126890aSEmmanuel Vadot compatible = "st,stpmic1"; 261f126890aSEmmanuel Vadot reg = <0x33>; 262f126890aSEmmanuel Vadot interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; 263f126890aSEmmanuel Vadot interrupt-controller; 264f126890aSEmmanuel Vadot #interrupt-cells = <2>; 265f126890aSEmmanuel Vadot status = "okay"; 266f126890aSEmmanuel Vadot 267f126890aSEmmanuel Vadot regulators { 268f126890aSEmmanuel Vadot compatible = "st,stpmic1-regulators"; 269f126890aSEmmanuel Vadot ldo1-supply = <&v3v3>; 270f126890aSEmmanuel Vadot ldo2-supply = <&v3v3>; 271f126890aSEmmanuel Vadot ldo3-supply = <&vdd_ddr>; 272f126890aSEmmanuel Vadot ldo5-supply = <&v3v3>; 273f126890aSEmmanuel Vadot ldo6-supply = <&v3v3>; 274f126890aSEmmanuel Vadot pwr_sw1-supply = <&bst_out>; 275f126890aSEmmanuel Vadot pwr_sw2-supply = <&bst_out>; 276f126890aSEmmanuel Vadot 277f126890aSEmmanuel Vadot vddcore: buck1 { 278f126890aSEmmanuel Vadot regulator-name = "vddcore"; 279f126890aSEmmanuel Vadot regulator-min-microvolt = <800000>; 280f126890aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 281f126890aSEmmanuel Vadot regulator-always-on; 282f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 283f126890aSEmmanuel Vadot regulator-over-current-protection; 284f126890aSEmmanuel Vadot }; 285f126890aSEmmanuel Vadot 286f126890aSEmmanuel Vadot vdd_ddr: buck2 { 287f126890aSEmmanuel Vadot regulator-name = "vdd_ddr"; 288f126890aSEmmanuel Vadot regulator-min-microvolt = <1350000>; 289f126890aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 290f126890aSEmmanuel Vadot regulator-always-on; 291f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 292f126890aSEmmanuel Vadot regulator-over-current-protection; 293f126890aSEmmanuel Vadot }; 294f126890aSEmmanuel Vadot 295f126890aSEmmanuel Vadot vdd: buck3 { 296f126890aSEmmanuel Vadot regulator-name = "vdd"; 297f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 298f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 299f126890aSEmmanuel Vadot regulator-always-on; 300f126890aSEmmanuel Vadot st,mask-reset; 301f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 302f126890aSEmmanuel Vadot regulator-over-current-protection; 303f126890aSEmmanuel Vadot }; 304f126890aSEmmanuel Vadot 305f126890aSEmmanuel Vadot v3v3: buck4 { 306f126890aSEmmanuel Vadot regulator-name = "v3v3"; 307f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 308f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 309f126890aSEmmanuel Vadot regulator-always-on; 310f126890aSEmmanuel Vadot regulator-over-current-protection; 311f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 312f126890aSEmmanuel Vadot }; 313f126890aSEmmanuel Vadot 314f126890aSEmmanuel Vadot vdda: ldo1 { 315f126890aSEmmanuel Vadot regulator-name = "vdda"; 316f126890aSEmmanuel Vadot regulator-always-on; 317f126890aSEmmanuel Vadot regulator-min-microvolt = <2900000>; 318f126890aSEmmanuel Vadot regulator-max-microvolt = <2900000>; 319f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO1 0>; 320f126890aSEmmanuel Vadot }; 321f126890aSEmmanuel Vadot 322f126890aSEmmanuel Vadot v2v8: ldo2 { 323f126890aSEmmanuel Vadot regulator-name = "v2v8"; 324f126890aSEmmanuel Vadot regulator-min-microvolt = <2800000>; 325f126890aSEmmanuel Vadot regulator-max-microvolt = <2800000>; 326f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO2 0>; 327f126890aSEmmanuel Vadot }; 328f126890aSEmmanuel Vadot 329f126890aSEmmanuel Vadot vtt_ddr: ldo3 { 330f126890aSEmmanuel Vadot regulator-name = "vtt_ddr"; 331f126890aSEmmanuel Vadot regulator-min-microvolt = <500000>; 332f126890aSEmmanuel Vadot regulator-max-microvolt = <750000>; 333f126890aSEmmanuel Vadot regulator-always-on; 334f126890aSEmmanuel Vadot regulator-over-current-protection; 335f126890aSEmmanuel Vadot }; 336f126890aSEmmanuel Vadot 337f126890aSEmmanuel Vadot vdd_usb: ldo4 { 338f126890aSEmmanuel Vadot regulator-name = "vdd_usb"; 339f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO4 0>; 340f126890aSEmmanuel Vadot }; 341f126890aSEmmanuel Vadot 342f126890aSEmmanuel Vadot vdd_sd: ldo5 { 343f126890aSEmmanuel Vadot regulator-name = "vdd_sd"; 344f126890aSEmmanuel Vadot regulator-min-microvolt = <2900000>; 345f126890aSEmmanuel Vadot regulator-max-microvolt = <2900000>; 346f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO5 0>; 347f126890aSEmmanuel Vadot regulator-boot-on; 348f126890aSEmmanuel Vadot }; 349f126890aSEmmanuel Vadot 350f126890aSEmmanuel Vadot v1v8: ldo6 { 351f126890aSEmmanuel Vadot regulator-name = "v1v8"; 352f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 353f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 354f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO6 0>; 355f126890aSEmmanuel Vadot }; 356f126890aSEmmanuel Vadot 357f126890aSEmmanuel Vadot vref_ddr: vref_ddr { 358f126890aSEmmanuel Vadot regulator-name = "vref_ddr"; 359f126890aSEmmanuel Vadot regulator-always-on; 360f126890aSEmmanuel Vadot }; 361f126890aSEmmanuel Vadot 362f126890aSEmmanuel Vadot bst_out: boost { 363f126890aSEmmanuel Vadot regulator-name = "bst_out"; 364f126890aSEmmanuel Vadot interrupts = <IT_OCP_BOOST 0>; 365f126890aSEmmanuel Vadot }; 366f126890aSEmmanuel Vadot 367f126890aSEmmanuel Vadot vbus_otg: pwr_sw1 { 368f126890aSEmmanuel Vadot regulator-name = "vbus_otg"; 369f126890aSEmmanuel Vadot interrupts = <IT_OCP_OTG 0>; 370f126890aSEmmanuel Vadot }; 371f126890aSEmmanuel Vadot 372f126890aSEmmanuel Vadot vbus_sw: pwr_sw2 { 373f126890aSEmmanuel Vadot regulator-name = "vbus_sw"; 374f126890aSEmmanuel Vadot interrupts = <IT_OCP_SWOUT 0>; 375f126890aSEmmanuel Vadot regulator-active-discharge = <1>; 376f126890aSEmmanuel Vadot }; 377f126890aSEmmanuel Vadot }; 378f126890aSEmmanuel Vadot 379f126890aSEmmanuel Vadot onkey { 380f126890aSEmmanuel Vadot compatible = "st,stpmic1-onkey"; 381f126890aSEmmanuel Vadot interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 0>; 382f126890aSEmmanuel Vadot interrupt-names = "onkey-falling", "onkey-rising"; 383f126890aSEmmanuel Vadot power-off-time-sec = <10>; 384f126890aSEmmanuel Vadot status = "okay"; 385f126890aSEmmanuel Vadot }; 386f126890aSEmmanuel Vadot 387f126890aSEmmanuel Vadot watchdog { 388f126890aSEmmanuel Vadot compatible = "st,stpmic1-wdt"; 389f126890aSEmmanuel Vadot status = "disabled"; 390f126890aSEmmanuel Vadot }; 391f126890aSEmmanuel Vadot }; 392f126890aSEmmanuel Vadot 393f126890aSEmmanuel Vadot touchscreen@49 { 394f126890aSEmmanuel Vadot compatible = "ti,tsc2004"; 395f126890aSEmmanuel Vadot reg = <0x49>; 396f126890aSEmmanuel Vadot vio-supply = <&v3v3>; 397f126890aSEmmanuel Vadot interrupts-extended = <&gpioh 15 IRQ_TYPE_EDGE_FALLING>; 398f126890aSEmmanuel Vadot }; 399f126890aSEmmanuel Vadot 400f126890aSEmmanuel Vadot eeprom@50 { 401f126890aSEmmanuel Vadot compatible = "atmel,24c02"; 402f126890aSEmmanuel Vadot reg = <0x50>; 403f126890aSEmmanuel Vadot pagesize = <16>; 404f126890aSEmmanuel Vadot }; 405f126890aSEmmanuel Vadot}; 406f126890aSEmmanuel Vadot 407f126890aSEmmanuel Vadot&ipcc { 408f126890aSEmmanuel Vadot status = "okay"; 409f126890aSEmmanuel Vadot}; 410f126890aSEmmanuel Vadot 411f126890aSEmmanuel Vadot&iwdg2 { 412f126890aSEmmanuel Vadot timeout-sec = <32>; 413f126890aSEmmanuel Vadot status = "okay"; 414f126890aSEmmanuel Vadot}; 415f126890aSEmmanuel Vadot 416f126890aSEmmanuel Vadot&m4_rproc { 417f126890aSEmmanuel Vadot memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, 418f126890aSEmmanuel Vadot <&vdev0vring1>, <&vdev0buffer>; 419*aa1a8ff2SEmmanuel Vadot mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; 420*aa1a8ff2SEmmanuel Vadot mbox-names = "vq0", "vq1", "shutdown", "detach"; 421f126890aSEmmanuel Vadot interrupt-parent = <&exti>; 422f126890aSEmmanuel Vadot interrupts = <68 1>; 423f126890aSEmmanuel Vadot status = "okay"; 424f126890aSEmmanuel Vadot}; 425f126890aSEmmanuel Vadot 426f126890aSEmmanuel Vadot&pwr_regulators { 427f126890aSEmmanuel Vadot vdd-supply = <&vdd>; 428f126890aSEmmanuel Vadot vdd_3v3_usbfs-supply = <&vdd_usb>; 429f126890aSEmmanuel Vadot}; 430f126890aSEmmanuel Vadot 431f126890aSEmmanuel Vadot&qspi { 432f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 433f126890aSEmmanuel Vadot pinctrl-0 = <&qspi_clk_pins_a 434f126890aSEmmanuel Vadot &qspi_bk1_pins_a 435f126890aSEmmanuel Vadot &qspi_cs1_pins_a>; 436f126890aSEmmanuel Vadot pinctrl-1 = <&qspi_clk_sleep_pins_a 437f126890aSEmmanuel Vadot &qspi_bk1_sleep_pins_a 438f126890aSEmmanuel Vadot &qspi_cs1_sleep_pins_a>; 439f126890aSEmmanuel Vadot reg = <0x58003000 0x1000>, <0x70000000 0x4000000>; 440f126890aSEmmanuel Vadot #address-cells = <1>; 441f126890aSEmmanuel Vadot #size-cells = <0>; 442f126890aSEmmanuel Vadot status = "okay"; 443f126890aSEmmanuel Vadot 444f126890aSEmmanuel Vadot flash0: flash@0 { 445f126890aSEmmanuel Vadot compatible = "jedec,spi-nor"; 446f126890aSEmmanuel Vadot reg = <0>; 447f126890aSEmmanuel Vadot spi-rx-bus-width = <4>; 448f126890aSEmmanuel Vadot spi-max-frequency = <108000000>; 449f126890aSEmmanuel Vadot #address-cells = <1>; 450f126890aSEmmanuel Vadot #size-cells = <1>; 451f126890aSEmmanuel Vadot }; 452f126890aSEmmanuel Vadot}; 453f126890aSEmmanuel Vadot 454f126890aSEmmanuel Vadot&rcc { 455f126890aSEmmanuel Vadot /* Connect MCO2 output to ETH_RX_CLK input via pad-pad connection */ 456f126890aSEmmanuel Vadot clocks = <&rcc CK_MCO2>; 457f126890aSEmmanuel Vadot clock-names = "ETH_RX_CLK/ETH_REF_CLK"; 458f126890aSEmmanuel Vadot 459f126890aSEmmanuel Vadot /* 460f126890aSEmmanuel Vadot * Set PLL4P output to 100 MHz to supply SDMMC with faster clock, 461f126890aSEmmanuel Vadot * set MCO2 output to 50 MHz to supply ETHRX clock with PLL4P/2, 462f126890aSEmmanuel Vadot * so that MCO2 behaves as a divider for the ETHRX clock here. 463f126890aSEmmanuel Vadot */ 464f126890aSEmmanuel Vadot assigned-clocks = <&rcc CK_MCO2>, <&rcc PLL4_P>; 465f126890aSEmmanuel Vadot assigned-clock-parents = <&rcc PLL4_P>; 466f126890aSEmmanuel Vadot assigned-clock-rates = <50000000>, <100000000>; 467f126890aSEmmanuel Vadot}; 468f126890aSEmmanuel Vadot 469f126890aSEmmanuel Vadot&rng1 { 470f126890aSEmmanuel Vadot status = "okay"; 471f126890aSEmmanuel Vadot}; 472f126890aSEmmanuel Vadot 473f126890aSEmmanuel Vadot&rtc { 474f126890aSEmmanuel Vadot status = "okay"; 475f126890aSEmmanuel Vadot}; 476f126890aSEmmanuel Vadot 477f126890aSEmmanuel Vadot&sdmmc1 { 478f126890aSEmmanuel Vadot pinctrl-names = "default", "opendrain", "sleep", "init"; 479f126890aSEmmanuel Vadot pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>; 480f126890aSEmmanuel Vadot pinctrl-1 = <&sdmmc1_b4_od_pins_a &sdmmc1_dir_pins_a>; 481f126890aSEmmanuel Vadot pinctrl-2 = <&sdmmc1_b4_sleep_pins_a &sdmmc1_dir_sleep_pins_a>; 482f126890aSEmmanuel Vadot pinctrl-3 = <&sdmmc1_b4_init_pins_a &sdmmc1_dir_init_pins_a>; 483f126890aSEmmanuel Vadot cd-gpios = <&gpiog 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 484f126890aSEmmanuel Vadot disable-wp; 485f126890aSEmmanuel Vadot st,sig-dir; 486f126890aSEmmanuel Vadot st,neg-edge; 487f126890aSEmmanuel Vadot st,use-ckin; 488f126890aSEmmanuel Vadot st,cmd-gpios = <&gpiod 2 0>; 489f126890aSEmmanuel Vadot st,ck-gpios = <&gpioc 12 0>; 490f126890aSEmmanuel Vadot st,ckin-gpios = <&gpioe 4 0>; 491f126890aSEmmanuel Vadot bus-width = <4>; 492f126890aSEmmanuel Vadot vmmc-supply = <&vdd_sd>; 493f126890aSEmmanuel Vadot status = "okay"; 494f126890aSEmmanuel Vadot}; 495f126890aSEmmanuel Vadot 496f126890aSEmmanuel Vadot&sdmmc1_b4_pins_a { 497f126890aSEmmanuel Vadot /* 498f126890aSEmmanuel Vadot * SD bus pull-up resistors: 499f126890aSEmmanuel Vadot * - optional on SoMs with SD voltage translator 500f126890aSEmmanuel Vadot * - mandatory on SoMs without SD voltage translator 501f126890aSEmmanuel Vadot */ 502f126890aSEmmanuel Vadot pins1 { 503f126890aSEmmanuel Vadot bias-pull-up; 504f126890aSEmmanuel Vadot }; 505f126890aSEmmanuel Vadot pins2 { 506f126890aSEmmanuel Vadot bias-pull-up; 507f126890aSEmmanuel Vadot }; 508f126890aSEmmanuel Vadot}; 509f126890aSEmmanuel Vadot 510f126890aSEmmanuel Vadot&sdmmc2 { 511f126890aSEmmanuel Vadot pinctrl-names = "default", "opendrain", "sleep"; 512f126890aSEmmanuel Vadot pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_a>; 513f126890aSEmmanuel Vadot pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_a>; 514f126890aSEmmanuel Vadot pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_a>; 515f126890aSEmmanuel Vadot non-removable; 516f126890aSEmmanuel Vadot no-sd; 517f126890aSEmmanuel Vadot no-sdio; 518f126890aSEmmanuel Vadot st,neg-edge; 519f126890aSEmmanuel Vadot bus-width = <8>; 520f126890aSEmmanuel Vadot vmmc-supply = <&v3v3>; 521f126890aSEmmanuel Vadot vqmmc-supply = <&v3v3>; 522f126890aSEmmanuel Vadot mmc-ddr-3_3v; 523f126890aSEmmanuel Vadot status = "okay"; 524f126890aSEmmanuel Vadot}; 525f126890aSEmmanuel Vadot 526f126890aSEmmanuel Vadot&sdmmc3 { 527f126890aSEmmanuel Vadot pinctrl-names = "default", "opendrain", "sleep"; 528f126890aSEmmanuel Vadot pinctrl-0 = <&sdmmc3_b4_pins_a>; 529f126890aSEmmanuel Vadot pinctrl-1 = <&sdmmc3_b4_od_pins_a>; 530f126890aSEmmanuel Vadot pinctrl-2 = <&sdmmc3_b4_sleep_pins_a>; 531f126890aSEmmanuel Vadot broken-cd; 532f126890aSEmmanuel Vadot st,neg-edge; 533f126890aSEmmanuel Vadot bus-width = <4>; 534f126890aSEmmanuel Vadot vmmc-supply = <&v3v3>; 535f126890aSEmmanuel Vadot vqmmc-supply = <&v3v3>; 536f126890aSEmmanuel Vadot mmc-ddr-3_3v; 537f126890aSEmmanuel Vadot status = "okay"; 538f126890aSEmmanuel Vadot}; 539f126890aSEmmanuel Vadot 540f126890aSEmmanuel Vadot&uart4 { 541f126890aSEmmanuel Vadot pinctrl-names = "default"; 542f126890aSEmmanuel Vadot pinctrl-0 = <&uart4_pins_a>; 543f126890aSEmmanuel Vadot /delete-property/dmas; 544f126890aSEmmanuel Vadot /delete-property/dma-names; 545f126890aSEmmanuel Vadot status = "okay"; 546f126890aSEmmanuel Vadot}; 547