1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 2724ba675SRob Herring/* 3724ba675SRob Herring * Copyright (C) Linaro Ltd 2019 - All Rights Reserved 4724ba675SRob Herring * Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 5724ba675SRob Herring * Copyright (C) 2020 Marek Vasut <marex@denx.de> 6724ba675SRob Herring */ 7724ba675SRob Herring 8724ba675SRob Herring#include "stm32mp15-pinctrl.dtsi" 9724ba675SRob Herring#include "stm32mp15xxac-pinctrl.dtsi" 10724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 11724ba675SRob Herring#include <dt-bindings/mfd/st,stpmic1.h> 12724ba675SRob Herring 13724ba675SRob Herring/ { 14724ba675SRob Herring aliases { 15724ba675SRob Herring spi0 = &qspi; 16724ba675SRob Herring }; 17724ba675SRob Herring 18724ba675SRob Herring memory@c0000000 { 19724ba675SRob Herring device_type = "memory"; 20724ba675SRob Herring reg = <0xc0000000 0x40000000>; 21724ba675SRob Herring }; 22724ba675SRob Herring 23724ba675SRob Herring reserved-memory { 24724ba675SRob Herring #address-cells = <1>; 25724ba675SRob Herring #size-cells = <1>; 26724ba675SRob Herring ranges; 27724ba675SRob Herring 28724ba675SRob Herring mcuram2: mcuram2@10000000 { 29724ba675SRob Herring compatible = "shared-dma-pool"; 30724ba675SRob Herring reg = <0x10000000 0x40000>; 31724ba675SRob Herring no-map; 32724ba675SRob Herring }; 33724ba675SRob Herring 34724ba675SRob Herring vdev0vring0: vdev0vring0@10040000 { 35724ba675SRob Herring compatible = "shared-dma-pool"; 36724ba675SRob Herring reg = <0x10040000 0x1000>; 37724ba675SRob Herring no-map; 38724ba675SRob Herring }; 39724ba675SRob Herring 40724ba675SRob Herring vdev0vring1: vdev0vring1@10041000 { 41724ba675SRob Herring compatible = "shared-dma-pool"; 42724ba675SRob Herring reg = <0x10041000 0x1000>; 43724ba675SRob Herring no-map; 44724ba675SRob Herring }; 45724ba675SRob Herring 46724ba675SRob Herring vdev0buffer: vdev0buffer@10042000 { 47724ba675SRob Herring compatible = "shared-dma-pool"; 48724ba675SRob Herring reg = <0x10042000 0x4000>; 49724ba675SRob Herring no-map; 50724ba675SRob Herring }; 51724ba675SRob Herring 52724ba675SRob Herring mcuram: mcuram@30000000 { 53724ba675SRob Herring compatible = "shared-dma-pool"; 54724ba675SRob Herring reg = <0x30000000 0x40000>; 55724ba675SRob Herring no-map; 56724ba675SRob Herring }; 57724ba675SRob Herring 58724ba675SRob Herring retram: retram@38000000 { 59724ba675SRob Herring compatible = "shared-dma-pool"; 60724ba675SRob Herring reg = <0x38000000 0x10000>; 61724ba675SRob Herring no-map; 62724ba675SRob Herring }; 63724ba675SRob Herring }; 64724ba675SRob Herring}; 65724ba675SRob Herring 66724ba675SRob Herring&crc1 { 67724ba675SRob Herring status = "okay"; 68724ba675SRob Herring}; 69724ba675SRob Herring 70724ba675SRob Herring&dts { 71724ba675SRob Herring status = "okay"; 72724ba675SRob Herring}; 73724ba675SRob Herring 74724ba675SRob Herring&i2c4 { 75724ba675SRob Herring pinctrl-names = "default"; 76724ba675SRob Herring pinctrl-0 = <&i2c4_pins_a>; 77724ba675SRob Herring i2c-scl-rising-time-ns = <185>; 78724ba675SRob Herring i2c-scl-falling-time-ns = <20>; 79724ba675SRob Herring status = "okay"; 80724ba675SRob Herring /delete-property/dmas; 81724ba675SRob Herring /delete-property/dma-names; 82724ba675SRob Herring 83724ba675SRob Herring pmic: stpmic@33 { 84724ba675SRob Herring compatible = "st,stpmic1"; 85724ba675SRob Herring reg = <0x33>; 86724ba675SRob Herring interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; 87724ba675SRob Herring interrupt-controller; 88724ba675SRob Herring #interrupt-cells = <2>; 89724ba675SRob Herring status = "okay"; 90724ba675SRob Herring 91724ba675SRob Herring regulators { 92724ba675SRob Herring compatible = "st,stpmic1-regulators"; 93724ba675SRob Herring 94724ba675SRob Herring ldo1-supply = <&v3v3>; 95724ba675SRob Herring ldo2-supply = <&v3v3>; 96724ba675SRob Herring ldo3-supply = <&vdd_ddr>; 97724ba675SRob Herring ldo5-supply = <&v3v3>; 98724ba675SRob Herring ldo6-supply = <&v3v3>; 99724ba675SRob Herring pwr_sw1-supply = <&bst_out>; 100724ba675SRob Herring pwr_sw2-supply = <&bst_out>; 101724ba675SRob Herring 102724ba675SRob Herring vddcore: buck1 { 103724ba675SRob Herring regulator-name = "vddcore"; 104724ba675SRob Herring regulator-min-microvolt = <1200000>; 105724ba675SRob Herring regulator-max-microvolt = <1350000>; 106724ba675SRob Herring regulator-always-on; 107724ba675SRob Herring regulator-initial-mode = <0>; 108724ba675SRob Herring regulator-over-current-protection; 109724ba675SRob Herring }; 110724ba675SRob Herring 111724ba675SRob Herring vdd_ddr: buck2 { 112724ba675SRob Herring regulator-name = "vdd_ddr"; 113724ba675SRob Herring regulator-min-microvolt = <1350000>; 114724ba675SRob Herring regulator-max-microvolt = <1350000>; 115724ba675SRob Herring regulator-always-on; 116724ba675SRob Herring regulator-initial-mode = <0>; 117724ba675SRob Herring regulator-over-current-protection; 118724ba675SRob Herring }; 119724ba675SRob Herring 120724ba675SRob Herring vdd: buck3 { 121724ba675SRob Herring regulator-name = "vdd"; 122724ba675SRob Herring regulator-min-microvolt = <3300000>; 123724ba675SRob Herring regulator-max-microvolt = <3300000>; 124724ba675SRob Herring regulator-always-on; 125724ba675SRob Herring regulator-initial-mode = <0>; 126724ba675SRob Herring regulator-over-current-protection; 127724ba675SRob Herring }; 128724ba675SRob Herring 129724ba675SRob Herring v3v3: buck4 { 130724ba675SRob Herring regulator-name = "v3v3"; 131724ba675SRob Herring regulator-min-microvolt = <3300000>; 132724ba675SRob Herring regulator-max-microvolt = <3300000>; 133724ba675SRob Herring regulator-always-on; 134724ba675SRob Herring regulator-over-current-protection; 135724ba675SRob Herring regulator-initial-mode = <0>; 136724ba675SRob Herring }; 137724ba675SRob Herring 138724ba675SRob Herring vdda: ldo1 { 139724ba675SRob Herring regulator-name = "vdda"; 140724ba675SRob Herring regulator-min-microvolt = <2900000>; 141724ba675SRob Herring regulator-max-microvolt = <2900000>; 142724ba675SRob Herring interrupts = <IT_CURLIM_LDO1 0>; 143724ba675SRob Herring }; 144724ba675SRob Herring 145724ba675SRob Herring v2v8: ldo2 { 146724ba675SRob Herring regulator-name = "v2v8"; 147724ba675SRob Herring regulator-min-microvolt = <2800000>; 148724ba675SRob Herring regulator-max-microvolt = <2800000>; 149724ba675SRob Herring interrupts = <IT_CURLIM_LDO2 0>; 150724ba675SRob Herring }; 151724ba675SRob Herring 152724ba675SRob Herring vtt_ddr: ldo3 { 153724ba675SRob Herring regulator-name = "vtt_ddr"; 154724ba675SRob Herring regulator-min-microvolt = <500000>; 155724ba675SRob Herring regulator-max-microvolt = <750000>; 156724ba675SRob Herring regulator-always-on; 157724ba675SRob Herring regulator-over-current-protection; 158724ba675SRob Herring }; 159724ba675SRob Herring 160724ba675SRob Herring vdd_usb: ldo4 { 161724ba675SRob Herring regulator-name = "vdd_usb"; 162724ba675SRob Herring interrupts = <IT_CURLIM_LDO4 0>; 163724ba675SRob Herring }; 164724ba675SRob Herring 165724ba675SRob Herring vdd_sd: ldo5 { 166724ba675SRob Herring regulator-name = "vdd_sd"; 167724ba675SRob Herring regulator-min-microvolt = <2900000>; 168724ba675SRob Herring regulator-max-microvolt = <2900000>; 169724ba675SRob Herring interrupts = <IT_CURLIM_LDO5 0>; 170724ba675SRob Herring regulator-boot-on; 171724ba675SRob Herring }; 172724ba675SRob Herring 173724ba675SRob Herring v1v8: ldo6 { 174724ba675SRob Herring regulator-name = "v1v8"; 175724ba675SRob Herring regulator-min-microvolt = <1800000>; 176724ba675SRob Herring regulator-max-microvolt = <1800000>; 177724ba675SRob Herring interrupts = <IT_CURLIM_LDO6 0>; 178724ba675SRob Herring regulator-enable-ramp-delay = <300000>; 179724ba675SRob Herring }; 180724ba675SRob Herring 181724ba675SRob Herring vref_ddr: vref_ddr { 182724ba675SRob Herring regulator-name = "vref_ddr"; 183724ba675SRob Herring regulator-always-on; 184724ba675SRob Herring }; 185724ba675SRob Herring 186724ba675SRob Herring bst_out: boost { 187724ba675SRob Herring regulator-name = "bst_out"; 188724ba675SRob Herring interrupts = <IT_OCP_BOOST 0>; 189724ba675SRob Herring }; 190724ba675SRob Herring 191724ba675SRob Herring vbus_otg: pwr_sw1 { 192724ba675SRob Herring regulator-name = "vbus_otg"; 193724ba675SRob Herring interrupts = <IT_OCP_OTG 0>; 194724ba675SRob Herring regulator-active-discharge = <1>; 195724ba675SRob Herring }; 196724ba675SRob Herring 197724ba675SRob Herring vbus_sw: pwr_sw2 { 198724ba675SRob Herring regulator-name = "vbus_sw"; 199724ba675SRob Herring interrupts = <IT_OCP_SWOUT 0>; 200724ba675SRob Herring regulator-active-discharge = <1>; 201724ba675SRob Herring }; 202724ba675SRob Herring }; 203724ba675SRob Herring 204724ba675SRob Herring onkey { 205724ba675SRob Herring compatible = "st,stpmic1-onkey"; 206724ba675SRob Herring interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>; 207724ba675SRob Herring interrupt-names = "onkey-falling", "onkey-rising"; 208724ba675SRob Herring status = "okay"; 209724ba675SRob Herring }; 210724ba675SRob Herring 211724ba675SRob Herring watchdog { 212724ba675SRob Herring compatible = "st,stpmic1-wdt"; 213724ba675SRob Herring status = "disabled"; 214724ba675SRob Herring }; 215724ba675SRob Herring }; 216724ba675SRob Herring}; 217724ba675SRob Herring 218724ba675SRob Herring&ipcc { 219724ba675SRob Herring status = "okay"; 220724ba675SRob Herring}; 221724ba675SRob Herring 222724ba675SRob Herring&iwdg2 { 223724ba675SRob Herring timeout-sec = <32>; 224724ba675SRob Herring status = "okay"; 225724ba675SRob Herring}; 226724ba675SRob Herring 227724ba675SRob Herring&m4_rproc { 228724ba675SRob Herring memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, 229724ba675SRob Herring <&vdev0vring1>, <&vdev0buffer>; 230*2f38de94SMarek Vasut mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; 231*2f38de94SMarek Vasut mbox-names = "vq0", "vq1", "shutdown", "detach"; 232724ba675SRob Herring interrupt-parent = <&exti>; 233724ba675SRob Herring interrupts = <68 1>; 234724ba675SRob Herring status = "okay"; 235724ba675SRob Herring}; 236724ba675SRob Herring 237724ba675SRob Herring&pwr_regulators { 238724ba675SRob Herring vdd-supply = <&vdd>; 239724ba675SRob Herring vdd_3v3_usbfs-supply = <&vdd_usb>; 240724ba675SRob Herring}; 241724ba675SRob Herring 242724ba675SRob Herring&qspi { 243724ba675SRob Herring pinctrl-names = "default", "sleep"; 244724ba675SRob Herring pinctrl-0 = <&qspi_clk_pins_a 245724ba675SRob Herring &qspi_bk1_pins_a 246724ba675SRob Herring &qspi_cs1_pins_a>; 247724ba675SRob Herring pinctrl-1 = <&qspi_clk_sleep_pins_a 248724ba675SRob Herring &qspi_bk1_sleep_pins_a 249724ba675SRob Herring &qspi_cs1_sleep_pins_a>; 250724ba675SRob Herring reg = <0x58003000 0x1000>, <0x70000000 0x200000>; 251724ba675SRob Herring #address-cells = <1>; 252724ba675SRob Herring #size-cells = <0>; 253724ba675SRob Herring status = "okay"; 254724ba675SRob Herring 255724ba675SRob Herring flash0: flash@0 { 256724ba675SRob Herring compatible = "jedec,spi-nor"; 257724ba675SRob Herring reg = <0>; 258724ba675SRob Herring spi-rx-bus-width = <4>; 259724ba675SRob Herring spi-max-frequency = <50000000>; 260724ba675SRob Herring #address-cells = <1>; 261724ba675SRob Herring #size-cells = <1>; 262724ba675SRob Herring }; 263724ba675SRob Herring}; 264724ba675SRob Herring 265724ba675SRob Herring&rng1 { 266724ba675SRob Herring status = "okay"; 267724ba675SRob Herring}; 268724ba675SRob Herring 269724ba675SRob Herring&rtc { 270724ba675SRob Herring status = "okay"; 271724ba675SRob Herring}; 272