1f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Copyright (C) Linaro Ltd 2019 - All Rights Reserved 4f126890aSEmmanuel Vadot * Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 5f126890aSEmmanuel Vadot * Copyright (C) 2020 Marek Vasut <marex@denx.de> 6f126890aSEmmanuel Vadot */ 7f126890aSEmmanuel Vadot 8f126890aSEmmanuel Vadot#include "stm32mp15-pinctrl.dtsi" 9f126890aSEmmanuel Vadot#include "stm32mp15xxac-pinctrl.dtsi" 10f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 11f126890aSEmmanuel Vadot#include <dt-bindings/mfd/st,stpmic1.h> 12f126890aSEmmanuel Vadot 13f126890aSEmmanuel Vadot/ { 14f126890aSEmmanuel Vadot aliases { 15f126890aSEmmanuel Vadot spi0 = &qspi; 16f126890aSEmmanuel Vadot }; 17f126890aSEmmanuel Vadot 18f126890aSEmmanuel Vadot memory@c0000000 { 19f126890aSEmmanuel Vadot device_type = "memory"; 20f126890aSEmmanuel Vadot reg = <0xc0000000 0x40000000>; 21f126890aSEmmanuel Vadot }; 22f126890aSEmmanuel Vadot 23f126890aSEmmanuel Vadot reserved-memory { 24f126890aSEmmanuel Vadot #address-cells = <1>; 25f126890aSEmmanuel Vadot #size-cells = <1>; 26f126890aSEmmanuel Vadot ranges; 27f126890aSEmmanuel Vadot 28f126890aSEmmanuel Vadot mcuram2: mcuram2@10000000 { 29f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 30f126890aSEmmanuel Vadot reg = <0x10000000 0x40000>; 31f126890aSEmmanuel Vadot no-map; 32f126890aSEmmanuel Vadot }; 33f126890aSEmmanuel Vadot 34f126890aSEmmanuel Vadot vdev0vring0: vdev0vring0@10040000 { 35f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 36f126890aSEmmanuel Vadot reg = <0x10040000 0x1000>; 37f126890aSEmmanuel Vadot no-map; 38f126890aSEmmanuel Vadot }; 39f126890aSEmmanuel Vadot 40f126890aSEmmanuel Vadot vdev0vring1: vdev0vring1@10041000 { 41f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 42f126890aSEmmanuel Vadot reg = <0x10041000 0x1000>; 43f126890aSEmmanuel Vadot no-map; 44f126890aSEmmanuel Vadot }; 45f126890aSEmmanuel Vadot 46f126890aSEmmanuel Vadot vdev0buffer: vdev0buffer@10042000 { 47f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 48f126890aSEmmanuel Vadot reg = <0x10042000 0x4000>; 49f126890aSEmmanuel Vadot no-map; 50f126890aSEmmanuel Vadot }; 51f126890aSEmmanuel Vadot 52f126890aSEmmanuel Vadot mcuram: mcuram@30000000 { 53f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 54f126890aSEmmanuel Vadot reg = <0x30000000 0x40000>; 55f126890aSEmmanuel Vadot no-map; 56f126890aSEmmanuel Vadot }; 57f126890aSEmmanuel Vadot 58f126890aSEmmanuel Vadot retram: retram@38000000 { 59f126890aSEmmanuel Vadot compatible = "shared-dma-pool"; 60f126890aSEmmanuel Vadot reg = <0x38000000 0x10000>; 61f126890aSEmmanuel Vadot no-map; 62f126890aSEmmanuel Vadot }; 63f126890aSEmmanuel Vadot }; 64f126890aSEmmanuel Vadot}; 65f126890aSEmmanuel Vadot 66f126890aSEmmanuel Vadot&crc1 { 67f126890aSEmmanuel Vadot status = "okay"; 68f126890aSEmmanuel Vadot}; 69f126890aSEmmanuel Vadot 70f126890aSEmmanuel Vadot&dts { 71f126890aSEmmanuel Vadot status = "okay"; 72f126890aSEmmanuel Vadot}; 73f126890aSEmmanuel Vadot 74f126890aSEmmanuel Vadot&i2c4 { 75f126890aSEmmanuel Vadot pinctrl-names = "default"; 76f126890aSEmmanuel Vadot pinctrl-0 = <&i2c4_pins_a>; 77f126890aSEmmanuel Vadot i2c-scl-rising-time-ns = <185>; 78f126890aSEmmanuel Vadot i2c-scl-falling-time-ns = <20>; 79f126890aSEmmanuel Vadot status = "okay"; 80f126890aSEmmanuel Vadot /delete-property/dmas; 81f126890aSEmmanuel Vadot /delete-property/dma-names; 82f126890aSEmmanuel Vadot 83f126890aSEmmanuel Vadot pmic: stpmic@33 { 84f126890aSEmmanuel Vadot compatible = "st,stpmic1"; 85f126890aSEmmanuel Vadot reg = <0x33>; 86f126890aSEmmanuel Vadot interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; 87f126890aSEmmanuel Vadot interrupt-controller; 88f126890aSEmmanuel Vadot #interrupt-cells = <2>; 89f126890aSEmmanuel Vadot status = "okay"; 90f126890aSEmmanuel Vadot 91f126890aSEmmanuel Vadot regulators { 92f126890aSEmmanuel Vadot compatible = "st,stpmic1-regulators"; 93f126890aSEmmanuel Vadot 94f126890aSEmmanuel Vadot ldo1-supply = <&v3v3>; 95f126890aSEmmanuel Vadot ldo2-supply = <&v3v3>; 96f126890aSEmmanuel Vadot ldo3-supply = <&vdd_ddr>; 97f126890aSEmmanuel Vadot ldo5-supply = <&v3v3>; 98f126890aSEmmanuel Vadot ldo6-supply = <&v3v3>; 99f126890aSEmmanuel Vadot pwr_sw1-supply = <&bst_out>; 100f126890aSEmmanuel Vadot pwr_sw2-supply = <&bst_out>; 101f126890aSEmmanuel Vadot 102f126890aSEmmanuel Vadot vddcore: buck1 { 103f126890aSEmmanuel Vadot regulator-name = "vddcore"; 104f126890aSEmmanuel Vadot regulator-min-microvolt = <1200000>; 105f126890aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 106f126890aSEmmanuel Vadot regulator-always-on; 107f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 108f126890aSEmmanuel Vadot regulator-over-current-protection; 109f126890aSEmmanuel Vadot }; 110f126890aSEmmanuel Vadot 111f126890aSEmmanuel Vadot vdd_ddr: buck2 { 112f126890aSEmmanuel Vadot regulator-name = "vdd_ddr"; 113f126890aSEmmanuel Vadot regulator-min-microvolt = <1350000>; 114f126890aSEmmanuel Vadot regulator-max-microvolt = <1350000>; 115f126890aSEmmanuel Vadot regulator-always-on; 116f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 117f126890aSEmmanuel Vadot regulator-over-current-protection; 118f126890aSEmmanuel Vadot }; 119f126890aSEmmanuel Vadot 120f126890aSEmmanuel Vadot vdd: buck3 { 121f126890aSEmmanuel Vadot regulator-name = "vdd"; 122f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 123f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 124f126890aSEmmanuel Vadot regulator-always-on; 125f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 126f126890aSEmmanuel Vadot regulator-over-current-protection; 127f126890aSEmmanuel Vadot }; 128f126890aSEmmanuel Vadot 129f126890aSEmmanuel Vadot v3v3: buck4 { 130f126890aSEmmanuel Vadot regulator-name = "v3v3"; 131f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 132f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 133f126890aSEmmanuel Vadot regulator-always-on; 134f126890aSEmmanuel Vadot regulator-over-current-protection; 135f126890aSEmmanuel Vadot regulator-initial-mode = <0>; 136f126890aSEmmanuel Vadot }; 137f126890aSEmmanuel Vadot 138f126890aSEmmanuel Vadot vdda: ldo1 { 139f126890aSEmmanuel Vadot regulator-name = "vdda"; 140f126890aSEmmanuel Vadot regulator-min-microvolt = <2900000>; 141f126890aSEmmanuel Vadot regulator-max-microvolt = <2900000>; 142f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO1 0>; 143f126890aSEmmanuel Vadot }; 144f126890aSEmmanuel Vadot 145f126890aSEmmanuel Vadot v2v8: ldo2 { 146f126890aSEmmanuel Vadot regulator-name = "v2v8"; 147f126890aSEmmanuel Vadot regulator-min-microvolt = <2800000>; 148f126890aSEmmanuel Vadot regulator-max-microvolt = <2800000>; 149f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO2 0>; 150f126890aSEmmanuel Vadot }; 151f126890aSEmmanuel Vadot 152f126890aSEmmanuel Vadot vtt_ddr: ldo3 { 153f126890aSEmmanuel Vadot regulator-name = "vtt_ddr"; 154f126890aSEmmanuel Vadot regulator-min-microvolt = <500000>; 155f126890aSEmmanuel Vadot regulator-max-microvolt = <750000>; 156f126890aSEmmanuel Vadot regulator-always-on; 157f126890aSEmmanuel Vadot regulator-over-current-protection; 158f126890aSEmmanuel Vadot }; 159f126890aSEmmanuel Vadot 160f126890aSEmmanuel Vadot vdd_usb: ldo4 { 161f126890aSEmmanuel Vadot regulator-name = "vdd_usb"; 162f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO4 0>; 163f126890aSEmmanuel Vadot }; 164f126890aSEmmanuel Vadot 165f126890aSEmmanuel Vadot vdd_sd: ldo5 { 166f126890aSEmmanuel Vadot regulator-name = "vdd_sd"; 167f126890aSEmmanuel Vadot regulator-min-microvolt = <2900000>; 168f126890aSEmmanuel Vadot regulator-max-microvolt = <2900000>; 169f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO5 0>; 170f126890aSEmmanuel Vadot regulator-boot-on; 171f126890aSEmmanuel Vadot }; 172f126890aSEmmanuel Vadot 173f126890aSEmmanuel Vadot v1v8: ldo6 { 174f126890aSEmmanuel Vadot regulator-name = "v1v8"; 175f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 176f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 177f126890aSEmmanuel Vadot interrupts = <IT_CURLIM_LDO6 0>; 178f126890aSEmmanuel Vadot regulator-enable-ramp-delay = <300000>; 179f126890aSEmmanuel Vadot }; 180f126890aSEmmanuel Vadot 181f126890aSEmmanuel Vadot vref_ddr: vref_ddr { 182f126890aSEmmanuel Vadot regulator-name = "vref_ddr"; 183f126890aSEmmanuel Vadot regulator-always-on; 184f126890aSEmmanuel Vadot }; 185f126890aSEmmanuel Vadot 186f126890aSEmmanuel Vadot bst_out: boost { 187f126890aSEmmanuel Vadot regulator-name = "bst_out"; 188f126890aSEmmanuel Vadot interrupts = <IT_OCP_BOOST 0>; 189f126890aSEmmanuel Vadot }; 190f126890aSEmmanuel Vadot 191f126890aSEmmanuel Vadot vbus_otg: pwr_sw1 { 192f126890aSEmmanuel Vadot regulator-name = "vbus_otg"; 193f126890aSEmmanuel Vadot interrupts = <IT_OCP_OTG 0>; 194f126890aSEmmanuel Vadot regulator-active-discharge = <1>; 195f126890aSEmmanuel Vadot }; 196f126890aSEmmanuel Vadot 197f126890aSEmmanuel Vadot vbus_sw: pwr_sw2 { 198f126890aSEmmanuel Vadot regulator-name = "vbus_sw"; 199f126890aSEmmanuel Vadot interrupts = <IT_OCP_SWOUT 0>; 200f126890aSEmmanuel Vadot regulator-active-discharge = <1>; 201f126890aSEmmanuel Vadot }; 202f126890aSEmmanuel Vadot }; 203f126890aSEmmanuel Vadot 204f126890aSEmmanuel Vadot onkey { 205f126890aSEmmanuel Vadot compatible = "st,stpmic1-onkey"; 206f126890aSEmmanuel Vadot interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>; 207f126890aSEmmanuel Vadot interrupt-names = "onkey-falling", "onkey-rising"; 208f126890aSEmmanuel Vadot status = "okay"; 209f126890aSEmmanuel Vadot }; 210f126890aSEmmanuel Vadot 211f126890aSEmmanuel Vadot watchdog { 212f126890aSEmmanuel Vadot compatible = "st,stpmic1-wdt"; 213f126890aSEmmanuel Vadot status = "disabled"; 214f126890aSEmmanuel Vadot }; 215f126890aSEmmanuel Vadot }; 216f126890aSEmmanuel Vadot}; 217f126890aSEmmanuel Vadot 218f126890aSEmmanuel Vadot&ipcc { 219f126890aSEmmanuel Vadot status = "okay"; 220f126890aSEmmanuel Vadot}; 221f126890aSEmmanuel Vadot 222f126890aSEmmanuel Vadot&iwdg2 { 223f126890aSEmmanuel Vadot timeout-sec = <32>; 224f126890aSEmmanuel Vadot status = "okay"; 225f126890aSEmmanuel Vadot}; 226f126890aSEmmanuel Vadot 227f126890aSEmmanuel Vadot&m4_rproc { 228f126890aSEmmanuel Vadot memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, 229f126890aSEmmanuel Vadot <&vdev0vring1>, <&vdev0buffer>; 230*aa1a8ff2SEmmanuel Vadot mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; 231*aa1a8ff2SEmmanuel Vadot mbox-names = "vq0", "vq1", "shutdown", "detach"; 232f126890aSEmmanuel Vadot interrupt-parent = <&exti>; 233f126890aSEmmanuel Vadot interrupts = <68 1>; 234f126890aSEmmanuel Vadot status = "okay"; 235f126890aSEmmanuel Vadot}; 236f126890aSEmmanuel Vadot 237f126890aSEmmanuel Vadot&pwr_regulators { 238f126890aSEmmanuel Vadot vdd-supply = <&vdd>; 239f126890aSEmmanuel Vadot vdd_3v3_usbfs-supply = <&vdd_usb>; 240f126890aSEmmanuel Vadot}; 241f126890aSEmmanuel Vadot 242f126890aSEmmanuel Vadot&qspi { 243f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 244f126890aSEmmanuel Vadot pinctrl-0 = <&qspi_clk_pins_a 245f126890aSEmmanuel Vadot &qspi_bk1_pins_a 246f126890aSEmmanuel Vadot &qspi_cs1_pins_a>; 247f126890aSEmmanuel Vadot pinctrl-1 = <&qspi_clk_sleep_pins_a 248f126890aSEmmanuel Vadot &qspi_bk1_sleep_pins_a 249f126890aSEmmanuel Vadot &qspi_cs1_sleep_pins_a>; 250f126890aSEmmanuel Vadot reg = <0x58003000 0x1000>, <0x70000000 0x200000>; 251f126890aSEmmanuel Vadot #address-cells = <1>; 252f126890aSEmmanuel Vadot #size-cells = <0>; 253f126890aSEmmanuel Vadot status = "okay"; 254f126890aSEmmanuel Vadot 255f126890aSEmmanuel Vadot flash0: flash@0 { 256f126890aSEmmanuel Vadot compatible = "jedec,spi-nor"; 257f126890aSEmmanuel Vadot reg = <0>; 258f126890aSEmmanuel Vadot spi-rx-bus-width = <4>; 259f126890aSEmmanuel Vadot spi-max-frequency = <50000000>; 260f126890aSEmmanuel Vadot #address-cells = <1>; 261f126890aSEmmanuel Vadot #size-cells = <1>; 262f126890aSEmmanuel Vadot }; 263f126890aSEmmanuel Vadot}; 264f126890aSEmmanuel Vadot 265f126890aSEmmanuel Vadot&rng1 { 266f126890aSEmmanuel Vadot status = "okay"; 267f126890aSEmmanuel Vadot}; 268f126890aSEmmanuel Vadot 269f126890aSEmmanuel Vadot&rtc { 270f126890aSEmmanuel Vadot status = "okay"; 271f126890aSEmmanuel Vadot}; 272