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