Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'imx-dt64-6.18' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX arm64 device tree changes for 6.18:

- New device trees: TQMa91xx/MBa91xxCA, Ultratronik Ultra-MACH SBC,
SolidRun i.MX8MP SoM, i.MX8ULP EVK9, TQMLS1012AL, i.MX91 11x11 EVK,
EDM-G-IMX8M-PLUS SOM
- A bunch of Kontron boards update from Annette Kobou and Frieder Schrempf,
adding overlay for LTE extension board, fixing GPIO for panel regulator,
removing unused regulators, fixing USB hub reset and USB port etc.
- A number of s32g updates from Dan Carpenter and Daniel Lezcano, adding
OCOTP, timers and watchdog support
- An i.MX95 update from Frank Li to add msi-map for pci-ep device
- A series from Joy Zou to add i.MX91 support
- A series from Krzysztof Kozlowski to add default GIC address cells for
LS and i.MX8 SoCs
- A set of changes from Peng Fan to improve i.MX95 support with more devices
enabled
- A series from Shengjiu Wang to support more sample rates for wm8524 card
on i.MX8M EVK boards
- Other random updates and cleanups on various boards

* tag 'imx-dt64-6.18' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (75 commits)
arm64: dts: s32g: Add device tree information for the OCOTP driver
arm64: dts: add description for solidrun imx8mp hummingboard variants
arm64: dts: imx8mm-phycore-som: optimize drive strengh
arm64: dts: freescale: imx93-phycore-som: Remove "fsl,magic-packet"
arm64: dts: freescale: imx93-phyboard-nash: Current sense via iio-hwmon
arm64: dts: imx95: add standard PCI device compatible string to NETC Timer
arm64: dts: freescale: add initial device tree for TQMa91xx/MBa91xxCA
arm64: dts: imx93-11x11-evk: remove fec property eee-broken-1000t
arm64: dts: freescale: add i.MX91 11x11 EVK basic support
arm64: dts: imx91: add i.MX91 dtsi support
arm64: dts: freescale: rename imx93.dtsi to imx91_93_common.dtsi and modify them
arm64: dts: freescale: move aliases from imx93.dtsi to board dts
arm64: dts: lx2160a-clearfog-itx: enable pcie nodes for x4 and x8 slots
arm64: dts: lx2160a-cex7: add interrupts for rtc and ethernet phy
arm64: dts: add description for solidrun imx8mp som and cubox-m
arm64: dts: imx8: Use GIC_SPI for interrupt-map for readability
arm64: dts: imx8qxp: Add default GIC address cells
arm64: dts: imx8qm: Add default GIC address cells
arm64: dts: imx8mq: Add default GIC address cells
arm64: dts: imx8mp: Add default GIC address cells
...

Link: https://lore.kernel.org/r/20250915132535.253859-3-shawnguo2@yeah.net
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+9430 -1483
+1
MAINTAINERS
··· 25864 25864 M: Börge Strümpfel <boerge.struempfel@gmail.com> 25865 25865 S: Maintained 25866 25866 F: arch/arm/boot/dts/st/stm32mp157c-ultra-fly-sbc.dts 25867 + F: arch/arm64/boot/dts/freescale/imx8mp-ultra-mach-sbc.dts 25867 25868 25868 25869 UNICODE SUBSYSTEM 25869 25870 M: Gabriel Krisman Bertazi <krisman@kernel.org>
+14
arch/arm64/boot/dts/freescale/Makefile
··· 5 5 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-oxalis.dtb 6 6 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-qds.dtb 7 7 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-rdb.dtb 8 + dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-tqmls1012al-mbls1012al.dtb 9 + dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-tqmls1012al-mbls1012al-emmc.dtb 8 10 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-kbox-a-230-ls.dtb 9 11 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28.dtb 10 12 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-kontron-sl28-var1.dtb ··· 196 194 dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-helios-lvds.dtb 197 195 dtb-$(CONFIG_ARCH_MXC) += imx8mp-aristainetos3-proton2s.dtb 198 196 dtb-$(CONFIG_ARCH_MXC) += imx8mp-beacon-kit.dtb 197 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-cubox-m.dtb 199 198 dtb-$(CONFIG_ARCH_MXC) += imx8mp-data-modul-edm-sbc.dtb 200 199 dtb-$(CONFIG_ARCH_MXC) += imx8mp-debix-model-a.dtb 201 200 dtb-$(CONFIG_ARCH_MXC) += imx8mp-debix-som-a-bmb-08.dtb ··· 204 201 dtb-$(CONFIG_ARCH_MXC) += imx8mp-dhcom-pdk2.dtb 205 202 dtb-$(CONFIG_ARCH_MXC) += imx8mp-dhcom-pdk3.dtb 206 203 dtb-$(CONFIG_ARCH_MXC) += imx8mp-dhcom-picoitx.dtb 204 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-edm-g-wb.dtb 207 205 dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb 206 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-hummingboard-mate.dtb 207 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-hummingboard-pro.dtb 208 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-hummingboard-pulse.dtb 209 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-hummingboard-ripple.dtb 208 210 dtb-$(CONFIG_ARCH_MXC) += imx8mp-icore-mx8mp-edimm2.2.dtb 209 211 dtb-$(CONFIG_ARCH_MXC) += imx8mp-iota2-lumpy.dtb 210 212 dtb-$(CONFIG_ARCH_MXC) += imx8mp-kontron-bl-osm-s.dtb ··· 245 237 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtb 246 238 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tx8p-ml81-moduline-display-106-av123z7m-n17.dtb 247 239 240 + dtb-$(CONFIG_ARCH_MXC) += imx8mp-ultra-mach-sbc.dtb 248 241 dtb-$(CONFIG_ARCH_MXC) += imx8mp-var-som-symphony.dtb 249 242 dtb-$(CONFIG_ARCH_MXC) += imx8mp-venice-gw71xx-2x.dtb 250 243 dtb-$(CONFIG_ARCH_MXC) += imx8mp-venice-gw72xx-2x.dtb ··· 341 332 342 333 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-tqma8xqp-mba8xx.dtb 343 334 dtb-$(CONFIG_ARCH_MXC) += imx8qxp-tqma8xqps-mb-smarc-2.dtb 335 + dtb-$(CONFIG_ARCH_MXC) += imx8ulp-9x9-evk.dtb 344 336 dtb-$(CONFIG_ARCH_MXC) += imx8ulp-evk.dtb 337 + dtb-$(CONFIG_ARCH_MXC) += imx91-11x11-evk.dtb 338 + dtb-$(CONFIG_ARCH_MXC) += imx91-tqma9131-mba91xxca.dtb 345 339 dtb-$(CONFIG_ARCH_MXC) += imx93-9x9-qsb.dtb 346 340 347 341 imx93-9x9-qsb-i3c-dtbs += imx93-9x9-qsb.dtb imx93-9x9-qsb-i3c.dtbo ··· 383 371 dtb-$(CONFIG_ARCH_MXC) += imx95-libra-rdk-fpsc.dtb 384 372 385 373 imx8mm-kontron-dl-dtbs := imx8mm-kontron-bl.dtb imx8mm-kontron-dl.dtbo 374 + imx8mm-kontron-bl-lte-dtbs := imx8mm-kontron-bl.dtb imx8mm-kontron-bl-lte.dtbo 386 375 387 376 dtb-$(CONFIG_ARCH_MXC) += imx8mm-kontron-dl.dtb 377 + dtb-$(CONFIG_ARCH_MXC) += imx8mm-kontron-bl-lte.dtb 388 378 389 379 imx8mm-venice-gw72xx-0x-imx219-dtbs := imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-imx219.dtbo 390 380 imx8mm-venice-gw72xx-0x-rpidsi-dtbs := imx8mm-venice-gw72xx-0x.dtb imx8mm-venice-gw72xx-0x-rpidsi.dtbo
+23
arch/arm64/boot/dts/freescale/fsl-ls1012a-tqmls1012al-mbls1012al-emmc.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2 + /* 3 + * Copyright (c) 2018-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 + * D-82229 Seefeld, Germany. 5 + * Author: Matthias Schiffer 6 + * Author: Max Merchel 7 + */ 8 + 9 + #include "fsl-ls1012a-tqmls1012al-mbls1012al.dts" 10 + 11 + &esdhc0 { 12 + vqmmc-supply = <&reg_1v8>; 13 + /delete-property/ no-mmc; 14 + /delete-property/ sd-uhs-sdr12; 15 + /delete-property/ sd-uhs-sdr25; 16 + /delete-property/ sd-uhs-sdr50; 17 + /delete-property/ sd-uhs-sdr104; 18 + mmc-ddr-1_8v; 19 + mmc-hs200-1_8v; 20 + no-sd; 21 + voltage-ranges = <1800 1800>; 22 + non-removable; 23 + };
+366
arch/arm64/boot/dts/freescale/fsl-ls1012a-tqmls1012al-mbls1012al.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2 + /* 3 + * Copyright (c) 2018-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 + * D-82229 Seefeld, Germany. 5 + * Author: Matthias Schiffer 6 + * Author: Max Merchel 7 + */ 8 + 9 + /dts-v1/; 10 + 11 + #include <dt-bindings/gpio/gpio.h> 12 + #include <dt-bindings/input/input.h> 13 + #include <dt-bindings/leds/common.h> 14 + #include <dt-bindings/net/ti-dp83867.h> 15 + #include "fsl-ls1012a-tqmls1012al.dtsi" 16 + 17 + / { 18 + model = "TQ-Systems TQMLS1012AL on MBLS1012AL"; 19 + compatible = "tq,ls1012a-tqmls1012al-mbls1012al", "tq,ls1012a-tqmls1012al", "fsl,ls1012a"; 20 + chassis-type = "embedded"; 21 + 22 + aliases { 23 + /* use MAC from U-Boot environment */ 24 + /* TODO: PFE */ 25 + ethernet2 = &swport0; 26 + ethernet3 = &swport1; 27 + ethernet4 = &swport2; 28 + ethernet5 = &swport3; 29 + serial0 = &duart0; 30 + spi0 = &qspi; 31 + }; 32 + 33 + chosen { 34 + stdout-path = &duart0; 35 + }; 36 + 37 + gpio-keys { 38 + compatible = "gpio-keys"; 39 + autorepeat; 40 + 41 + switch-1 { 42 + label = "S2"; 43 + linux,code = <BTN_0>; 44 + gpios = <&gpio_exp_3p3v 13 GPIO_ACTIVE_LOW>; 45 + }; 46 + 47 + switch-2 { 48 + label = "X15"; 49 + linux,code = <BTN_1>; 50 + gpios = <&gpio_exp_1p8v 5 GPIO_ACTIVE_LOW>; 51 + }; 52 + 53 + switch-3 { 54 + label = "X16"; 55 + linux,code = <BTN_2>; 56 + gpios = <&gpio_exp_1p8v 4 GPIO_ACTIVE_LOW>; 57 + }; 58 + }; 59 + 60 + gpio-leds { 61 + compatible = "gpio-leds"; 62 + 63 + led-0 { 64 + color = <LED_COLOR_ID_GREEN>; 65 + function = LED_FUNCTION_HEARTBEAT; 66 + gpios = <&gpio_exp_3p3v 14 GPIO_ACTIVE_LOW>; 67 + linux,default-trigger = "heartbeat"; 68 + }; 69 + 70 + led-1 { 71 + color = <LED_COLOR_ID_GREEN>; 72 + function = LED_FUNCTION_STATUS; 73 + gpios = <&gpio_exp_3p3v 15 GPIO_ACTIVE_LOW>; 74 + linux,default-trigger = "default-on"; 75 + }; 76 + }; 77 + 78 + reserved-memory { 79 + #address-cells = <2>; 80 + #size-cells = <2>; 81 + ranges; 82 + 83 + /* global autoconfigured region for contiguous allocations */ 84 + linux,cma { 85 + compatible = "shared-dma-pool"; 86 + reusable; 87 + /* 64 MiB */ 88 + size = <0 0x04000000>; 89 + /* 512 - 128 MiB, our minimum RAM config will be 512 MiB */ 90 + alloc-ranges = <0 0x80000000 0 0x98000000>; 91 + linux,cma-default; 92 + }; 93 + }; 94 + 95 + reg_1v5: regulator-1v5 { 96 + compatible = "regulator-fixed"; 97 + regulator-name = "V_1V5"; 98 + regulator-min-microvolt = <1500000>; 99 + regulator-max-microvolt = <1500000>; 100 + regulator-always-on; 101 + }; 102 + 103 + reg_1p5v_pcie: regulator-1p5v-pcie { 104 + compatible = "regulator-fixed"; 105 + regulator-name = "V_1V5_PCIE"; 106 + regulator-min-microvolt = <1500000>; 107 + regulator-max-microvolt = <1500000>; 108 + regulator-always-on; 109 + regulator-boot-on; 110 + gpio = <&gpio_exp_1p8v 7 GPIO_ACTIVE_HIGH>; 111 + enable-active-high; 112 + vin-supply = <&reg_1v5>; 113 + }; 114 + 115 + reg_1p5v_wlan: regulator-1p5v-wlan { 116 + compatible = "regulator-fixed"; 117 + regulator-name = "V_1V5_WLAN"; 118 + regulator-min-microvolt = <1500000>; 119 + regulator-max-microvolt = <1500000>; 120 + regulator-always-on; 121 + regulator-boot-on; 122 + gpio = <&gpio_exp_1p8v 6 GPIO_ACTIVE_HIGH>; 123 + enable-active-high; 124 + vin-supply = <&reg_1v5>; 125 + }; 126 + 127 + reg_1v8: regulator-1p8v { 128 + compatible = "regulator-fixed"; 129 + regulator-name = "V_1V8"; 130 + regulator-min-microvolt = <1800000>; 131 + regulator-max-microvolt = <1800000>; 132 + regulator-always-on; 133 + }; 134 + 135 + reg_3v3: regulator-3p3v { 136 + compatible = "regulator-fixed"; 137 + regulator-name = "3P3V"; 138 + regulator-min-microvolt = <3300000>; 139 + regulator-max-microvolt = <3300000>; 140 + regulator-always-on; 141 + }; 142 + 143 + reg_3v3_pcie: regulator-3v3-pcie { 144 + compatible = "regulator-fixed"; 145 + regulator-name = "V_3V3_PCIE"; 146 + regulator-min-microvolt = <3300000>; 147 + regulator-max-microvolt = <3300000>; 148 + regulator-always-on; 149 + regulator-boot-on; 150 + gpio = <&gpio_exp_3p3v 3 GPIO_ACTIVE_HIGH>; 151 + enable-active-high; 152 + vin-supply = <&reg_3v3>; 153 + }; 154 + 155 + reg_3v3_wlan: regulator-3v3-wlan { 156 + compatible = "regulator-fixed"; 157 + regulator-name = "V_3V3_WLAN"; 158 + regulator-min-microvolt = <3300000>; 159 + regulator-max-microvolt = <3300000>; 160 + regulator-always-on; 161 + regulator-boot-on; 162 + gpio = <&gpio_exp_3p3v 1 GPIO_ACTIVE_HIGH>; 163 + enable-active-high; 164 + vin-supply = <&reg_3v3>; 165 + }; 166 + }; 167 + 168 + &duart0 { 169 + status = "okay"; 170 + }; 171 + 172 + &esdhc0 { 173 + vmmc-supply = <&reg_3v3>; 174 + no-mmc; 175 + no-sdio; 176 + disable-wp; 177 + sd-uhs-sdr12; 178 + sd-uhs-sdr25; 179 + sd-uhs-sdr50; 180 + sd-uhs-sdr104; 181 + status = "okay"; 182 + }; 183 + 184 + &i2c0 { 185 + gpio_exp_3p3v: gpio@20 { 186 + compatible = "nxp,pca9555"; 187 + reg = <0x20>; 188 + gpio-controller; 189 + #gpio-cells = <2>; 190 + vcc-supply = <&reg_3v3>; 191 + interrupt-parent = <&gpio0>; 192 + interrupts = <24 IRQ_TYPE_EDGE_FALLING>; 193 + interrupt-controller; 194 + #interrupt-cells = <2>; 195 + gpio-line-names = "", "", "GPIO_3V3_3", "", 196 + "", "", "", "", 197 + "", "GPIO_3V3_1", "GPIO_3V3_2", "", 198 + "", "", "", ""; 199 + 200 + wlan-disable-hog { 201 + gpio-hog; 202 + gpios = <0 GPIO_ACTIVE_HIGH>; 203 + output-high; 204 + line-name = "WLAN_DISABLE#"; 205 + }; 206 + 207 + pcie-rst-hog { 208 + gpio-hog; 209 + gpios = <4 GPIO_ACTIVE_HIGH>; 210 + output-high; 211 + line-name = "PCIE_RST#"; 212 + }; 213 + 214 + wlan-rst-hog { 215 + gpio-hog; 216 + gpios = <5 GPIO_ACTIVE_HIGH>; 217 + output-high; 218 + line-name = "WLAN_RST#"; 219 + }; 220 + 221 + pcie-dis-hog { 222 + gpio-hog; 223 + gpios = <11 GPIO_ACTIVE_HIGH>; 224 + output-high; 225 + line-name = "PCIE_DIS#"; 226 + }; 227 + 228 + pcie-wake-hog { 229 + gpio-hog; 230 + gpios = <12 GPIO_ACTIVE_HIGH>; 231 + input; 232 + line-name = "PCIE_WAKE#"; 233 + }; 234 + }; 235 + 236 + lm75_48: temperature-sensor@48 { 237 + compatible = "national,lm75a"; 238 + reg = <0x48>; 239 + vs-supply = <&reg_3v3>; 240 + }; 241 + 242 + switch@5f { 243 + compatible = "microchip,ksz9897"; 244 + reg = <0x5f>; 245 + reset-gpios = <&gpio_exp_3p3v 7 GPIO_ACTIVE_LOW>; 246 + 247 + ports { 248 + #address-cells = <1>; 249 + #size-cells = <0>; 250 + 251 + swport0: port@0 { 252 + reg = <0>; 253 + label = "swp0"; 254 + phy-mode = "internal"; 255 + }; 256 + 257 + swport1: port@1 { 258 + reg = <1>; 259 + label = "swp1"; 260 + phy-mode = "internal"; 261 + }; 262 + 263 + swport2: port@2 { 264 + reg = <2>; 265 + label = "swp2"; 266 + phy-mode = "internal"; 267 + }; 268 + 269 + swport3: port@3 { 270 + reg = <3>; 271 + label = "swp3"; 272 + phy-mode = "internal"; 273 + }; 274 + 275 + port@6 { 276 + reg = <6>; 277 + label = "cpu"; 278 + /* TODO: PFE */ 279 + phy-mode = "rgmii-id"; 280 + rx-internal-delay-ps = <1500>; 281 + tx-internal-delay-ps = <1500>; 282 + 283 + fixed-link { 284 + speed = <1000>; 285 + full-duplex; 286 + }; 287 + }; 288 + }; 289 + }; 290 + 291 + gpio_exp_1p8v: gpio@70 { 292 + compatible = "nxp,pca9538"; 293 + reg = <0x70>; 294 + gpio-controller; 295 + #gpio-cells = <2>; 296 + vcc-supply = <&reg_1v8>; 297 + interrupt-parent = <&gpio0>; 298 + interrupts = <27 IRQ_TYPE_EDGE_FALLING>; 299 + interrupt-controller; 300 + #interrupt-cells = <2>; 301 + gpio-line-names = "PCIE_CLK_PD#", "PMIC_INT#", "ETH_SW_INT#", "", 302 + "", "", "", "", 303 + "", "GPIO_3V3_1", "GPIO_3V3_2", "", 304 + "", "", "", ""; 305 + 306 + /* do not change PCIE_CLK_PD */ 307 + pcie-clk-pd-hog { 308 + gpio-hog; 309 + gpios = <0 GPIO_ACTIVE_HIGH>; 310 + output-high; 311 + line-name = "PCIE_CLK_PD#"; 312 + }; 313 + 314 + pmic-int-hog { 315 + gpio-hog; 316 + gpios = <1 GPIO_ACTIVE_HIGH>; 317 + input; 318 + line-name = "PMIC_INT#"; 319 + }; 320 + 321 + eth-sw-int-hog { 322 + gpio-hog; 323 + gpios = <2 GPIO_ACTIVE_HIGH>; 324 + input; 325 + line-name = "ETH_SW_INT#"; 326 + }; 327 + 328 + eth-link-pwrdwn-hog { 329 + gpio-hog; 330 + gpios = <3 GPIO_ACTIVE_HIGH>; 331 + input; 332 + line-name = "ETH_LINK_PWRDWN#"; 333 + }; 334 + }; 335 + }; 336 + 337 + &pcie1 { 338 + status = "okay"; 339 + }; 340 + 341 + /* TODO: PFE */ 342 + 343 + &sata { 344 + status = "okay"; 345 + }; 346 + 347 + &usb0 { 348 + #address-cells = <1>; 349 + #size-cells = <0>; 350 + 351 + hub_2_0: hub@1 { 352 + compatible = "usb451,8142"; 353 + reg = <1>; 354 + peer-hub = <&hub_3_0>; 355 + reset-gpios = <&gpio_exp_3p3v 6 GPIO_ACTIVE_LOW>; 356 + vdd-supply = <&reg_vcc_3v3>; 357 + }; 358 + 359 + hub_3_0: hub@2 { 360 + compatible = "usb451,8140"; 361 + reg = <2>; 362 + peer-hub = <&hub_2_0>; 363 + reset-gpios = <&gpio_exp_3p3v 6 GPIO_ACTIVE_LOW>; 364 + vdd-supply = <&reg_vcc_3v3>; 365 + }; 366 + };
+81
arch/arm64/boot/dts/freescale/fsl-ls1012a-tqmls1012al.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2 + /* 3 + * Copyright (c) 2018-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 + * D-82229 Seefeld, Germany. 5 + * Author: Matthias Schiffer 6 + * Author: Max Merchel 7 + */ 8 + 9 + #include "fsl-ls1012a.dtsi" 10 + 11 + / { 12 + compatible = "tq,ls1012a-tqmls1012al", "fsl,ls1012a"; 13 + 14 + memory@80000000 { 15 + device_type = "memory"; 16 + /* our minimum RAM config will be 512 MiB */ 17 + reg = <0x00000000 0x80000000 0 0x20000000>; 18 + }; 19 + 20 + reg_vcc_1v8: regulator-1v8 { 21 + compatible = "regulator-fixed"; 22 + regulator-name = "VCC_1V8"; 23 + regulator-min-microvolt = <1800000>; 24 + regulator-max-microvolt = <1800000>; 25 + }; 26 + 27 + reg_vcc_3v3: regulator-3v3 { 28 + compatible = "regulator-fixed"; 29 + regulator-name = "VCC_3V3"; 30 + regulator-min-microvolt = <3300000>; 31 + regulator-max-microvolt = <3300000>; 32 + }; 33 + }; 34 + 35 + &i2c0 { 36 + status = "okay"; 37 + 38 + jc42_19: temperature-sensor@19 { 39 + compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 40 + reg = <0x19>; 41 + }; 42 + 43 + m24c64_50: eeprom@50 { 44 + compatible = "atmel,24c64"; 45 + reg = <0x50>; 46 + pagesize = <32>; 47 + vcc-supply = <&reg_vcc_3v3>; 48 + }; 49 + 50 + m24c02_51: eeprom@51 { 51 + compatible = "nxp,se97b", "atmel,24c02"; 52 + reg = <0x51>; 53 + pagesize = <16>; 54 + read-only; 55 + vcc-supply = <&reg_vcc_3v3>; 56 + }; 57 + 58 + rtc1: rtc@68 { 59 + compatible = "dallas,ds1339"; 60 + reg = <0x68>; 61 + }; 62 + }; 63 + 64 + &qspi { 65 + status = "okay"; 66 + 67 + flash@0 { 68 + compatible = "jedec,spi-nor"; 69 + reg = <0>; 70 + spi-max-frequency = <39000000>; 71 + spi-rx-bus-width = <4>; 72 + spi-tx-bus-width = <1>; 73 + vcc-supply = <&reg_vcc_1v8>; 74 + 75 + partitions { 76 + compatible = "fixed-partitions"; 77 + #address-cells = <1>; 78 + #size-cells = <1>; 79 + }; 80 + }; 81 + };
+1
arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
··· 87 87 88 88 gic: interrupt-controller@1400000 { 89 89 compatible = "arm,gic-400"; 90 + #address-cells = <0>; 90 91 #interrupt-cells = <3>; 91 92 interrupt-controller; 92 93 reg = <0x0 0x1401000 0 0x1000>, /* GICD */
+1
arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
··· 289 289 290 290 gic: interrupt-controller@1400000 { 291 291 compatible = "arm,gic-400"; 292 + #address-cells = <0>; 292 293 #interrupt-cells = <3>; 293 294 interrupt-controller; 294 295 reg = <0x0 0x1401000 0 0x1000>, /* GICD */
+1
arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
··· 260 260 261 261 gic: interrupt-controller@1400000 { 262 262 compatible = "arm,gic-400"; 263 + #address-cells = <0>; 263 264 #interrupt-cells = <3>; 264 265 interrupt-controller; 265 266 reg = <0x0 0x1410000 0 0x10000>, /* GICD */
+2
arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi
··· 41 41 rgmii_phy1: ethernet-phy@1 { 42 42 reg = <1>; 43 43 qca,smarteee-tw-us-1g = <24>; 44 + interrupts-extended = <&gpio2 4 IRQ_TYPE_EDGE_FALLING>; 44 45 }; 45 46 }; 46 47 ··· 157 156 rtc@51 { 158 157 compatible = "nxp,pcf2129"; 159 158 reg = <0x51>; 159 + interrupts-extended = <&gpio2 8 IRQ_TYPE_LEVEL_LOW>; 160 160 }; 161 161 }; 162 162
+8
arch/arm64/boot/dts/freescale/fsl-lx2160a-clearfog-itx.dtsi
··· 96 96 status = "okay"; 97 97 }; 98 98 99 + &pcie3 { 100 + status = "okay"; 101 + }; 102 + 103 + &pcie5 { 104 + status = "okay"; 105 + }; 106 + 99 107 &pcs_mdio7 { 100 108 status = "okay"; 101 109 };
+1 -1
arch/arm64/boot/dts/freescale/imx8-apalis-v1.1.dtsi
··· 256 256 }; 257 257 258 258 &asrc0 { 259 - fsl,asrc-rate = <48000>; 259 + fsl,asrc-rate = <48000>; 260 260 }; 261 261 262 262 &adc0 {
+4 -4
arch/arm64/boot/dts/freescale/imx8-ss-hsio.dtsi
··· 68 68 clock-names = "dbi", "mstr", "slv"; 69 69 bus-range = <0x00 0xff>; 70 70 device_type = "pci"; 71 - interrupt-map = <0 0 0 1 &gic 0 105 4>, 72 - <0 0 0 2 &gic 0 106 4>, 73 - <0 0 0 3 &gic 0 107 4>, 74 - <0 0 0 4 &gic 0 108 4>; 71 + interrupt-map = <0 0 0 1 &gic GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 72 + <0 0 0 2 &gic GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 73 + <0 0 0 3 &gic GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 74 + <0 0 0 4 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 75 75 interrupt-map-mask = <0 0 0 0x7>; 76 76 num-lanes = <1>; 77 77 num-viewport = <4>;
+1 -1
arch/arm64/boot/dts/freescale/imx8dxl-evk.dts
··· 652 652 status = "okay"; 653 653 }; 654 654 655 - &pcie0_ep{ 655 + &pcie0_ep { 656 656 phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>; 657 657 phy-names = "pcie-phy"; 658 658 pinctrl-0 = <&pinctrl_pcieb>;
+2
arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi
··· 5 5 6 6 /delete-node/ &enet1_lpcg; 7 7 /delete-node/ &fec2; 8 + /delete-node/ &usbotg3; 9 + /delete-node/ &usb3_phy; 8 10 9 11 / { 10 12 conn_enet0_root_clk: clock-conn-enet0-root {
+4 -4
arch/arm64/boot/dts/freescale/imx8dxl-ss-hsio.dtsi
··· 42 42 #interrupt-cells = <1>; 43 43 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 44 44 interrupt-names = "msi"; 45 - interrupt-map = <0 0 0 1 &gic 0 47 4>, 46 - <0 0 0 2 &gic 0 48 4>, 47 - <0 0 0 3 &gic 0 49 4>, 48 - <0 0 0 4 &gic 0 50 4>; 45 + interrupt-map = <0 0 0 1 &gic GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>, 46 + <0 0 0 2 &gic GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 47 + <0 0 0 3 &gic GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, 48 + <0 0 0 4 &gic GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 49 49 interrupt-map-mask = <0 0 0 0x7>; 50 50 }; 51 51
+1
arch/arm64/boot/dts/freescale/imx8dxl.dtsi
··· 92 92 compatible = "arm,gic-v3"; 93 93 reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */ 94 94 <0x0 0x51b00000 0 0xc0000>; /* GICR (RD_base + SGI_base) */ 95 + #address-cells = <0>; 95 96 #interrupt-cells = <3>; 96 97 interrupt-controller; 97 98 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+1 -1
arch/arm64/boot/dts/freescale/imx8mm-emtop-baseboard.dts
··· 333 333 >; 334 334 }; 335 335 336 - pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp{ 336 + pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 337 337 fsl,pins = < 338 338 MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK 0x194 339 339 MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD 0x1d4
+13 -4
arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
··· 147 147 simple-audio-card,format = "i2s"; 148 148 simple-audio-card,frame-master = <&cpudai>; 149 149 simple-audio-card,bitclock-master = <&cpudai>; 150 + simple-audio-card,mclk-fs = <256>; 150 151 simple-audio-card,widgets = 151 152 "Line", "Left Line Out Jack", 152 153 "Line", "Right Line Out Jack"; ··· 159 158 sound-dai = <&sai3>; 160 159 dai-tdm-slot-num = <2>; 161 160 dai-tdm-slot-width = <32>; 161 + system-clock-direction-out; 162 162 }; 163 163 164 164 simple-audio-card,codec { 165 165 sound-dai = <&wm8524>; 166 - clocks = <&clk IMX8MM_CLK_SAI3_ROOT>; 167 166 }; 168 167 }; 169 168 ··· 571 570 &sai3 { 572 571 pinctrl-names = "default"; 573 572 pinctrl-0 = <&pinctrl_sai3>; 574 - assigned-clocks = <&clk IMX8MM_CLK_SAI3>; 575 - assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>; 576 - assigned-clock-rates = <24576000>; 573 + assigned-clocks = <&clk IMX8MM_AUDIO_PLL1>, 574 + <&clk IMX8MM_AUDIO_PLL2>, 575 + <&clk IMX8MM_CLK_SAI3>; 576 + assigned-clock-parents = <0>, <0>, <&clk IMX8MM_AUDIO_PLL1_OUT>; 577 + assigned-clock-rates = <393216000>, <361267200>, <24576000>; 578 + fsl,sai-mclk-direction-output; 579 + clocks = <&clk IMX8MM_CLK_SAI3_IPG>, <&clk IMX8MM_CLK_DUMMY>, 580 + <&clk IMX8MM_CLK_SAI3_ROOT>, <&clk IMX8MM_CLK_DUMMY>, 581 + <&clk IMX8MM_CLK_DUMMY>, <&clk IMX8MM_AUDIO_PLL1_OUT>, 582 + <&clk IMX8MM_AUDIO_PLL2_OUT>; 583 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k"; 577 584 status = "okay"; 578 585 }; 579 586
+186
arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-lte.dtso
··· 1 + // SPDX-License-Identifier: GPL-2.0+ OR MIT 2 + /* 3 + * Copyright (C) 2025 Kontron Electronics GmbH 4 + */ 5 + 6 + /dts-v1/; 7 + /plugin/; 8 + 9 + #include <dt-bindings/gpio/gpio.h> 10 + #include <dt-bindings/input/input.h> 11 + #include <dt-bindings/interrupt-controller/irq.h> 12 + #include <dt-bindings/leds/common.h> 13 + #include "imx8mm-pinfunc.h" 14 + 15 + &{/} { 16 + compatible = "kontron,imx8mm-bl", "kontron,imx8mm-sl", "fsl,imx8mm"; 17 + 18 + gpio-keys { 19 + compatible = "gpio-keys"; 20 + pinctrl-names = "default"; 21 + pinctrl-0 = <&pinctrl_gpio_keys>; 22 + 23 + key-user { 24 + label = "user"; 25 + linux,code = <BTN_0>; 26 + gpios = <&gpio4 12 GPIO_ACTIVE_LOW>; 27 + }; 28 + }; 29 + 30 + leds { 31 + compatible = "gpio-leds"; 32 + pinctrl-names = "default"; 33 + pinctrl-0 = <&pinctrl_gpio_led_lte>; 34 + 35 + lte-led1-b { 36 + label = "lte-led1-blue"; 37 + color = <LED_COLOR_ID_BLUE>; 38 + gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>; 39 + }; 40 + 41 + lte-led1-g { 42 + label = "lte-led1-green"; 43 + color = <LED_COLOR_ID_GREEN>; 44 + gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>; 45 + }; 46 + 47 + lte-led1-r { 48 + label = "lte-led1-red"; 49 + color = <LED_COLOR_ID_RED>; 50 + gpios = <&gpio5 23 GPIO_ACTIVE_HIGH>; 51 + }; 52 + 53 + lte-led2-b { 54 + label = "lte-led2-blue"; 55 + color = <LED_COLOR_ID_BLUE>; 56 + gpios = <&gpio5 25 GPIO_ACTIVE_HIGH>; 57 + }; 58 + 59 + lte-led2-g { 60 + label = "lte-led2-green"; 61 + color = <LED_COLOR_ID_GREEN>; 62 + gpios = <&gpio5 22 GPIO_ACTIVE_HIGH>; 63 + }; 64 + 65 + lte-led2-r { 66 + label = "lte-led2-red"; 67 + color = <LED_COLOR_ID_RED>; 68 + gpios = <&gpio5 24 GPIO_ACTIVE_HIGH>; 69 + }; 70 + }; 71 + }; 72 + 73 + &ecspi3 { 74 + status = "disabled"; 75 + }; 76 + 77 + &i2c2 { 78 + #address-cells = <1>; 79 + #size-cells = <0>; 80 + clock-frequency = <400000>; 81 + pinctrl-names = "default"; 82 + pinctrl-0 = <&pinctrl_i2c2>; 83 + status = "okay"; 84 + 85 + tpm@2e { 86 + compatible = "infineon,slb9673", "tcg,tpm-tis-i2c"; 87 + pinctrl-names = "default"; 88 + pinctrl-0 = <&pinctrl_tpm>; 89 + reg = <0x2e>; 90 + interrupt-parent = <&gpio3>; 91 + interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 92 + }; 93 + }; 94 + 95 + &gpio3 { 96 + pinctrl-names = "default"; 97 + pinctrl-0 = <&pinctrl_gpio3>; 98 + gpio-line-names = "", "", "", "", 99 + "", "", "", "", 100 + "", "", "VDD_IO_REF", "TPM_PIRQ#", 101 + "TPM_RESET# ", "", "", "", 102 + "", "LTE_LED1_B", "LTE_LED1_G", "", 103 + ""; 104 + 105 + vdd-io-ref-hog { 106 + gpio-hog; 107 + gpios = <10 GPIO_ACTIVE_HIGH>; 108 + line-name = "VDD_IO_REF"; 109 + output-high; 110 + }; 111 + 112 + tpm-reset-hog { 113 + gpio-hog; 114 + gpios = <12 GPIO_ACTIVE_LOW>; 115 + line-name = "TPM_RESET#"; 116 + output-low; 117 + }; 118 + }; 119 + 120 + &gpio4 { 121 + pinctrl-names = "default"; 122 + pinctrl-0 = <&pinctrl_gpio4>; 123 + gpio-line-names = "", "", "LTE_RESET", "", 124 + "", "", "", "", 125 + "", "", "", "LTE_PWRKEY", 126 + "", "", "", "", 127 + "", "", "", "", 128 + "LTE_PWR_EN"; 129 + }; 130 + 131 + &gpio5 { 132 + gpio-line-names = "", "", "", "", 133 + "", "", "", "", 134 + "", "", "", "", 135 + "", "", "", "", 136 + "", "", "", "", 137 + "", "", "LTE_LED2_G", "LTE_LED1_R", 138 + "LTE_LED2_R", "LTE_LED2_B"; 139 + }; 140 + 141 + &iomuxc { 142 + pinctrl_gpio3: gpio3grp { 143 + fsl,pins = < 144 + MX8MM_IOMUXC_NAND_DATA04_GPIO3_IO10 0x19 /* VDD_IO_REF */ 145 + >; 146 + }; 147 + 148 + pinctrl_gpio4: gpio4grp { 149 + fsl,pins = < 150 + MX8MM_IOMUXC_SAI1_RXD0_GPIO4_IO2 0x19 /* LTE_RESET */ 151 + MX8MM_IOMUXC_SAI1_TXC_GPIO4_IO11 0x19 /* LTE_PWRKEY */ 152 + MX8MM_IOMUXC_SAI1_MCLK_GPIO4_IO20 0x19 /* LTE_PWR_EN */ 153 + >; 154 + }; 155 + 156 + pinctrl_gpio_keys: gpiokeysgrp { 157 + fsl,pins = < 158 + MX8MM_IOMUXC_SAI1_TXD0_GPIO4_IO12 0x19 /* Pushbutton */ 159 + >; 160 + }; 161 + 162 + pinctrl_gpio_led_lte: gpioledltegrp { 163 + fsl,pins = < 164 + MX8MM_IOMUXC_NAND_WE_B_GPIO3_IO17 0x19 /* LTE_LED1_B */ 165 + MX8MM_IOMUXC_NAND_WP_B_GPIO3_IO18 0x19 /* LTE_LED1_G */ 166 + MX8MM_IOMUXC_UART1_TXD_GPIO5_IO23 0x19 /* LTE_LED1_R */ 167 + MX8MM_IOMUXC_UART2_TXD_GPIO5_IO25 0x19 /* LTE_LED2_B */ 168 + MX8MM_IOMUXC_UART1_RXD_GPIO5_IO22 0x19 /* LTE_LED2_G */ 169 + MX8MM_IOMUXC_UART2_RXD_GPIO5_IO24 0x19 /* LTE_LED2_R */ 170 + >; 171 + }; 172 + 173 + pinctrl_i2c2: i2c2grp { 174 + fsl,pins = < 175 + MX8MM_IOMUXC_I2C2_SCL_I2C2_SCL 0x40000083 /* I2C_A_SCL */ 176 + MX8MM_IOMUXC_I2C2_SDA_I2C2_SDA 0x40000083 /* I2C_A_SDA */ 177 + >; 178 + }; 179 + 180 + pinctrl_tpm: tpmgrp { 181 + fsl,pins = < 182 + MX8MM_IOMUXC_NAND_DATA05_GPIO3_IO11 0x19 /* TPM_PIRQ# */ 183 + MX8MM_IOMUXC_NAND_DATA06_GPIO3_IO12 0x39 /* TPM_RESET# */ 184 + >; 185 + }; 186 + };
-8
arch/arm64/boot/dts/freescale/imx8mm-kontron-bl-osm-s.dts
··· 48 48 pwms = <&pwm2 0 5000 0>; 49 49 }; 50 50 51 - reg_rst_eth2: regulator-rst-eth2 { 52 - compatible = "regulator-fixed"; 53 - gpio = <&gpio1 1 GPIO_ACTIVE_HIGH>; 54 - enable-active-high; 55 - regulator-always-on; 56 - regulator-name = "rst-usb-eth2"; 57 - }; 58 - 59 51 reg_vdd_5v: regulator-5v { 60 52 compatible = "regulator-fixed"; 61 53 regulator-always-on;
+10 -2
arch/arm64/boot/dts/freescale/imx8mm-kontron-bl.dts
··· 268 268 &uart2 { 269 269 pinctrl-names = "default"; 270 270 pinctrl-0 = <&pinctrl_uart2>; 271 + /* 272 + * During bootup the CTS needs to stay LOW, which is only possible if this 273 + * pin is controlled by a GPIO. The UART IP always sets CTS to HIGH if not 274 + * running. So using 'uart-has-rtscts' is not a good choice here! There are 275 + * workarounds for this, but they introduce unnecessary complexity and are 276 + * therefore avoided here. For more information about this see: 277 + * https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=79d0224f6bf296d04cd843cfc49921b19c97bb09 278 + */ 279 + rts-gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; 271 280 linux,rs485-enabled-at-boot-time; 272 - uart-has-rtscts; 273 281 status = "okay"; 274 282 }; 275 283 ··· 447 439 MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX 0x0 448 440 MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX 0x0 449 441 MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B 0x0 450 - MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B 0x0 442 + MX8MM_IOMUXC_SAI3_RXC_GPIO4_IO29 0x19 451 443 >; 452 444 }; 453 445
+12 -1
arch/arm64/boot/dts/freescale/imx8mm-kontron-dl.dtso
··· 107 107 #size-cells = <0>; 108 108 status = "okay"; 109 109 110 - touchscreen@5d { 110 + gt911: touchscreen@5d { 111 111 compatible = "goodix,gt928"; 112 112 reg = <0x5d>; 113 113 pinctrl-names = "default"; ··· 116 116 interrupts = <22 8>; 117 117 reset-gpios = <&gpio3 23 0>; 118 118 irq-gpios = <&gpio3 22 0>; 119 + }; 120 + 121 + st1633: touchscreen@55 { 122 + compatible = "sitronix,st1633"; 123 + reg = <0x55>; 124 + pinctrl-names = "default"; 125 + pinctrl-0 = <&pinctrl_touch>; 126 + interrupts = <22 8>; 127 + interrupt-parent = <&gpio3>; 128 + gpios = <&gpio3 22 0>; 129 + status = "disabled"; 119 130 }; 120 131 }; 121 132
+25 -25
arch/arm64/boot/dts/freescale/imx8mm-kontron-osm-s.dtsi
··· 30 30 stdout-path = &uart3; 31 31 }; 32 32 33 - reg_vdd_carrier: regulator-vdd-carrier { 34 - compatible = "regulator-fixed"; 35 - pinctrl-names = "default"; 36 - pinctrl-0 = <&pinctrl_reg_vdd_carrier>; 37 - gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>; 38 - enable-active-high; 39 - regulator-always-on; 40 - regulator-boot-on; 41 - regulator-name = "VDD_CARRIER"; 42 - 43 - regulator-state-standby { 44 - regulator-on-in-suspend; 45 - }; 46 - 47 - regulator-state-mem { 48 - regulator-off-in-suspend; 49 - }; 50 - 51 - regulator-state-disk { 52 - regulator-off-in-suspend; 53 - }; 54 - }; 55 - 56 33 reg_usb1_vbus: regulator-usb1-vbus { 57 34 compatible = "regulator-fixed"; 58 35 pinctrl-names = "default"; ··· 38 61 gpio = <&gpio3 25 GPIO_ACTIVE_HIGH>; 39 62 regulator-min-microvolt = <5000000>; 40 63 regulator-max-microvolt = <5000000>; 41 - regulator-name = "VBUS_USB1"; 64 + regulator-name = "VBUS_USB_A"; 42 65 }; 43 66 44 67 reg_usb2_vbus: regulator-usb2-vbus { ··· 49 72 gpio = <&gpio3 20 GPIO_ACTIVE_HIGH>; 50 73 regulator-min-microvolt = <5000000>; 51 74 regulator-max-microvolt = <5000000>; 52 - regulator-name = "VBUS_USB2"; 75 + regulator-name = "VBUS_USB_B"; 53 76 }; 54 77 55 78 reg_usdhc2_vcc: regulator-usdhc2-vcc { ··· 72 95 regulator-min-microvolt = <3300000>; 73 96 regulator-max-microvolt = <3300000>; 74 97 regulator-name = "VCC_SDIO_B"; 98 + }; 99 + 100 + reg_vdd_carrier: regulator-vdd-carrier { 101 + compatible = "regulator-fixed"; 102 + pinctrl-names = "default"; 103 + pinctrl-0 = <&pinctrl_reg_vdd_carrier>; 104 + gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>; 105 + enable-active-high; 106 + regulator-always-on; 107 + regulator-boot-on; 108 + regulator-name = "VDD_CARRIER"; 109 + 110 + regulator-state-standby { 111 + regulator-on-in-suspend; 112 + }; 113 + 114 + regulator-state-mem { 115 + regulator-off-in-suspend; 116 + }; 117 + 118 + regulator-state-disk { 119 + regulator-off-in-suspend; 120 + }; 75 121 }; 76 122 }; 77 123
+1 -1
arch/arm64/boot/dts/freescale/imx8mm-phyboard-polis-peb-av-10.dtso
··· 20 20 pwms = <&pwm4 0 50000 0>; 21 21 power-supply = <&reg_vdd_3v3_s>; 22 22 enable-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 23 - brightness-levels= <0 4 8 16 32 64 128 255>; 23 + brightness-levels = <0 4 8 16 32 64 128 255>; 24 24 }; 25 25 26 26 panel {
+4 -4
arch/arm64/boot/dts/freescale/imx8mm-phycore-som.dtsi
··· 340 340 MX8MM_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL 0x90 341 341 MX8MM_IOMUXC_ENET_TD0_ENET1_RGMII_TD0 0x16 342 342 MX8MM_IOMUXC_ENET_TD1_ENET1_RGMII_TD1 0x16 343 - MX8MM_IOMUXC_ENET_TD2_ENET1_RGMII_TD2 0x16 344 - MX8MM_IOMUXC_ENET_TD3_ENET1_RGMII_TD3 0x16 345 - MX8MM_IOMUXC_ENET_TXC_ENET1_RGMII_TXC 0x16 346 - MX8MM_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL 0x16 343 + MX8MM_IOMUXC_ENET_TD2_ENET1_RGMII_TD2 0x12 344 + MX8MM_IOMUXC_ENET_TD3_ENET1_RGMII_TD3 0x12 345 + MX8MM_IOMUXC_ENET_TXC_ENET1_RGMII_TXC 0x12 346 + MX8MM_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL 0x12 347 347 MX8MM_IOMUXC_GPIO1_IO07_GPIO1_IO7 0x10 348 348 >; 349 349 };
+1
arch/arm64/boot/dts/freescale/imx8mm.dtsi
··· 1467 1467 compatible = "arm,gic-v3"; 1468 1468 reg = <0x38800000 0x10000>, /* GIC Dist */ 1469 1469 <0x38880000 0xc0000>; /* GICR (RD_base + SGI_base) */ 1470 + #address-cells = <0>; 1470 1471 #interrupt-cells = <3>; 1471 1472 interrupt-controller; 1472 1473 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+5
arch/arm64/boot/dts/freescale/imx8mn-evk.dtsi
··· 387 387 assigned-clock-parents = <&clk IMX8MN_AUDIO_PLL1_OUT>; 388 388 assigned-clock-rates = <24576000>; 389 389 fsl,sai-mclk-direction-output; 390 + clocks = <&clk IMX8MN_CLK_SAI3_IPG>, <&clk IMX8MN_CLK_DUMMY>, 391 + <&clk IMX8MN_CLK_SAI3_ROOT>, <&clk IMX8MN_CLK_DUMMY>, 392 + <&clk IMX8MN_CLK_DUMMY>, <&clk IMX8MN_AUDIO_PLL1_OUT>, 393 + <&clk IMX8MN_AUDIO_PLL2_OUT>; 394 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k"; 390 395 status = "okay"; 391 396 }; 392 397
+1 -1
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3-proton2s.dts
··· 36 36 max-speed = <100>; 37 37 }; 38 38 39 - &ecspi1{ 39 + &ecspi1 { 40 40 pinctrl-0 = <&pinctrl_ecspi1>; 41 41 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 42 42 };
+3 -3
arch/arm64/boot/dts/freescale/imx8mp-aristainetos3a-som-v1.dtsi
··· 167 167 <&clk IMX8MP_VIDEO_PLL1>; 168 168 }; 169 169 170 - &ecspi1{ 170 + &ecspi1 { 171 171 pinctrl-names = "default"; 172 172 pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs2>; 173 173 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW &gpio1 6 GPIO_ACTIVE_LOW>; ··· 565 565 status = "disabled"; 566 566 }; 567 567 568 - &pcie{ 568 + &pcie { 569 569 pinctrl-names = "default"; 570 570 pinctrl-0 = <&pinctrl_pcie>; 571 571 reset-gpio = <&gpio4 20 GPIO_ACTIVE_LOW>; ··· 574 574 status = "okay"; 575 575 }; 576 576 577 - &pcie_phy{ 577 + &pcie_phy { 578 578 fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>; 579 579 clocks = <&pcie0_refclk>; 580 580 clock-names = "ref";
+223
arch/arm64/boot/dts/freescale/imx8mp-cubox-m.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include <dt-bindings/leds/common.h> 9 + 10 + #include "imx8mp-sr-som.dtsi" 11 + 12 + / { 13 + model = "SolidRun i.MX8MP CuBox-M"; 14 + compatible = "solidrun,imx8mp-cubox-m", 15 + "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 16 + 17 + aliases { 18 + ethernet0 = &eqos; 19 + /delete-property/ ethernet1; 20 + rtc0 = &carrier_rtc; 21 + rtc1 = &snvs_rtc; 22 + }; 23 + 24 + ir-receiver { 25 + compatible = "gpio-ir-receiver"; 26 + gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; 27 + pinctrl-names = "default"; 28 + pinctrl-0 = <&ir_pins>; 29 + linux,autosuspend-period = <125>; 30 + wakeup-source; 31 + }; 32 + 33 + leds { 34 + compatible = "gpio-leds"; 35 + pinctrl-names = "default"; 36 + pinctrl-0 = <&led_pins>; 37 + 38 + status { 39 + label = "status"; 40 + color = <LED_COLOR_ID_RED>; 41 + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; 42 + function = LED_FUNCTION_HEARTBEAT; 43 + }; 44 + }; 45 + 46 + sound-hdmi { 47 + compatible = "fsl,imx-audio-hdmi"; 48 + model = "audio-hdmi"; 49 + audio-cpu = <&aud2htx>; 50 + hdmi-out; 51 + }; 52 + 53 + vbus: regulator-vbus { 54 + compatible = "regulator-fixed"; 55 + regulator-name = "vbus"; 56 + gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>; 57 + enable-active-high; 58 + pinctrl-names = "default"; 59 + pinctrl-0 = <&vbus_pins>; 60 + regulator-min-microvolt = <5000000>; 61 + regulator-max-microvolt = <5000000>; 62 + }; 63 + 64 + vmmc: regulator-mmc { 65 + compatible = "regulator-fixed"; 66 + pinctrl-names = "default"; 67 + pinctrl-0 = <&vmmc_pins>; 68 + regulator-name = "vmmc"; 69 + regulator-min-microvolt = <3300000>; 70 + regulator-max-microvolt = <3300000>; 71 + gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>; 72 + startup-delay-us = <250>; 73 + }; 74 + }; 75 + 76 + &aud2htx { 77 + status = "okay"; 78 + }; 79 + 80 + &fec { 81 + /* this board does not use second phy / ethernet on SoM */ 82 + status = "disabled"; 83 + }; 84 + 85 + &hdmi_pvi { 86 + status = "okay"; 87 + }; 88 + 89 + &hdmi_tx { 90 + status = "okay"; 91 + }; 92 + 93 + &hdmi_tx_phy { 94 + status = "okay"; 95 + }; 96 + 97 + &i2c3 { 98 + carrier_rtc: rtc@32 { 99 + compatible = "epson,rx8130"; 100 + reg = <0x32>; 101 + }; 102 + }; 103 + 104 + &iomuxc { 105 + pinctrl-names = "default"; 106 + pinctrl-0 = <&hdmi_pins>; 107 + 108 + hdmi_pins: pinctrl-hdmi-grp { 109 + fsl,pins = < 110 + MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL 0x400001c3 111 + MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA 0x400001c3 112 + MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC 0x154 113 + MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD 0x154 114 + >; 115 + }; 116 + 117 + ir_pins: pinctrl-ir-grp { 118 + fsl,pins = < 119 + MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x4f 120 + >; 121 + }; 122 + 123 + led_pins: pinctrl-led-grp { 124 + fsl,pins = < 125 + MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x0 126 + >; 127 + }; 128 + 129 + usdhc2_pins: pinctrl-usdhc2-grp { 130 + fsl,pins = < 131 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x190 132 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d0 133 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d0 134 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d0 135 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d0 136 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d0 137 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 138 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 139 + >; 140 + }; 141 + 142 + usdhc2_100mhz_pins: pinctrl-usdhc2-100mhz-grp { 143 + fsl,pins = < 144 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x194 145 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d4 146 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d4 147 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d4 148 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d4 149 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d4 150 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 151 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 152 + >; 153 + }; 154 + 155 + usdhc2_200mhz_pins: pinctrl-usdhc2-200mhz-grp { 156 + fsl,pins = < 157 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x196 158 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d6 159 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d6 160 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d6 161 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d6 162 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d6 163 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 164 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 165 + >; 166 + }; 167 + 168 + vbus_pins: pinctrl-vbus-grp { 169 + fsl,pins = < 170 + MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 0x100 171 + >; 172 + }; 173 + 174 + vmmc_pins: pinctrl-vmmc-grp { 175 + fsl,pins = < 176 + MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x0 177 + >; 178 + }; 179 + }; 180 + 181 + &lcdif3 { 182 + status = "okay"; 183 + }; 184 + 185 + &usb3_phy0 { 186 + fsl,phy-tx-preemp-amp-tune-microamp = <1200>; 187 + vbus-supply = <&vbus>; 188 + status = "okay"; 189 + }; 190 + 191 + &usb3_0 { 192 + status = "okay"; 193 + }; 194 + 195 + &usb3_phy1 { 196 + fsl,phy-tx-preemp-amp-tune-microamp = <1200>; 197 + vbus-supply = <&vbus>; 198 + status = "okay"; 199 + }; 200 + 201 + &usb3_1 { 202 + status = "okay"; 203 + }; 204 + 205 + &usb_dwc3_0 { 206 + dr_mode = "host"; 207 + }; 208 + 209 + &usb_dwc3_1 { 210 + dr_mode = "host"; 211 + }; 212 + 213 + &usdhc2 { 214 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 215 + pinctrl-0 = <&usdhc2_pins>; 216 + pinctrl-1 = <&usdhc2_100mhz_pins>; 217 + pinctrl-2 = <&usdhc2_200mhz_pins>; 218 + vmmc-supply = <&vmmc>; 219 + bus-width = <4>; 220 + cap-power-off-card; 221 + full-pwr-cycle; 222 + status = "okay"; 223 + };
+359
arch/arm64/boot/dts/freescale/imx8mp-edm-g-wb.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 + /* 3 + * Copyright 2024 TechNexion Ltd. 4 + * 5 + * Author: Ray Chang <ray.chang@technexion.com> 6 + */ 7 + 8 + /dts-v1/; 9 + 10 + #include <dt-bindings/phy/phy-imx8-pcie.h> 11 + #include "imx8mp-edm-g.dtsi" 12 + 13 + / { 14 + compatible = "technexion,edm-g-imx8mp-wb", "technexion,edm-g-imx8mp", "fsl,imx8mp"; 15 + model = "TechNexion EDM-G-IMX8MP SOM on WB-EDM-G"; 16 + 17 + connector { 18 + compatible = "usb-c-connector"; 19 + data-role = "dual"; 20 + label = "USB-C"; 21 + 22 + ports { 23 + #address-cells = <1>; 24 + #size-cells = <0>; 25 + 26 + port@0 { 27 + reg = <0>; 28 + 29 + hs_ep: endpoint { 30 + remote-endpoint = <&usb3_hs_ep>; 31 + }; 32 + }; 33 + 34 + port@1 { 35 + reg = <1>; 36 + 37 + ss_ep: endpoint { 38 + remote-endpoint = <&hd3ss3220_in_ep>; 39 + }; 40 + }; 41 + }; 42 + }; 43 + 44 + hdmi-connector { 45 + compatible = "hdmi-connector"; 46 + label = "HDMI OUT"; 47 + type = "a"; 48 + 49 + port { 50 + hdmi_in: endpoint { 51 + remote-endpoint = <&hdmi_tx_out>; 52 + }; 53 + }; 54 + }; 55 + 56 + leds { 57 + compatible = "gpio-leds"; 58 + 59 + led { 60 + default-state = "on"; 61 + gpios = <&expander2 1 GPIO_ACTIVE_HIGH>; 62 + label = "gpio-led"; 63 + }; 64 + }; 65 + 66 + pcie0_refclk: clock-pcie-ref { 67 + compatible = "fixed-clock"; 68 + #clock-cells = <0>; 69 + clock-frequency = <100000000>; 70 + }; 71 + 72 + reg_pwr_3v3: regulator-pwr-3v3 { 73 + compatible = "regulator-fixed"; 74 + regulator-always-on; 75 + regulator-boot-on; 76 + regulator-max-microvolt = <3300000>; 77 + regulator-min-microvolt = <3300000>; 78 + regulator-name = "pwr-3v3"; 79 + }; 80 + 81 + reg_pwr_5v: regulator-pwr-5v { 82 + compatible = "regulator-fixed"; 83 + regulator-always-on; 84 + regulator-boot-on; 85 + regulator-max-microvolt = <5000000>; 86 + regulator-min-microvolt = <5000000>; 87 + regulator-name = "pwr-5v"; 88 + }; 89 + 90 + sound-hdmi { 91 + compatible = "fsl,imx-audio-hdmi"; 92 + audio-cpu = <&aud2htx>; 93 + hdmi-out; 94 + model = "audio-hdmi"; 95 + }; 96 + 97 + sound-wm8960 { 98 + compatible = "fsl,imx-audio-wm8960"; 99 + audio-asrc = <&easrc>; 100 + audio-codec = <&wm8960>; 101 + audio-cpu = <&sai3>; 102 + audio-routing = "Headphone Jack", "HP_L", 103 + "Headphone Jack", "HP_R", 104 + "Ext Spk", "SPK_LP", 105 + "Ext Spk", "SPK_LN", 106 + "Ext Spk", "SPK_RP", 107 + "Ext Spk", "SPK_RN", 108 + "LINPUT1", "Mic Jack", 109 + "LINPUT1", "Mic Jack", 110 + "Mic Jack", "MICB"; 111 + model = "wm8960-audio"; 112 + }; 113 + }; 114 + 115 + &aud2htx { 116 + status = "okay"; 117 + }; 118 + 119 + &easrc { 120 + fsl,asrc-rate = <48000>; 121 + status = "okay"; 122 + }; 123 + 124 + &flexcan1 { 125 + status = "okay"; 126 + }; 127 + 128 + &gpio1 { 129 + gpio-line-names = 130 + "", "", "", "", "", "", "DSI_RST", "", 131 + "", "", "", "", "", "PCIE_CLKREQ_N", "", "", 132 + "", "", "", "", "", "", "", "", 133 + "", "", "", "", "", "", "", ""; 134 + pinctrl-0 = <&pinctrl_gpio1>; 135 + }; 136 + 137 + &gpio4 { 138 + gpio-line-names = 139 + "", "", "", "", "", "", "GPIO_P249", "GPIO_P251", 140 + "", "GPIO_P255", "", "", "", "", "", "", 141 + "DSI_BL_EN", "DSI_VDDEN", "", "", "", "", "", "", 142 + "", "", "", "", "", "", "", ""; 143 + pinctrl-0 = <&pinctrl_gpio4>; 144 + }; 145 + 146 + &hdmi_pvi { 147 + status = "okay"; 148 + }; 149 + 150 + &hdmi_tx { 151 + pinctrl-0 = <&pinctrl_hdmi>; 152 + pinctrl-names = "default"; 153 + status = "okay"; 154 + 155 + ports { 156 + port@1 { 157 + hdmi_tx_out: endpoint { 158 + remote-endpoint = <&hdmi_in>; 159 + }; 160 + }; 161 + }; 162 + }; 163 + 164 + &hdmi_tx_phy { 165 + status = "okay"; 166 + }; 167 + 168 + &i2c2 { 169 + status = "okay"; 170 + 171 + wm8960: audio-codec@1a { 172 + compatible = "wlf,wm8960"; 173 + reg = <0x1a>; 174 + clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>; 175 + clock-names = "mclk"; 176 + #sound-dai-cells = <0>; 177 + AVDD-supply = <&reg_pwr_3v3>; 178 + DBVDD-supply = <&reg_pwr_3v3>; 179 + DCVDD-supply = <&reg_pwr_3v3>; 180 + SPKVDD1-supply = <&reg_pwr_5v>; 181 + SPKVDD2-supply = <&reg_pwr_5v>; 182 + wlf,gpio-cfg = <1 2>; 183 + wlf,hp-cfg = <2 2 3>; 184 + wlf,shared-lrclk; 185 + }; 186 + 187 + expander1: gpio@21 { 188 + compatible = "nxp,pca9555"; 189 + reg = <0x21>; 190 + #gpio-cells = <2>; 191 + gpio-controller; 192 + gpio-line-names = "EXPOSURE_TRIG_IN1", "FLASH_OUT1", 193 + "INFO_TRIG_IN1", "CAM_SHUTTER1", "XVS1", 194 + "PWR1_TIME0", "PWR1_TIME1", "PWR1_TIME2", 195 + "EXPOSURE_TRIG_IN2", "FLASH_OUT2", 196 + "INFO_TRIG_IN2", "CAM_SHUTTER2", "XVS2", 197 + "PWR2_TIME0", "PWR2_TIME1", "PWR2_TIME2"; 198 + }; 199 + 200 + expander2: gpio@23 { 201 + compatible = "nxp,pca9555"; 202 + reg = <0x23>; 203 + #interrupt-cells = <2>; 204 + interrupt-controller; 205 + interrupt-parent = <&gpio4>; 206 + interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 207 + #gpio-cells = <2>; 208 + gpio-controller; 209 + gpio-line-names = "M2_DISABLE_N", "LED_EN", "", "", 210 + "", "", "", "USB_OTG_OC", 211 + "EXT_GPIO8", "EXT_GPIO9", "", "", 212 + "", "CSI1_PDB", "CSI2_PDB", "PD_FAULT"; 213 + pinctrl-0 = <&pinctrl_expander2_irq>; 214 + pinctrl-names = "default"; 215 + }; 216 + 217 + usb_typec: usb-typec@67 { 218 + compatible = "ti,hd3ss3220"; 219 + reg = <0x67>; 220 + interrupt-parent = <&gpio4>; 221 + interrupts = <8 IRQ_TYPE_LEVEL_LOW>; 222 + pinctrl-0 = <&pinctrl_hd3ss3220_irq>; 223 + pinctrl-names = "default"; 224 + 225 + ports { 226 + #address-cells = <1>; 227 + #size-cells = <0>; 228 + 229 + port@0 { 230 + reg = <0>; 231 + 232 + hd3ss3220_in_ep: endpoint { 233 + remote-endpoint = <&ss_ep>; 234 + }; 235 + }; 236 + 237 + port@1 { 238 + reg = <1>; 239 + 240 + hd3ss3220_out_ep: endpoint { 241 + remote-endpoint = <&usb3_role_switch>; 242 + }; 243 + }; 244 + }; 245 + }; 246 + }; 247 + 248 + &i2c_0 { 249 + eeprom2: eeprom@51 { 250 + compatible = "atmel,24c02"; 251 + reg = <0x51>; 252 + pagesize = <16>; 253 + }; 254 + }; 255 + 256 + &lcdif3 { 257 + status = "okay"; 258 + }; 259 + 260 + &pcie { 261 + status = "okay"; 262 + }; 263 + 264 + &pcie_phy { 265 + clocks = <&pcie0_refclk>; 266 + clock-names = "ref"; 267 + fsl,clkreq-unsupported; 268 + fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>; 269 + status = "okay"; 270 + }; 271 + 272 + &usb3_0 { 273 + status = "okay"; 274 + }; 275 + 276 + &usb3_1 { 277 + status = "okay"; 278 + }; 279 + 280 + &usb3_phy0 { 281 + status = "okay"; 282 + }; 283 + 284 + &usb3_phy1 { 285 + status = "okay"; 286 + }; 287 + 288 + &usb_dwc3_0 { 289 + /* dual role is implemented but not a full featured OTG */ 290 + adp-disable; 291 + dr_mode = "otg"; 292 + hnp-disable; 293 + role-switch-default-mode = "peripheral"; 294 + srp-disable; 295 + usb-role-switch; 296 + 297 + ports { 298 + #address-cells = <1>; 299 + #size-cells = <0>; 300 + 301 + port@0 { 302 + reg = <0>; 303 + 304 + usb3_hs_ep: endpoint { 305 + remote-endpoint = <&hs_ep>; 306 + }; 307 + }; 308 + 309 + port@1 { 310 + reg = <1>; 311 + 312 + usb3_role_switch: endpoint { 313 + remote-endpoint = <&hd3ss3220_out_ep>; 314 + }; 315 + }; 316 + }; 317 + }; 318 + 319 + &usb_dwc3_1 { 320 + dr_mode = "host"; 321 + }; 322 + 323 + &iomuxc { 324 + pinctrl_expander2_irq: expander2-irqgrp { 325 + fsl,pins = < 326 + MX8MP_IOMUXC_SAI1_TXC__GPIO4_IO11 0x140 /* GPIO_P247 */ 327 + >; 328 + }; 329 + 330 + pinctrl_gpio1: gpio1grp { 331 + fsl,pins = < 332 + MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x16 /* DSI_RST */ 333 + >; 334 + }; 335 + 336 + pinctrl_gpio4: gpio4grp { 337 + fsl,pins = < 338 + MX8MP_IOMUXC_SAI1_RXD4__GPIO4_IO06 0x16 /* GPIO_P249 */ 339 + MX8MP_IOMUXC_SAI1_RXD5__GPIO4_IO07 0x16 /* GPIO_P251 */ 340 + MX8MP_IOMUXC_SAI1_RXD7__GPIO4_IO09 0x16 /* GPIO_P255 */ 341 + MX8MP_IOMUXC_SAI1_TXD4__GPIO4_IO16 0x16 /* DSI_BL_EN */ 342 + MX8MP_IOMUXC_SAI1_TXD5__GPIO4_IO17 0x16 /* DSI_VDDEN */ 343 + >; 344 + }; 345 + 346 + pinctrl_hd3ss3220_irq: hd3ss3220-irqgrp { 347 + fsl,pins = < 348 + MX8MP_IOMUXC_SAI1_RXD6__GPIO4_IO08 0x41 /* GPIO_P253 */ 349 + >; 350 + }; 351 + 352 + pinctrl_hdmi: hdmigrp { 353 + fsl,pins = < 354 + MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL 0x1c2 355 + MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA 0x1c2 356 + MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC 0x10 357 + >; 358 + }; 359 + };
+786
arch/arm64/boot/dts/freescale/imx8mp-edm-g.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 + /* 3 + * Copyright 2024 TechNexion Ltd. 4 + * 5 + * Author: Ray Chang <ray.chang@technexion.com> 6 + */ 7 + 8 + #include "imx8mp.dtsi" 9 + 10 + / { 11 + chosen { 12 + stdout-path = &uart2; 13 + }; 14 + 15 + i2c_0: i2c { 16 + compatible = "i2c-gpio"; 17 + #address-cells = <1>; 18 + #size-cells = <0>; 19 + clock-frequency = <100000>; 20 + pinctrl-0 = <&pinctrl_i2c_brd_conf>; 21 + pinctrl-names = "default"; 22 + scl-gpios = <&gpio4 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 23 + sda-gpios = <&gpio4 29 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 24 + 25 + eeprom: eeprom@53 { 26 + compatible = "atmel,24c02"; 27 + reg = <0x53>; 28 + pagesize = <16>; 29 + }; 30 + }; 31 + 32 + memory@40000000 { 33 + reg = <0x0 0x40000000 0 0xc0000000>, 34 + <0x1 0x00000000 0 0xc0000000>; 35 + device_type = "memory"; 36 + }; 37 + 38 + reg_usdhc2_vmmc: regulator-usdhc2 { 39 + compatible = "regulator-fixed"; 40 + off-on-delay-us = <12000>; 41 + regulator-max-microvolt = <3300000>; 42 + regulator-min-microvolt = <3300000>; 43 + regulator-name = "VSD_3V3"; 44 + startup-delay-us = <100>; 45 + gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>; 46 + enable-active-high; 47 + }; 48 + 49 + rfkill { 50 + compatible = "rfkill-gpio"; 51 + name = "rfkill"; 52 + pinctrl-0 = <&pinctrl_bt_ctrl>; 53 + pinctrl-names = "default"; 54 + radio-type = "bluetooth"; 55 + shutdown-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; 56 + }; 57 + 58 + wl_reg_on: regulator-wl-reg-on { 59 + compatible = "regulator-fixed"; 60 + off-on-delay-us = <20000>; 61 + pinctrl-0 = <&pinctrl_wifi_ctrl>; 62 + pinctrl-names = "default"; 63 + regulator-max-microvolt = <3300000>; 64 + regulator-min-microvolt = <3300000>; 65 + regulator-name = "WL_REG_ON"; 66 + startup-delay-us = <100>; 67 + gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; 68 + enable-active-high; 69 + }; 70 + }; 71 + 72 + &A53_0 { 73 + cpu-supply = <&reg_arm>; 74 + }; 75 + 76 + &A53_1 { 77 + cpu-supply = <&reg_arm>; 78 + }; 79 + 80 + &A53_2 { 81 + cpu-supply = <&reg_arm>; 82 + }; 83 + 84 + &A53_3 { 85 + cpu-supply = <&reg_arm>; 86 + }; 87 + 88 + &ecspi1 { 89 + #address-cells = <1>; 90 + #size-cells = <0>; 91 + cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 92 + num-cs = <1>; 93 + pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>; 94 + pinctrl-names = "default"; 95 + }; 96 + 97 + &eqos { 98 + phy-handle = <&ethphy0>; 99 + phy-mode = "rgmii-id"; 100 + pinctrl-0 = <&pinctrl_eqos>; 101 + pinctrl-names = "default"; 102 + snps,force_thresh_dma_mode; 103 + snps,mtl-rx-config = <&mtl_rx_setup>; 104 + snps,mtl-tx-config = <&mtl_tx_setup>; 105 + status = "okay"; 106 + 107 + mdio { 108 + compatible = "snps,dwmac-mdio"; 109 + #address-cells = <1>; 110 + #size-cells = <0>; 111 + 112 + ethphy0: ethernet-phy@1 { 113 + compatible = "ethernet-phy-ieee802.3-c22"; 114 + reg = <1>; 115 + eee-broken-1000t; 116 + reset-assert-us = <35000>; 117 + reset-deassert-us = <75000>; 118 + reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; 119 + realtek,clkout-disable; 120 + }; 121 + }; 122 + 123 + mtl_rx_setup: rx-queues-config { 124 + snps,rx-queues-to-use = <5>; 125 + 126 + queue0 { 127 + snps,dcb-algorithm; 128 + snps,map-to-dma-channel = <0>; 129 + snps,priority = <0x1>; 130 + }; 131 + 132 + queue1 { 133 + snps,dcb-algorithm; 134 + snps,map-to-dma-channel = <1>; 135 + snps,priority = <0x2>; 136 + }; 137 + 138 + queue2 { 139 + snps,dcb-algorithm; 140 + snps,map-to-dma-channel = <2>; 141 + snps,priority = <0x4>; 142 + }; 143 + 144 + queue3 { 145 + snps,dcb-algorithm; 146 + snps,map-to-dma-channel = <3>; 147 + snps,priority = <0x8>; 148 + }; 149 + 150 + queue4 { 151 + snps,dcb-algorithm; 152 + snps,map-to-dma-channel = <4>; 153 + snps,priority = <0xf0>; 154 + }; 155 + }; 156 + 157 + mtl_tx_setup: tx-queues-config { 158 + snps,tx-queues-to-use = <5>; 159 + 160 + queue0 { 161 + snps,dcb-algorithm; 162 + snps,priority = <0x1>; 163 + }; 164 + 165 + queue1 { 166 + snps,dcb-algorithm; 167 + snps,priority = <0x2>; 168 + }; 169 + 170 + queue2 { 171 + snps,dcb-algorithm; 172 + snps,priority = <0x4>; 173 + }; 174 + 175 + queue3 { 176 + snps,dcb-algorithm; 177 + snps,priority = <0x8>; 178 + }; 179 + 180 + queue4 { 181 + snps,dcb-algorithm; 182 + snps,priority = <0xf0>; 183 + }; 184 + }; 185 + }; 186 + 187 + &flexcan1 { 188 + pinctrl-0 = <&pinctrl_flexcan1>; 189 + pinctrl-names = "default"; 190 + }; 191 + 192 + &flexcan2 { 193 + pinctrl-0 = <&pinctrl_flexcan2>; 194 + pinctrl-names = "default"; 195 + }; 196 + 197 + &i2c1 { 198 + clock-frequency = <100000>; 199 + pinctrl-0 = <&pinctrl_i2c1>; 200 + pinctrl-names = "default"; 201 + status = "okay"; 202 + 203 + pmic: pmic@25 { 204 + compatible = "nxp,pca9450c"; 205 + reg = <0x25>; 206 + interrupt-parent = <&gpio1>; 207 + interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 208 + pinctrl-names = "default"; 209 + pinctrl-0 = <&pinctrl_pmic>; 210 + 211 + regulators { 212 + BUCK1 { 213 + regulator-always-on; 214 + regulator-boot-on; 215 + regulator-max-microvolt = <1000000>; 216 + regulator-min-microvolt = <720000>; 217 + regulator-name = "BUCK1"; 218 + regulator-ramp-delay = <3125>; 219 + }; 220 + 221 + reg_arm: BUCK2 { 222 + regulator-always-on; 223 + regulator-boot-on; 224 + regulator-max-microvolt = <1025000>; 225 + regulator-min-microvolt = <720000>; 226 + regulator-name = "BUCK2"; 227 + regulator-ramp-delay = <3125>; 228 + nxp,dvs-run-voltage = <950000>; 229 + nxp,dvs-standby-voltage = <850000>; 230 + }; 231 + 232 + BUCK4 { 233 + regulator-always-on; 234 + regulator-boot-on; 235 + regulator-max-microvolt = <3600000>; 236 + regulator-min-microvolt = <3000000>; 237 + regulator-name = "BUCK4"; 238 + }; 239 + 240 + reg_buck5: BUCK5 { 241 + regulator-always-on; 242 + regulator-boot-on; 243 + regulator-max-microvolt = <1950000>; 244 + regulator-min-microvolt = <1650000>; 245 + regulator-name = "BUCK5"; 246 + }; 247 + 248 + BUCK6 { 249 + regulator-always-on; 250 + regulator-boot-on; 251 + regulator-max-microvolt = <1155000>; 252 + regulator-min-microvolt = <1045000>; 253 + regulator-name = "BUCK6"; 254 + }; 255 + 256 + LDO1 { 257 + regulator-always-on; 258 + regulator-boot-on; 259 + regulator-max-microvolt = <1950000>; 260 + regulator-min-microvolt = <1650000>; 261 + regulator-name = "LDO1"; 262 + }; 263 + 264 + LDO3 { 265 + regulator-always-on; 266 + regulator-boot-on; 267 + regulator-max-microvolt = <1890000>; 268 + regulator-min-microvolt = <1710000>; 269 + regulator-name = "LDO3"; 270 + }; 271 + 272 + LDO5 { 273 + regulator-always-on; 274 + regulator-boot-on; 275 + regulator-max-microvolt = <3300000>; 276 + regulator-min-microvolt = <1800000>; 277 + regulator-name = "LDO5"; 278 + }; 279 + }; 280 + }; 281 + }; 282 + 283 + &i2c2 { 284 + /* I2C_B on EDMG */ 285 + clock-frequency = <400000>; 286 + pinctrl-0 = <&pinctrl_i2c2>; 287 + pinctrl-names = "default"; 288 + }; 289 + 290 + &i2c3 { 291 + clock-frequency = <100000>; 292 + pinctrl-0 = <&pinctrl_i2c3>; 293 + pinctrl-names = "default"; 294 + }; 295 + 296 + &i2c4 { 297 + /* I2C_A on EDMG */ 298 + clock-frequency = <100000>; 299 + pinctrl-0 = <&pinctrl_i2c4>; 300 + pinctrl-names = "default"; 301 + }; 302 + 303 + &i2c5 { 304 + /* I2C_C on EDMG */ 305 + clock-frequency = <400000>; 306 + pinctrl-0 = <&pinctrl_i2c5>; 307 + pinctrl-names = "default"; 308 + }; 309 + 310 + &pcie { 311 + pinctrl-0 = <&pinctrl_pcie>; 312 + pinctrl-names = "default"; 313 + reset-gpio = <&gpio1 1 GPIO_ACTIVE_LOW>; 314 + }; 315 + 316 + &pwm1 { 317 + pinctrl-0 = <&pinctrl_pwm1>; 318 + pinctrl-names = "default"; 319 + status = "okay"; 320 + }; 321 + 322 + &pwm2 { 323 + pinctrl-0 = <&pinctrl_pwm2>; 324 + pinctrl-names = "default"; 325 + status = "okay"; 326 + }; 327 + 328 + &pwm3 { 329 + pinctrl-0 = <&pinctrl_pwm3>; 330 + pinctrl-names = "default"; 331 + status = "okay"; 332 + }; 333 + 334 + &pwm4 { 335 + pinctrl-0 = <&pinctrl_pwm4>; 336 + pinctrl-names = "default"; 337 + status = "okay"; 338 + }; 339 + 340 + &sai2 { 341 + /* AUD_B on EDMG */ 342 + assigned-clocks = <&clk IMX8MP_CLK_SAI2>; 343 + assigned-clock-rates = <12288000>; 344 + assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 345 + pinctrl-0 = <&pinctrl_sai2>; 346 + pinctrl-names = "default"; 347 + fsl,sai-mclk-direction-output; 348 + status = "okay"; 349 + }; 350 + 351 + &sai3 { 352 + /* AUD_A on EDMG */ 353 + assigned-clocks = <&clk IMX8MP_CLK_SAI3>; 354 + assigned-clock-rates = <12288000>; 355 + assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 356 + pinctrl-0 = <&pinctrl_sai3>; 357 + pinctrl-names = "default"; 358 + fsl,sai-mclk-direction-output; 359 + status = "okay"; 360 + }; 361 + 362 + &uart1 { 363 + /* BT */ 364 + assigned-clocks = <&clk IMX8MP_CLK_UART1>; 365 + assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>; 366 + pinctrl-0 = <&pinctrl_uart1>; 367 + pinctrl-names = "default"; 368 + uart-has-rtscts; 369 + status = "okay"; 370 + }; 371 + 372 + &uart2 { 373 + /* UART_A on EDMG, console */ 374 + pinctrl-0 = <&pinctrl_uart2>; 375 + pinctrl-names = "default"; 376 + status = "okay"; 377 + }; 378 + 379 + &uart3 { 380 + /* UART_C on EDMG */ 381 + assigned-clocks = <&clk IMX8MP_CLK_UART3>; 382 + assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>; 383 + pinctrl-0 = <&pinctrl_uart3>; 384 + pinctrl-names = "default"; 385 + uart-has-rtscts; 386 + status = "okay"; 387 + }; 388 + 389 + &uart4 { 390 + /* UART_B on EDMG */ 391 + assigned-clocks = <&clk IMX8MP_CLK_UART4>; 392 + assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>; 393 + pinctrl-0 = <&pinctrl_uart4>; 394 + pinctrl-names = "default"; 395 + uart-has-rtscts; 396 + status = "okay"; 397 + }; 398 + 399 + &usdhc1 { 400 + /* WIFI SDIO */ 401 + assigned-clocks = <&clk IMX8MP_CLK_USDHC1>; 402 + assigned-clock-rates = <200000000>; 403 + bus-width = <4>; 404 + keep-power-in-suspend; 405 + non-removable; 406 + pinctrl-0 = <&pinctrl_usdhc1>; 407 + pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 408 + pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 409 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 410 + vmmc-supply = <&wl_reg_on>; 411 + status = "okay"; 412 + }; 413 + 414 + &usdhc2 { 415 + /* SD card on baseboard */ 416 + assigned-clocks = <&clk IMX8MP_CLK_USDHC2>; 417 + assigned-clock-rates = <400000000>; 418 + bus-width = <4>; 419 + cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; 420 + pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 421 + pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 422 + pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 423 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 424 + vmmc-supply = <&reg_usdhc2_vmmc>; 425 + status = "okay"; 426 + }; 427 + 428 + &usdhc3 { 429 + /* eMMC on SOM */ 430 + assigned-clocks = <&clk IMX8MP_CLK_USDHC3>; 431 + assigned-clock-rates = <400000000>; 432 + bus-width = <8>; 433 + non-removable; 434 + pinctrl-0 = <&pinctrl_usdhc3>; 435 + pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 436 + pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 437 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 438 + status = "okay"; 439 + }; 440 + 441 + &wdog1 { 442 + pinctrl-0 = <&pinctrl_wdog>; 443 + pinctrl-names = "default"; 444 + fsl,ext-reset-output; 445 + status = "okay"; 446 + }; 447 + 448 + &iomuxc { 449 + pinctrl-0 = <&pinctrl_hog>; 450 + pinctrl-names = "default"; 451 + 452 + pinctrl_bt_ctrl: bt-ctrlgrp { 453 + fsl,pins = < 454 + MX8MP_IOMUXC_GPIO1_IO05__GPIO1_IO05 0x41 /* BT_REG_ON */ 455 + MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19 0x41 /* BT_WAKE_HOST */ 456 + >; 457 + }; 458 + 459 + pinctrl_ecspi1_cs: ecspi1csgrp { 460 + fsl,pins = < 461 + MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 0x40000 462 + >; 463 + }; 464 + 465 + pinctrl_ecspi1: ecspi1grp { 466 + fsl,pins = < 467 + MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK 0x82 468 + MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI 0x82 469 + MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO 0x82 470 + >; 471 + }; 472 + 473 + pinctrl_eqos: eqosgrp { 474 + fsl,pins = < 475 + MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC 0x3 476 + MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x23 477 + MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0 0x91 478 + MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1 0x91 479 + MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x91 480 + MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x91 481 + MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x91 482 + MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x91 483 + MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x1f 484 + MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x1f 485 + MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x1f 486 + MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x1f 487 + MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x1f 488 + MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x1f 489 + MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 0x19 490 + MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x19 491 + >; 492 + }; 493 + 494 + pinctrl_flexcan1: flexcan1grp { 495 + fsl,pins = < 496 + MX8MP_IOMUXC_SAI5_RXD2__CAN1_RX 0x154 497 + MX8MP_IOMUXC_SAI5_RXD1__CAN1_TX 0x154 498 + >; 499 + }; 500 + 501 + pinctrl_flexcan2: flexcan2grp { 502 + fsl,pins = < 503 + MX8MP_IOMUXC_SAI5_MCLK__CAN2_RX 0x154 504 + MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX 0x154 505 + >; 506 + }; 507 + 508 + pinctrl_hog: hoggrp { 509 + fsl,pins = < 510 + MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD 0x40000019 511 + >; 512 + }; 513 + 514 + pinctrl_i2c1: i2c1grp { 515 + fsl,pins = < 516 + MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001a3 517 + MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001a3 518 + >; 519 + }; 520 + 521 + pinctrl_i2c2: i2c2grp { 522 + fsl,pins = < 523 + MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 0x400001a3 524 + MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 0x400001a3 525 + >; 526 + }; 527 + 528 + pinctrl_i2c3: i2c3grp { 529 + fsl,pins = < 530 + MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL 0x400001c3 531 + MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA 0x400001c3 532 + >; 533 + }; 534 + 535 + pinctrl_i2c4: i2c4grp { 536 + fsl,pins = < 537 + MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL 0x400001c3 538 + MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA 0x400001c3 539 + >; 540 + }; 541 + 542 + pinctrl_i2c5: i2c5grp { 543 + fsl,pins = < 544 + MX8MP_IOMUXC_SPDIF_TX__I2C5_SCL 0x400001a3 545 + MX8MP_IOMUXC_SPDIF_RX__I2C5_SDA 0x400001a3 546 + >; 547 + }; 548 + 549 + pinctrl_i2c_brd_conf: i2cbrdconfgrp { 550 + fsl,pins = < 551 + MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28 0x1c3 /* BRD_CONF_SCL, bitbang */ 552 + MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29 0x1c3 /* BRD_CONF_SDA, bitbang */ 553 + >; 554 + }; 555 + 556 + pinctrl_pcie: pciegrp { 557 + fsl,pins = < 558 + MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13 0x41 /* PCIE CLKREQ */ 559 + MX8MP_IOMUXC_SAI2_RXFS__GPIO4_IO21 0x41 /* PCIE WAKE */ 560 + MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01 0x41 /* PCIE RST */ 561 + >; 562 + }; 563 + 564 + pinctrl_pmic: pmicirqgrp { 565 + fsl,pins = < 566 + MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03 0x41 567 + >; 568 + }; 569 + 570 + pinctrl_pwm1: pwm1grp { 571 + fsl,pins = < 572 + MX8MP_IOMUXC_SPDIF_EXT_CLK__PWM1_OUT 0x116 573 + >; 574 + }; 575 + 576 + pinctrl_pwm2: pwm2grp { 577 + fsl,pins = < 578 + MX8MP_IOMUXC_SAI5_RXD0__PWM2_OUT 0x116 579 + >; 580 + }; 581 + 582 + pinctrl_pwm3: pwm3grp { 583 + fsl,pins = < 584 + MX8MP_IOMUXC_SAI5_RXC__PWM3_OUT 0x116 585 + >; 586 + }; 587 + 588 + pinctrl_pwm4: pwm4grp { 589 + fsl,pins = < 590 + MX8MP_IOMUXC_SAI5_RXFS__PWM4_OUT 0x116 591 + >; 592 + }; 593 + 594 + pinctrl_sai2: sai2grp { 595 + fsl,pins = < 596 + MX8MP_IOMUXC_SAI2_MCLK__AUDIOMIX_SAI2_MCLK 0xd6 597 + MX8MP_IOMUXC_SAI2_TXFS__AUDIOMIX_SAI2_TX_SYNC 0xd6 598 + MX8MP_IOMUXC_SAI2_TXC__AUDIOMIX_SAI2_TX_BCLK 0xd6 599 + MX8MP_IOMUXC_SAI2_RXD0__AUDIOMIX_SAI2_RX_DATA00 0xd6 600 + MX8MP_IOMUXC_SAI2_TXD0__AUDIOMIX_SAI2_TX_DATA00 0xd6 601 + >; 602 + }; 603 + 604 + pinctrl_sai3: sai3grp { 605 + fsl,pins = < 606 + MX8MP_IOMUXC_SAI3_MCLK__AUDIOMIX_SAI3_MCLK 0xd6 607 + MX8MP_IOMUXC_SAI3_TXFS__AUDIOMIX_SAI3_TX_SYNC 0xd6 608 + MX8MP_IOMUXC_SAI3_TXC__AUDIOMIX_SAI3_TX_BCLK 0xd6 609 + MX8MP_IOMUXC_SAI3_RXD__AUDIOMIX_SAI3_RX_DATA00 0xd6 610 + MX8MP_IOMUXC_SAI3_TXD__AUDIOMIX_SAI3_TX_DATA00 0xd6 611 + >; 612 + }; 613 + 614 + pinctrl_uart1: uart1grp { 615 + fsl,pins = < 616 + MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x140 617 + MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX 0x140 618 + MX8MP_IOMUXC_UART3_RXD__UART1_DCE_CTS 0x140 619 + MX8MP_IOMUXC_UART3_TXD__UART1_DCE_RTS 0x140 620 + >; 621 + }; 622 + 623 + pinctrl_uart2: uart2grp { 624 + fsl,pins = < 625 + MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x140 626 + MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x140 627 + MX8MP_IOMUXC_UART4_RXD__UART2_DCE_CTS 0x140 628 + MX8MP_IOMUXC_UART4_TXD__UART2_DCE_RTS 0x140 629 + >; 630 + }; 631 + 632 + pinctrl_uart3: uart3grp { 633 + fsl,pins = < 634 + MX8MP_IOMUXC_SD1_DATA7__UART3_DCE_RX 0x140 635 + MX8MP_IOMUXC_SD1_DATA6__UART3_DCE_TX 0x140 636 + MX8MP_IOMUXC_SD1_STROBE__UART3_DCE_CTS 0x140 637 + MX8MP_IOMUXC_SD1_RESET_B__UART3_DCE_RTS 0x140 638 + >; 639 + }; 640 + 641 + pinctrl_uart4: uart4grp { 642 + fsl,pins = < 643 + MX8MP_IOMUXC_ECSPI2_SCLK__UART4_DCE_RX 0x140 644 + MX8MP_IOMUXC_ECSPI2_MOSI__UART4_DCE_TX 0x140 645 + MX8MP_IOMUXC_ECSPI2_MISO__UART4_DCE_CTS 0x140 646 + MX8MP_IOMUXC_ECSPI2_SS0__UART4_DCE_RTS 0x140 647 + >; 648 + }; 649 + 650 + pinctrl_usdhc1: usdhc1grp { 651 + fsl,pins = < 652 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x190 653 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d0 654 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d0 655 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d0 656 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d0 657 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d0 658 + >; 659 + }; 660 + 661 + pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 662 + fsl,pins = < 663 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x194 664 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d4 665 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d4 666 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d4 667 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d4 668 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d4 669 + >; 670 + }; 671 + 672 + pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 673 + fsl,pins = < 674 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x196 675 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d6 676 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d6 677 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d6 678 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d6 679 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d6 680 + >; 681 + }; 682 + 683 + pinctrl_usdhc2: usdhc2grp { 684 + fsl,pins = < 685 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x190 686 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d0 687 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d0 688 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d0 689 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d0 690 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d0 691 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc1 692 + >; 693 + }; 694 + 695 + pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp { 696 + fsl,pins = < 697 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x194 698 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d4 699 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d4 700 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d4 701 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d4 702 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d4 703 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc1 704 + >; 705 + }; 706 + 707 + pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 708 + fsl,pins = < 709 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x196 710 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d6 711 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d6 712 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d6 713 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d6 714 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d6 715 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc1 716 + >; 717 + }; 718 + 719 + pinctrl_usdhc2_gpio: usdhc2-gpiogrp { 720 + fsl,pins = < 721 + MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12 0x1c4 722 + MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x41 723 + >; 724 + }; 725 + 726 + pinctrl_usdhc3: usdhc3grp { 727 + fsl,pins = < 728 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190 729 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d0 730 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d0 731 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d0 732 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d0 733 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d0 734 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d0 735 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d0 736 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d0 737 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d0 738 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x190 739 + >; 740 + }; 741 + 742 + pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp { 743 + fsl,pins = < 744 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194 745 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4 746 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4 747 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4 748 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4 749 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4 750 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4 751 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4 752 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4 753 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4 754 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x194 755 + >; 756 + }; 757 + 758 + pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp { 759 + fsl,pins = < 760 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x196 761 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d6 762 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d6 763 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d6 764 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d6 765 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d6 766 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d6 767 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d6 768 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d6 769 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d6 770 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x196 771 + >; 772 + }; 773 + 774 + pinctrl_wdog: wdoggrp { 775 + fsl,pins = < 776 + MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0xc6 777 + >; 778 + }; 779 + 780 + pinctrl_wifi_ctrl: wifi-ctrlgrp { 781 + fsl,pins = < 782 + MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00 0x41 /* WL_REG_ON */ 783 + MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18 0x41 /* WL_WAKE_HOST */ 784 + >; 785 + }; 786 + };
+1 -1
arch/arm64/boot/dts/freescale/imx8mp-evk.dts
··· 309 309 }; 310 310 311 311 &easrc { 312 - fsl,asrc-rate = <48000>; 312 + fsl,asrc-rate = <48000>; 313 313 status = "okay"; 314 314 }; 315 315
+31
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-mate.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx8mp-sr-som.dtsi" 9 + #include "imx8mp-hummingboard-pulse-common.dtsi" 10 + #include "imx8mp-hummingboard-pulse-hdmi.dtsi" 11 + 12 + / { 13 + model = "SolidRun i.MX8MP HummingBoard Mate"; 14 + compatible = "solidrun,imx8mp-hummingboard-mate", 15 + "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 16 + 17 + aliases { 18 + ethernet0 = &eqos; 19 + /delete-property/ ethernet1; 20 + }; 21 + }; 22 + 23 + &fec { 24 + /* this board does not use second phy / ethernet on SoM */ 25 + status = "disabled"; 26 + }; 27 + 28 + &iomuxc { 29 + pinctrl-names = "default"; 30 + pinctrl-0 = <&mikro_pwm_pins>, <&mikro_int_pins>, <&mikro_rst_pins>; 31 + };
+76
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pro.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include <dt-bindings/phy/phy-imx8-pcie.h> 9 + 10 + #include "imx8mp-sr-som.dtsi" 11 + #include "imx8mp-hummingboard-pulse-codec.dtsi" 12 + #include "imx8mp-hummingboard-pulse-common.dtsi" 13 + #include "imx8mp-hummingboard-pulse-hdmi.dtsi" 14 + #include "imx8mp-hummingboard-pulse-m2con.dtsi" 15 + #include "imx8mp-hummingboard-pulse-mini-hdmi.dtsi" 16 + 17 + / { 18 + model = "SolidRun i.MX8MP HummingBoard Pro"; 19 + compatible = "solidrun,imx8mp-hummingboard-pro", 20 + "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 21 + 22 + aliases { 23 + ethernet0 = &eqos; 24 + ethernet1 = &fec; 25 + }; 26 + }; 27 + 28 + &iomuxc { 29 + pinctrl-names = "default"; 30 + pinctrl-0 = <&mikro_pwm_pins>, <&mikro_int_pins>, <&hdmi_pins>, 31 + <&m2_wwan_wake_pins>; 32 + }; 33 + 34 + &pcie { 35 + pinctrl-0 = <&m2_reset_pins>; 36 + pinctrl-names = "default"; 37 + reset-gpio = <&gpio1 6 GPIO_ACTIVE_LOW>; 38 + status = "okay"; 39 + }; 40 + 41 + &pcie_phy { 42 + clocks = <&hsio_blk_ctrl>; 43 + clock-names = "ref"; 44 + fsl,clkreq-unsupported; 45 + fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_OUTPUT>; 46 + status = "okay"; 47 + }; 48 + 49 + &phy0 { 50 + leds { 51 + /* ADIN1300 LED_0 pin */ 52 + led@0 { 53 + reg = <0>; 54 + color = <LED_COLOR_ID_ORANGE>; 55 + function = LED_FUNCTION_LAN; 56 + default-state = "keep"; 57 + }; 58 + 59 + /delete-node/ led@1; 60 + }; 61 + }; 62 + 63 + &phy1 { 64 + leds { 65 + #address-cells = <1>; 66 + #size-cells = <0>; 67 + 68 + /* ADIN1300 LED_0 pin */ 69 + led@0 { 70 + reg = <0>; 71 + color = <LED_COLOR_ID_GREEN>; 72 + function = LED_FUNCTION_LAN; 73 + default-state = "keep"; 74 + }; 75 + }; 76 + };
+59
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse-codec.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + / { 7 + sound-wm8904 { 8 + compatible = "fsl,imx-audio-wm8904"; 9 + model = "audio-wm8904"; 10 + audio-cpu = <&sai3>; 11 + audio-codec = <&codec>; 12 + audio-routing = 13 + "Headphone Jack", "HPOUTL", 14 + "Headphone Jack", "HPOUTR", 15 + "AMIC", "MICBIAS", 16 + "IN2R", "AMIC"; 17 + }; 18 + }; 19 + 20 + &i2c2 { 21 + codec: audio-codec@1a { 22 + compatible = "wlf,wm8904"; 23 + reg = <0x1a>; 24 + #sound-dai-cells = <0>; 25 + clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>; 26 + clock-names = "mclk"; 27 + AVDD-supply = <&v_1_8>; 28 + CPVDD-supply = <&v_1_8>; 29 + DBVDD-supply = <&v_3_3>; 30 + DCVDD-supply = <&v_1_8>; 31 + MICVDD-supply = <&v_3_3>; 32 + }; 33 + }; 34 + 35 + &iomuxc { 36 + sai3_pins: pinctrl-sai3-grp { 37 + fsl,pins = < 38 + MX8MP_IOMUXC_SAI3_MCLK__AUDIOMIX_SAI3_MCLK 0xd6 39 + MX8MP_IOMUXC_SAI3_TXFS__AUDIOMIX_SAI3_TX_SYNC 0xd6 40 + MX8MP_IOMUXC_SAI3_TXC__AUDIOMIX_SAI3_TX_BCLK 0xd6 41 + MX8MP_IOMUXC_SAI3_TXD__AUDIOMIX_SAI3_TX_DATA00 0xd6 42 + MX8MP_IOMUXC_SAI3_RXD__AUDIOMIX_SAI3_RX_DATA00 0xd6 43 + >; 44 + }; 45 + }; 46 + 47 + &sai3 { 48 + pinctrl-names = "default"; 49 + pinctrl-0 = <&sai3_pins>; 50 + assigned-clocks = <&clk IMX8MP_CLK_SAI3>; 51 + assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>; 52 + assigned-clock-rates = <12288000>; 53 + clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_IPG>, <&clk IMX8MP_CLK_DUMMY>, 54 + <&audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>, <&clk IMX8MP_CLK_DUMMY>, 55 + <&clk IMX8MP_CLK_DUMMY>; 56 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 57 + fsl,sai-mclk-direction-output; 58 + status = "okay"; 59 + };
+384
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse-common.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + #include <dt-bindings/leds/common.h> 7 + 8 + / { 9 + aliases { 10 + rtc0 = &carrier_rtc; 11 + rtc1 = &snvs_rtc; 12 + }; 13 + 14 + leds { 15 + compatible = "gpio-leds"; 16 + pinctrl-names = "default"; 17 + pinctrl-0 = <&led_pins>; 18 + 19 + led-0 { 20 + label = "D30"; 21 + color = <LED_COLOR_ID_GREEN>; 22 + gpios = <&gpio5 28 GPIO_ACTIVE_LOW>; 23 + default-state = "on"; 24 + }; 25 + 26 + led-1 { 27 + label = "D31"; 28 + color = <LED_COLOR_ID_GREEN>; 29 + gpios = <&gpio4 24 GPIO_ACTIVE_LOW>; 30 + default-state = "on"; 31 + }; 32 + 33 + led-2 { 34 + label = "D32"; 35 + color = <LED_COLOR_ID_GREEN>; 36 + gpios = <&gpio4 23 GPIO_ACTIVE_LOW>; 37 + default-state = "on"; 38 + }; 39 + 40 + led-3 { 41 + label = "D33"; 42 + color = <LED_COLOR_ID_GREEN>; 43 + gpios = <&gpio4 21 GPIO_ACTIVE_LOW>; 44 + default-state = "on"; 45 + }; 46 + 47 + led-4 { 48 + label = "D34"; 49 + color = <LED_COLOR_ID_GREEN>; 50 + gpios = <&gpio4 22 GPIO_ACTIVE_LOW>; 51 + default-state = "on"; 52 + }; 53 + }; 54 + 55 + rfkill-mpcie-wifi { 56 + /* 57 + * The mpcie connector only has USB, 58 + * therefore this rfkill is for cellular radios only. 59 + */ 60 + compatible = "rfkill-gpio"; 61 + pinctrl-names = "default"; 62 + pinctrl-0 = <&mpcie_rfkill_pins>; 63 + label = "mpcie radio"; 64 + radio-type = "wwan"; 65 + /* rfkill-gpio inverts internally */ 66 + shutdown-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; 67 + }; 68 + 69 + vmmc: regulator-mmc { 70 + compatible = "regulator-fixed"; 71 + pinctrl-names = "default"; 72 + pinctrl-0 = <&vmmc_pins>; 73 + regulator-name = "vmmc"; 74 + regulator-min-microvolt = <3300000>; 75 + regulator-max-microvolt = <3300000>; 76 + gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>; 77 + startup-delay-us = <250>; 78 + }; 79 + 80 + vbus1: regulator-vbus-1 { 81 + compatible = "regulator-fixed"; 82 + regulator-name = "vbus1"; 83 + gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>; 84 + enable-active-high; 85 + pinctrl-names = "default"; 86 + pinctrl-0 = <&vbus1_pins>; 87 + regulator-min-microvolt = <5000000>; 88 + regulator-max-microvolt = <5000000>; 89 + }; 90 + 91 + vbus2: regulator-vbus-2 { 92 + compatible = "regulator-fixed"; 93 + regulator-name = "vbus2"; 94 + gpio = <&gpio1 15 GPIO_ACTIVE_HIGH>; 95 + enable-active-high; 96 + pinctrl-names = "default"; 97 + pinctrl-0 = <&vbus2_pins>; 98 + regulator-min-microvolt = <5000000>; 99 + regulator-max-microvolt = <5000000>; 100 + }; 101 + 102 + v_1_2: regulator-1-2 { 103 + compatible = "regulator-fixed"; 104 + regulator-name = "1v2"; 105 + regulator-min-microvolt = <1200000>; 106 + regulator-max-microvolt = <1200000>; 107 + }; 108 + 109 + vmpcie { 110 + /* supplies mpcie and m2 connectors */ 111 + compatible = "regulator-fixed"; 112 + regulator-name = "vmpcie"; 113 + gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>; 114 + enable-active-high; 115 + pinctrl-names = "default"; 116 + pinctrl-0 = <&vmpcie_pins>; 117 + regulator-min-microvolt = <3300000>; 118 + regulator-max-microvolt = <3300000>; 119 + regulator-always-on; 120 + }; 121 + }; 122 + 123 + /* mikrobus spi */ 124 + &ecspi2 { 125 + num-cs = <1>; 126 + pinctrl-names = "default"; 127 + pinctrl-0 = <&mikro_spi_pins>; 128 + status = "okay"; 129 + }; 130 + 131 + &gpio1 { 132 + pinctrl-0 = <&mpcie_reset_pins>; 133 + pinctrl-names = "default"; 134 + 135 + mpcie-reset-hog { 136 + gpio-hog; 137 + gpios = <1 GPIO_ACTIVE_LOW>; 138 + output-low; 139 + line-name = "mpcie-reset"; 140 + }; 141 + }; 142 + 143 + &i2c3 { 144 + carrier_eeprom: eeprom@57{ 145 + compatible = "st,24c02", "atmel,24c02"; 146 + reg = <0x57>; 147 + pagesize = <16>; 148 + }; 149 + 150 + carrier_rtc: rtc@69 { 151 + compatible = "abracon,ab1805"; 152 + reg = <0x69>; 153 + abracon,tc-diode = "schottky"; 154 + abracon,tc-resistor = <3>; 155 + }; 156 + }; 157 + 158 + &iomuxc { 159 + csi_pins: pinctrl-csi-grp { 160 + fsl,pins = < 161 + /* Pin 24: STROBE */ 162 + MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07 0x0 163 + >; 164 + }; 165 + 166 + led_pins: pinctrl-led-grp { 167 + fsl,pins = < 168 + MX8MP_IOMUXC_SAI2_RXC__GPIO4_IO22 0x0 169 + MX8MP_IOMUXC_SAI2_RXFS__GPIO4_IO21 0x0 170 + MX8MP_IOMUXC_SAI2_RXD0__GPIO4_IO23 0x0 171 + MX8MP_IOMUXC_SAI2_TXFS__GPIO4_IO24 0x0 172 + MX8MP_IOMUXC_UART4_RXD__GPIO5_IO28 0x0 173 + >; 174 + }; 175 + 176 + mikro_int_pins: pinctrl-mikro-int-grp { 177 + fsl,pins = < 178 + MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 0x0 179 + >; 180 + }; 181 + 182 + mikro_pwm_pins: pinctrl-mikro-pwm-grp { 183 + fsl,pins = < 184 + MX8MP_IOMUXC_ECSPI1_MISO__GPIO5_IO08 0x0 185 + >; 186 + }; 187 + 188 + mikro_rst_pins: pinctrl-mikro-rst-grp { 189 + fsl,pins = < 190 + MX8MP_IOMUXC_SAI3_RXD__GPIO4_IO30 0x0 191 + >; 192 + }; 193 + 194 + mikro_spi_pins: pinctrl-mikro-spi-grp { 195 + fsl,pins = < 196 + MX8MP_IOMUXC_ECSPI2_SS0__ECSPI2_SS0 0x40000 197 + MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK 0x82 198 + MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO 0x82 199 + MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI 0x82 200 + >; 201 + }; 202 + 203 + mikro_uart_pins: pinctrl-mikro-uart-grp { 204 + fsl,pins = < 205 + MX8MP_IOMUXC_ECSPI1_SCLK__UART3_DCE_RX 0x140 206 + MX8MP_IOMUXC_ECSPI1_MOSI__UART3_DCE_TX 0x140 207 + >; 208 + }; 209 + 210 + mpcie_reset_pins: pinctrl-mpcie-reset-grp { 211 + fsl,pins = < 212 + MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01 0x0 213 + >; 214 + }; 215 + 216 + mpcie_rfkill_pins: pinctrl-pcie-rfkill-grp { 217 + fsl,pins = < 218 + /* weak i/o, open drain */ 219 + MX8MP_IOMUXC_GPIO1_IO05__GPIO1_IO05 0x20 220 + >; 221 + }; 222 + 223 + usb_hub_pins: pinctrl-usb-hub-grp { 224 + fsl,pins = < 225 + MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11 0x0 226 + >; 227 + }; 228 + 229 + usdhc2_pins: pinctrl-usdhc2-grp { 230 + fsl,pins = < 231 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x190 232 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d0 233 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d0 234 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d0 235 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d0 236 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d0 237 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 238 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 239 + >; 240 + }; 241 + 242 + usdhc2_100mhz_pins: pinctrl-usdhc2-100mhz-grp { 243 + fsl,pins = < 244 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x194 245 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d4 246 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d4 247 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d4 248 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d4 249 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d4 250 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 251 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 252 + >; 253 + }; 254 + 255 + usdhc2_200mhz_pins: pinctrl-usdhc2-200mhz-grp { 256 + fsl,pins = < 257 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x196 258 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d6 259 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d6 260 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d6 261 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d6 262 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d6 263 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0x140 264 + MX8MP_IOMUXC_SD2_CD_B__USDHC2_CD_B 0x140 265 + >; 266 + }; 267 + 268 + vbus1_pins: pinctrl-vbus-1-grp { 269 + fsl,pins = < 270 + MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14 0x20 271 + >; 272 + }; 273 + 274 + vbus2_pins: pinctrl-vbus-2-grp { 275 + fsl,pins = < 276 + MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15 0x20 277 + >; 278 + }; 279 + 280 + vmmc_pins: pinctrl-vmmc-grp { 281 + fsl,pins = < 282 + MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x41 283 + >; 284 + }; 285 + 286 + vmpcie_pins: pinctrl-vmpcie-grp { 287 + fsl,pins = < 288 + MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x0 289 + >; 290 + }; 291 + }; 292 + 293 + &phy0 { 294 + leds { 295 + #address-cells = <1>; 296 + #size-cells = <0>; 297 + 298 + /* ADIN1300 LED_0 pin */ 299 + led@0 { 300 + reg = <0>; 301 + color = <LED_COLOR_ID_ORANGE>; 302 + function = LED_FUNCTION_LAN; 303 + default-state = "keep"; 304 + }; 305 + 306 + /* ADIN1300 LINK_ST pin */ 307 + led@1 { 308 + reg = <1>; 309 + color = <LED_COLOR_ID_GREEN>; 310 + function = LED_FUNCTION_LAN; 311 + default-state = "keep"; 312 + }; 313 + }; 314 + }; 315 + 316 + &snvs_pwrkey { 317 + status = "okay"; 318 + }; 319 + 320 + /* mikrobus uart */ 321 + &uart3 { 322 + status = "okay"; 323 + }; 324 + 325 + &usb3_phy0 { 326 + fsl,phy-tx-preemp-amp-tune-microamp = <1200>; 327 + vbus-supply = <&vbus2>; 328 + status = "okay"; 329 + }; 330 + 331 + &usb3_0 { 332 + status = "okay"; 333 + }; 334 + 335 + &usb3_phy1 { 336 + vbus-supply = <&vbus1>; 337 + status = "okay"; 338 + }; 339 + 340 + &usb3_1 { 341 + status = "okay"; 342 + }; 343 + 344 + &usb_dwc3_0 { 345 + dr_mode = "host"; 346 + }; 347 + 348 + &usb_dwc3_1 { 349 + dr_mode = "host"; 350 + #address-cells = <1>; 351 + #size-cells = <0>; 352 + pinctrl-names = "default"; 353 + pinctrl-0 = <&usb_hub_pins>; 354 + 355 + hub_2_0: hub@1 { 356 + compatible = "usb4b4,6502", "usb4b4,6506"; 357 + reg = <1>; 358 + peer-hub = <&hub_3_0>; 359 + reset-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; 360 + vdd-supply = <&v_1_2>; 361 + vdd2-supply = <&v_3_3>; 362 + }; 363 + 364 + hub_3_0: hub@2 { 365 + compatible = "usb4b4,6500", "usb4b4,6504"; 366 + reg = <2>; 367 + peer-hub = <&hub_2_0>; 368 + reset-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; 369 + vdd-supply = <&v_1_2>; 370 + vdd2-supply = <&v_3_3>; 371 + }; 372 + }; 373 + 374 + &usdhc2 { 375 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 376 + pinctrl-0 = <&usdhc2_pins>; 377 + pinctrl-1 = <&usdhc2_100mhz_pins>; 378 + pinctrl-2 = <&usdhc2_200mhz_pins>; 379 + vmmc-supply = <&vmmc>; 380 + bus-width = <4>; 381 + cap-power-off-card; 382 + full-pwr-cycle; 383 + status = "okay"; 384 + };
+44
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse-hdmi.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + / { 7 + sound-hdmi { 8 + compatible = "fsl,imx-audio-hdmi"; 9 + model = "audio-hdmi"; 10 + audio-cpu = <&aud2htx>; 11 + hdmi-out; 12 + }; 13 + }; 14 + 15 + &aud2htx { 16 + status = "okay"; 17 + }; 18 + 19 + &hdmi_pvi { 20 + status = "okay"; 21 + }; 22 + 23 + &hdmi_tx { 24 + status = "okay"; 25 + }; 26 + 27 + &hdmi_tx_phy { 28 + status = "okay"; 29 + }; 30 + 31 + &iomuxc { 32 + hdmi_pins: pinctrl-hdmi-grp { 33 + fsl,pins = < 34 + MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL 0x400001c3 35 + MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA 0x400001c3 36 + MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC 0x154 37 + MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD 0x154 38 + >; 39 + }; 40 + }; 41 + 42 + &lcdif3 { 43 + status = "okay"; 44 + };
+60
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse-m2con.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + / { 7 + rfkill-m2-gnss { 8 + compatible = "rfkill-gpio"; 9 + pinctrl-names = "default"; 10 + pinctrl-0 = <&m2_gnss_rfkill_pins>; 11 + label = "m.2 GNSS"; 12 + radio-type = "gps"; 13 + /* rfkill-gpio inverts internally */ 14 + shutdown-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; 15 + }; 16 + 17 + /* M.2 is B-keyed, so w-disable is for WWAN */ 18 + rfkill-m2-wwan { 19 + compatible = "rfkill-gpio"; 20 + pinctrl-names = "default"; 21 + pinctrl-0 = <&m2_wwan_rfkill_pins>; 22 + label = "m.2 WWAN"; 23 + radio-type = "wwan"; 24 + /* rfkill-gpio inverts internally */ 25 + shutdown-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>; 26 + }; 27 + }; 28 + 29 + &iomuxc { 30 + m2_gnss_rfkill_pins: pinctrl-m2-gnss-rfkill-grp { 31 + fsl,pins = < 32 + /* weak i/o, open drain */ 33 + MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 0x20 34 + >; 35 + }; 36 + 37 + m2_reset_pins: pinctrl-m2-reset-grp { 38 + fsl,pins = < 39 + /* 40 + * 3.3V domain on SoC, set open-drain to ensure 41 + * 1.8V logic on connector 42 + */ 43 + MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x20 44 + >; 45 + }; 46 + 47 + m2_wwan_rfkill_pins: pinctrl-m2-wwan-rfkill-grp { 48 + fsl,pins = < 49 + /* weak i/o, open drain */ 50 + MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13 0x20 51 + >; 52 + }; 53 + 54 + m2_wwan_wake_pins: pinctrl-m2-wwan-wake-grp { 55 + fsl,pins = < 56 + /* weak i/o, open drain */ 57 + MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x20 58 + >; 59 + }; 60 + };
+81
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse-mini-hdmi.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + / { 7 + hdmi-connector { 8 + compatible = "hdmi-connector"; 9 + label = "hdmi"; 10 + type = "c"; 11 + 12 + port { 13 + hdmi_connector_in: endpoint { 14 + remote-endpoint = <&adv7535_out>; 15 + }; 16 + }; 17 + }; 18 + }; 19 + 20 + &i2c3 { 21 + hdmi@3d { 22 + compatible = "adi,adv7535"; 23 + reg = <0x3d>, <0x3f>, <0x3c>, <0x38>; 24 + reg-names = "main", "edid", "cec", "packet"; 25 + adi,dsi-lanes = <4>; 26 + avdd-supply = <&v_1_8>; 27 + dvdd-supply = <&v_1_8>; 28 + pvdd-supply = <&v_1_8>; 29 + a2vdd-supply = <&v_1_8>; 30 + v3p3-supply = <&v_3_3>; 31 + pinctrl-names = "default"; 32 + pinctrl-0 = <&mini_hdmi_pins>; 33 + interrupt-parent = <&gpio4>; 34 + interrupts = <27 IRQ_TYPE_EDGE_FALLING>; 35 + 36 + ports { 37 + #address-cells = <1>; 38 + #size-cells = <0>; 39 + 40 + port@0 { 41 + reg = <0>; 42 + 43 + adv7535_from_dsim: endpoint { 44 + remote-endpoint = <&dsim_to_adv7535>; 45 + }; 46 + }; 47 + 48 + port@1 { 49 + reg = <1>; 50 + 51 + adv7535_out: endpoint { 52 + remote-endpoint = <&hdmi_connector_in>; 53 + }; 54 + }; 55 + }; 56 + }; 57 + }; 58 + 59 + &iomuxc { 60 + mini_hdmi_pins: pinctrl-mini-hdmi-grp { 61 + fsl,pins = < 62 + MX8MP_IOMUXC_SAI2_MCLK__GPIO4_IO27 0x0 63 + >; 64 + }; 65 + }; 66 + 67 + &lcdif1 { 68 + status = "okay"; 69 + }; 70 + 71 + &mipi_dsi { 72 + samsung,esc-clock-frequency = <10000000>; 73 + status = "okay"; 74 + 75 + port@1 { 76 + dsim_to_adv7535: endpoint { 77 + remote-endpoint = <&adv7535_from_dsim>; 78 + attach-bridge; 79 + }; 80 + }; 81 + };
+83
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-pulse.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include <dt-bindings/phy/phy-imx8-pcie.h> 9 + 10 + #include "imx8mp-sr-som.dtsi" 11 + #include "imx8mp-hummingboard-pulse-codec.dtsi" 12 + #include "imx8mp-hummingboard-pulse-common.dtsi" 13 + #include "imx8mp-hummingboard-pulse-hdmi.dtsi" 14 + #include "imx8mp-hummingboard-pulse-m2con.dtsi" 15 + #include "imx8mp-hummingboard-pulse-mini-hdmi.dtsi" 16 + 17 + / { 18 + model = "SolidRun i.MX8MP HummingBoard Pulse"; 19 + compatible = "solidrun,imx8mp-hummingboard-pulse", 20 + "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 21 + 22 + aliases { 23 + ethernet0 = &eqos; 24 + ethernet1 = &pcie_eth; 25 + }; 26 + }; 27 + 28 + &fec { 29 + /* this board does not use second phy / ethernet on SoM */ 30 + status = "disabled"; 31 + }; 32 + 33 + &gpio1 { 34 + pinctrl-0 = <&mpcie_reset_pins>, <&m2_reset_pins>; 35 + pinctrl-names = "default"; 36 + 37 + m2-reset-hog { 38 + gpio-hog; 39 + gpios = <6 GPIO_ACTIVE_LOW>; 40 + output-low; 41 + line-name = "m2-reset"; 42 + }; 43 + }; 44 + 45 + &iomuxc { 46 + pinctrl-names = "default"; 47 + pinctrl-0 = <&mikro_pwm_pins>, <&mikro_int_pins>, <&hdmi_pins>, 48 + <&m2_wwan_wake_pins>; 49 + 50 + pcie_eth_pins: pinctrl-pcie-eth-grp { 51 + fsl,pins = < 52 + MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28 0x0 53 + >; 54 + }; 55 + }; 56 + 57 + &pcie { 58 + pinctrl-0 = <&pcie_eth_pins>; 59 + pinctrl-names = "default"; 60 + reset-gpio = <&gpio4 28 GPIO_ACTIVE_LOW>; 61 + status = "okay"; 62 + 63 + root@0,0 { 64 + compatible = "pci16c3,abcd"; 65 + reg = <0x00000000 0 0 0 0>; 66 + #address-cells = <3>; 67 + #size-cells = <2>; 68 + 69 + /* Intel i210 */ 70 + pcie_eth: ethernet@1,0 { 71 + compatible = "pci8086,157b"; 72 + reg = <0x00010000 0 0 0 0>; 73 + }; 74 + }; 75 + }; 76 + 77 + &pcie_phy { 78 + clocks = <&hsio_blk_ctrl>; 79 + clock-names = "ref"; 80 + fsl,clkreq-unsupported; 81 + fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_OUTPUT>; 82 + status = "okay"; 83 + };
+31
arch/arm64/boot/dts/freescale/imx8mp-hummingboard-ripple.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx8mp-sr-som.dtsi" 9 + #include "imx8mp-hummingboard-pulse-common.dtsi" 10 + #include "imx8mp-hummingboard-pulse-mini-hdmi.dtsi" 11 + 12 + / { 13 + model = "SolidRun i.MX8MP HummingBoard Ripple"; 14 + compatible = "solidrun,imx8mp-hummingboard-ripple", 15 + "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 16 + 17 + aliases { 18 + ethernet0 = &eqos; 19 + /delete-property/ ethernet1; 20 + }; 21 + }; 22 + 23 + &fec { 24 + /* this board does not use second phy / ethernet on SoM */ 25 + status = "disabled"; 26 + }; 27 + 28 + &iomuxc { 29 + pinctrl-names = "default"; 30 + pinctrl-0 = <&mikro_pwm_pins>, <&mikro_int_pins>, <&mikro_rst_pins>; 31 + };
+36 -23
arch/arm64/boot/dts/freescale/imx8mp-kontron-bl-osm-s.dts
··· 123 123 124 124 /* 125 125 * Rename SoM signals according to board usage: 126 - * SPI_A_WP -> CAN_ADDR0 127 - * SPI_A_HOLD -> CAN_ADDR1 128 - * GPIO_B_0 -> DIO1_OUT 129 - * GPIO_B_1 -> DIO2_OUT 126 + * GPIO_B_0 -> IO_EXP_INT 127 + * GPIO_B_1 -> IO_EXP_RST 130 128 */ 131 129 &gpio3 { 132 130 gpio-line-names = "PCIE_WAKE", "PCIE_CLKREQ", "PCIE_A_PERST", "SDIO_B_D5", 133 - "SDIO_B_D6", "SDIO_B_D7", "CAN_ADDR0", "CAN_ADDR1", 131 + "SDIO_B_D6", "SDIO_B_D7", "SPI_A_WP", "SPI_A_HOLD", 134 132 "UART_B_RTS", "UART_B_CTS", "SDIO_B_D0", "SDIO_B_D1", 135 133 "SDIO_B_D2", "SDIO_B_D3", "SDIO_B_WP", "SDIO_B_D4", 136 - "PCIE_SM_ALERT", "SDIO_B_CLK", "SDIO_B_CMD", "DIO1_OUT", 137 - "DIO2_OUT", "", "BOOT_SEL0", "BOOT_SEL1", 134 + "PCIE_SM_ALERT", "SDIO_B_CLK", "SDIO_B_CMD", "IO_EXP_INT", 135 + "IO_EXP_RST", "", "BOOT_SEL0", "BOOT_SEL1", 138 136 "", "", "SDIO_B_CD", "SDIO_B_PWR_EN", 139 137 "HDMI_CEC", "HDMI_HPD"; 140 138 }; 141 139 142 140 /* 143 - * Rename SoM signals according to board usage: 144 - * GPIO_B_5 -> DIO2_IN 145 - * GPIO_B_6 -> DIO3_IN 146 - * GPIO_B_7 -> DIO4_IN 147 - * GPIO_B_3 -> DIO4_OUT 148 - * GPIO_B_4 -> DIO1_IN 149 - * GPIO_B_2 -> DIO3_OUT 141 + * Rename SoM signals according to board usage and remove labels for unsed pins: 142 + * GPIO_A_6 -> TFT_RESET 143 + * GPIO_A_7 -> TFT_STBY 144 + * GPIO_B_3 -> CSI_ENABLE 145 + * GPIO_B_2 -> USB_HUB_RST 150 146 */ 151 147 &gpio4 { 152 - gpio-line-names = "DIO2_IN", "DIO3_IN", "DIO4_IN", "GPIO_C_0", 148 + gpio-line-names = "", "", "", "", 153 149 "ETH_A_MDC", "ETH_A_MDIO", "ETH_A_RXD0", "ETH_A_RXD1", 154 150 "ETH_A_RXD2", "ETH_A_RXD3", "ETH_A_RX_DV", "ETH_A_RX_CLK", 155 151 "ETH_A_TXD0", "ETH_A_TXD1", "ETH_A_TXD2", "ETH_A_TXD3", 156 - "ETH_A_TX_EN", "ETH_A_TX_CLK", "DIO4_OUT", "DIO1_IN", 157 - "DIO3_OUT", "GPIO_A_6", "CAN_A_TX", "UART_A_CTS", 152 + "ETH_A_TX_EN", "ETH_A_TX_CLK", "CSI_ENABLE", "", 153 + "USB_HUB_RST", "TFT_RESET", "CAN_A_TX", "UART_A_CTS", 158 154 "UART_A_RTS", "CAN_A_RX", "CAN_B_TX", "CAN_B_RX", 159 - "GPIO_A_7", "CARRIER_PWR_EN", "I2S_A_DATA_IN", "I2S_LRCLK"; 155 + "TFT_STBY", "CARRIER_PWR_EN", "I2S_A_DATA_IN", "I2S_LRCLK"; 156 + }; 157 + 158 + /* 159 + * Rename SoM signals according to board usage: 160 + * SPI_A_SDI -> CAN_ADDR0 161 + * SPI_A_SDO -> CAN_ADDR1 162 + */ 163 + &gpio5 { 164 + pinctrl-names = "default"; 165 + pinctrl-0 = <&pinctrl_gpio5>; 166 + gpio-line-names = "I2S_BITCLK", "I2S_A_DATA_OUT", "I2S_MCLK", "PWM_2", 167 + "PWM_1", "PWM_0", "SPI_A_SCK", "CAN_ADDR1", 168 + "CAN_ADDR0", "SPI_A_CS0", "SPI_B_SCK", "SPI_B_SDO", 169 + "SPI_B_SDI", "SPI_B_CS0", "I2C_A_SCL", "I2C_A_SDA", 170 + "I2C_B_SCL", "I2C_B_SDA", "PCIE_SMCLK", "PCIE_SMDAT", 171 + "I2C_CAM_SCL", "I2C_CAM_SDA", "UART_A_RX", "UART_A_TX", 172 + "UART_C_RX", "UART_C_TX", "UART_CON_RX", "UART_CON_TX", 173 + "UART_B_RX", "UART_B_TX"; 160 174 }; 161 175 162 176 &hdmi_pvi { ··· 250 236 }; 251 237 252 238 &usb_dwc3_1 { 253 - pinctrl-names = "default"; 254 - pinctrl-0 = <&pinctrl_usb_hub>; 255 239 #address-cells = <1>; 256 240 #size-cells = <0>; 257 241 dr_mode = "host"; ··· 258 246 usb-hub@1 { 259 247 compatible = "usb424,2514"; 260 248 reg = <1>; 261 - reset-gpios = <&gpio3 14 GPIO_ACTIVE_LOW>; 249 + reset-gpios = <&gpio4 20 GPIO_ACTIVE_LOW>; 262 250 }; 263 251 }; 264 252 ··· 309 297 >; 310 298 }; 311 299 312 - pinctrl_usb_hub: usbhubgrp { 300 + pinctrl_gpio5: gpio5grp { 313 301 fsl,pins = < 314 - MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14 0x46 302 + MX8MP_IOMUXC_ECSPI1_MOSI__GPIO5_IO07 0x46 /* CAN_ADR0 */ 303 + MX8MP_IOMUXC_ECSPI1_MISO__GPIO5_IO08 0x46 /* CAN_ADR1 */ 315 304 >; 316 305 }; 317 306 };
+1 -1
arch/arm64/boot/dts/freescale/imx8mp-skov-revb-lt6.dts
··· 83 83 compatible = "ti,tsc2046e-adc"; 84 84 reg = <0>; 85 85 pinctrl-0 = <&pinctrl_touch>; 86 - pinctrl-names ="default"; 86 + pinctrl-names = "default"; 87 87 spi-max-frequency = <1000000>; 88 88 interrupts-extended = <&gpio4 25 IRQ_TYPE_LEVEL_LOW>; 89 89 #io-channel-cells = <1>;
+591
arch/arm64/boot/dts/freescale/imx8mp-sr-som.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 Josua Mayer <josua@solid-run.com> 4 + */ 5 + 6 + #include "imx8mp.dtsi" 7 + 8 + / { 9 + model = "SolidRun i.MX8MP SoM"; 10 + compatible = "solidrun,imx8mp-sr-som", "fsl,imx8mp"; 11 + 12 + chosen { 13 + bootargs = "earlycon=ec_imx6q,0x30890000,115200"; 14 + stdout-path = &uart2; 15 + }; 16 + 17 + memory@40000000 { 18 + device_type = "memory"; 19 + reg = <0x0 0x40000000 0 0xc0000000>, 20 + <0x1 0x00000000 0 0xc0000000>; 21 + }; 22 + 23 + usdhc1_pwrseq: usdhc1-pwrseq { 24 + compatible = "mmc-pwrseq-simple"; 25 + reset-gpios = <&gpio2 11 GPIO_ACTIVE_LOW>; 26 + }; 27 + 28 + v_1_8: regulator-1-8 { 29 + compatible = "regulator-fixed"; 30 + regulator-name = "1v8"; 31 + regulator-min-microvolt = <1800000>; 32 + regulator-max-microvolt = <1800000>; 33 + }; 34 + 35 + v_3_3: regulator-3-3 { 36 + compatible = "regulator-fixed"; 37 + regulator-name = "3v3"; 38 + regulator-min-microvolt = <3300000>; 39 + regulator-max-microvolt = <3300000>; 40 + }; 41 + }; 42 + 43 + /* 44 + * Reserve all physical memory from within the first 1GB of DDR address 45 + * space to avoid panic on low memory systems. 46 + */ 47 + &dsp_reserved { 48 + reg = <0 0x6f000000 0 0x1000000>; 49 + }; 50 + 51 + &eqos { 52 + pinctrl-names = "default"; 53 + pinctrl-0 = <&eqos_pins>, <&phy0_pins>; 54 + phy-mode = "rgmii-id"; 55 + phy = <&phy0>; 56 + snps,force_thresh_dma_mode; 57 + snps,mtl-tx-config = <&mtl_tx_setup>; 58 + snps,mtl-rx-config = <&mtl_rx_setup>; 59 + status = "okay"; 60 + 61 + mdio { 62 + compatible = "snps,dwmac-mdio"; 63 + #address-cells = <1>; 64 + #size-cells = <0>; 65 + 66 + phy0: ethernet-phy@0 { 67 + compatible = "ethernet-phy-ieee802.3-c22"; 68 + reg = <0>; 69 + reset-gpios = <&gpio4 19 GPIO_ACTIVE_LOW>; 70 + interrupt-parent = <&gpio4>; 71 + interrupts = <18 IRQ_TYPE_LEVEL_LOW>; 72 + }; 73 + }; 74 + 75 + mtl_tx_setup: tx-queues-config { 76 + snps,tx-queues-to-use = <5>; 77 + 78 + queue0 { 79 + snps,dcb-algorithm; 80 + snps,priority = <0x1>; 81 + }; 82 + 83 + queue1 { 84 + snps,dcb-algorithm; 85 + snps,priority = <0x2>; 86 + }; 87 + 88 + queue2 { 89 + snps,dcb-algorithm; 90 + snps,priority = <0x4>; 91 + }; 92 + 93 + queue3 { 94 + snps,dcb-algorithm; 95 + snps,priority = <0x8>; 96 + }; 97 + 98 + queue4 { 99 + snps,dcb-algorithm; 100 + snps,priority = <0xf0>; 101 + }; 102 + }; 103 + 104 + mtl_rx_setup: rx-queues-config { 105 + snps,rx-queues-to-use = <5>; 106 + snps,rx-sched-sp; 107 + 108 + queue0 { 109 + snps,dcb-algorithm; 110 + snps,priority = <0x1>; 111 + snps,map-to-dma-channel = <0>; 112 + }; 113 + 114 + queue1 { 115 + snps,dcb-algorithm; 116 + snps,priority = <0x2>; 117 + snps,map-to-dma-channel = <1>; 118 + }; 119 + 120 + queue2 { 121 + snps,dcb-algorithm; 122 + snps,priority = <0x4>; 123 + snps,map-to-dma-channel = <2>; 124 + }; 125 + 126 + queue3 { 127 + snps,dcb-algorithm; 128 + snps,priority = <0x8>; 129 + snps,map-to-dma-channel = <3>; 130 + }; 131 + 132 + queue4 { 133 + snps,dcb-algorithm; 134 + snps,priority = <0xf0>; 135 + snps,map-to-dma-channel = <4>; 136 + }; 137 + }; 138 + }; 139 + 140 + &fec { 141 + pinctrl-names = "default"; 142 + pinctrl-0 = <&fec_pins>, <&phy1_pins>; 143 + phy-mode = "rgmii-id"; 144 + phy = <&phy1>; 145 + fsl,magic-packet; 146 + status = "okay"; 147 + 148 + mdio { 149 + #address-cells = <1>; 150 + #size-cells = <0>; 151 + 152 + phy1: ethernet-phy@1 { 153 + compatible = "ethernet-phy-ieee802.3-c22"; 154 + reg = <0x1>; 155 + reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>; 156 + interrupt-parent = <&gpio4>; 157 + interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 158 + }; 159 + }; 160 + }; 161 + 162 + &i2c1 { 163 + clock-frequency = <400000>; 164 + pinctrl-names = "default", "gpio"; 165 + pinctrl-0 = <&i2c1_pins>; 166 + pinctrl-1 = <&i2c1_gpio_pins>; 167 + scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 168 + sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 169 + status = "okay"; 170 + 171 + pmic: pmic@25 { 172 + compatible = "nxp,pca9450c"; 173 + reg = <0x25>; 174 + pinctrl-0 = <&pmic_pins>; 175 + pinctrl-names = "default"; 176 + interrupt-parent = <&gpio1>; 177 + interrupts = <3 GPIO_ACTIVE_LOW>; 178 + nxp,i2c-lt-enable; 179 + 180 + regulators { 181 + buck1: BUCK1 { 182 + regulator-name = "BUCK1"; 183 + regulator-min-microvolt = <600000>; 184 + regulator-max-microvolt = <2187500>; 185 + regulator-boot-on; 186 + regulator-always-on; 187 + regulator-ramp-delay = <3125>; 188 + }; 189 + 190 + buck2: BUCK2 { 191 + regulator-name = "BUCK2"; 192 + regulator-min-microvolt = <600000>; 193 + regulator-max-microvolt = <2187500>; 194 + regulator-boot-on; 195 + regulator-always-on; 196 + regulator-ramp-delay = <3125>; 197 + nxp,dvs-run-voltage = <950000>; 198 + nxp,dvs-standby-voltage = <850000>; 199 + }; 200 + 201 + buck4: BUCK4{ 202 + regulator-name = "BUCK4"; 203 + regulator-min-microvolt = <600000>; 204 + regulator-max-microvolt = <3400000>; 205 + regulator-boot-on; 206 + regulator-always-on; 207 + }; 208 + 209 + buck5: BUCK5{ 210 + regulator-name = "BUCK5"; 211 + regulator-min-microvolt = <600000>; 212 + regulator-max-microvolt = <3400000>; 213 + regulator-boot-on; 214 + regulator-always-on; 215 + }; 216 + 217 + buck6: BUCK6 { 218 + regulator-name = "BUCK6"; 219 + regulator-min-microvolt = <600000>; 220 + regulator-max-microvolt = <3400000>; 221 + regulator-boot-on; 222 + regulator-always-on; 223 + }; 224 + 225 + ldo1: LDO1 { 226 + regulator-name = "LDO1"; 227 + regulator-min-microvolt = <1600000>; 228 + regulator-max-microvolt = <3300000>; 229 + regulator-boot-on; 230 + regulator-always-on; 231 + }; 232 + 233 + ldo2: LDO2 { 234 + regulator-name = "LDO2"; 235 + regulator-min-microvolt = <800000>; 236 + regulator-max-microvolt = <1150000>; 237 + regulator-boot-on; 238 + regulator-always-on; 239 + }; 240 + 241 + ldo3: LDO3 { 242 + regulator-name = "LDO3"; 243 + regulator-min-microvolt = <800000>; 244 + regulator-max-microvolt = <3300000>; 245 + regulator-boot-on; 246 + regulator-always-on; 247 + }; 248 + 249 + ldo4: LDO4 { 250 + regulator-name = "LDO4"; 251 + regulator-min-microvolt = <800000>; 252 + regulator-max-microvolt = <3300000>; 253 + regulator-boot-on; 254 + regulator-always-on; 255 + }; 256 + 257 + ldo5: LDO5 { 258 + regulator-name = "LDO5"; 259 + regulator-min-microvolt = <1800000>; 260 + regulator-max-microvolt = <3300000>; 261 + regulator-boot-on; 262 + regulator-always-on; 263 + }; 264 + }; 265 + }; 266 + 267 + som_eeprom: eeprom@50{ 268 + compatible = "st,24c01", "atmel,24c01"; 269 + reg = <0x50>; 270 + pagesize = <16>; 271 + }; 272 + }; 273 + 274 + &i2c2 { 275 + clock-frequency = <100000>; 276 + pinctrl-names = "default", "gpio"; 277 + pinctrl-0 = <&i2c2_pins>; 278 + pinctrl-1 = <&i2c2_gpio_pins>; 279 + scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 280 + sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 281 + status = "okay"; 282 + }; 283 + 284 + &i2c3 { 285 + clock-frequency = <100000>; 286 + pinctrl-names = "default", "gpio"; 287 + pinctrl-0 = <&i2c3_pins>; 288 + pinctrl-1 = <&i2c3_gpio_pins>; 289 + scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 290 + sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 291 + status = "okay"; 292 + }; 293 + 294 + &i2c4 { 295 + /* routed to basler camera connector */ 296 + clock-frequency = <100000>; 297 + pinctrl-names = "default", "gpio"; 298 + pinctrl-0 = <&i2c4_pins>; 299 + pinctrl-1 = <&i2c4_gpio_pins>; 300 + scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 301 + sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 302 + status = "okay"; 303 + }; 304 + 305 + &iomuxc { 306 + eqos_pins: pinctrl-eqos-grp { 307 + fsl,pins = < 308 + MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC 0x3 309 + MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x3 310 + MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0 0x91 311 + MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1 0x91 312 + MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x91 313 + MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x91 314 + MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x91 315 + MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x91 316 + MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x1f 317 + MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x1f 318 + MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x1f 319 + MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x1f 320 + MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x1f 321 + MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x1f 322 + >; 323 + }; 324 + 325 + fec_pins: pinctrl-fec-grp { 326 + fsl,pins = < 327 + MX8MP_IOMUXC_SAI1_RXD2__ENET1_MDC 0x3 328 + MX8MP_IOMUXC_SAI1_RXD3__ENET1_MDIO 0x3 329 + MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0 0x91 330 + MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1 0x91 331 + MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2 0x91 332 + MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3 0x91 333 + MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC 0x91 334 + MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL 0x91 335 + MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0 0x1f 336 + MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1 0x1f 337 + MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2 0x1f 338 + MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3 0x1f 339 + MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL 0x1f 340 + MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC 0x1f 341 + >; 342 + }; 343 + 344 + i2c1_pins: pinctrl-i2c1-grp { 345 + fsl,pins = < 346 + MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001c3 347 + MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001c3 348 + >; 349 + }; 350 + 351 + i2c1_gpio_pins: pinctrl-i2c1-gpio-grp { 352 + fsl,pins = < 353 + MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14 0x400001c3 354 + MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15 0x400001c3 355 + >; 356 + }; 357 + 358 + i2c2_pins: pinctrl-i2c2-grp { 359 + fsl,pins = < 360 + MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 0x400001c3 361 + MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 0x400001c3 362 + >; 363 + }; 364 + 365 + i2c2_gpio_pins: pinctrl-i2c2-gpio-grp { 366 + fsl,pins = < 367 + MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16 0x400001c3 368 + MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17 0x400001c3 369 + >; 370 + }; 371 + 372 + i2c3_pins: pinctrl-i2c3-grp { 373 + fsl,pins = < 374 + MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL 0x400001c3 375 + MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA 0x400001c3 376 + >; 377 + }; 378 + 379 + i2c3_gpio_pins: pinctrl-i2c3-gpio-grp { 380 + fsl,pins = < 381 + MX8MP_IOMUXC_I2C3_SCL__GPIO5_IO18 0x400001c3 382 + MX8MP_IOMUXC_I2C3_SDA__GPIO5_IO19 0x400001c3 383 + >; 384 + }; 385 + 386 + i2c4_pins: pinctrl-i2c4-grp { 387 + fsl,pins = < 388 + MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL 0x400001c3 389 + MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA 0x400001c3 390 + >; 391 + }; 392 + 393 + i2c4_gpio_pins: pinctrl-i2c4-gpio-grp { 394 + fsl,pins = < 395 + MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20 0x400001c3 396 + MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21 0x400001c3 397 + >; 398 + }; 399 + 400 + phy0_pins: pinctrl-phy0-grp { 401 + fsl,pins = < 402 + /* RESET_N: weak i/o, open drain, external 1k pull-up */ 403 + MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19 0x20 404 + /* INT_N: weak i/o, open drain, internal pull-up */ 405 + MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18 0x160 406 + >; 407 + }; 408 + 409 + phy1_pins: pinctrl-phy-1-grp { 410 + fsl,pins = < 411 + /* RESET_N: weak i/o, open drain, external 1k pull-up */ 412 + MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02 0x20 413 + /* INT_N: weak i/o, open drain, internal pull-up */ 414 + MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03 0x160 415 + >; 416 + }; 417 + 418 + pmic_pins: pinctrl-pmic-grp { 419 + fsl,pins = < 420 + MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03 0x41 421 + >; 422 + }; 423 + 424 + uart1_pins: pinctrl-uart1-grp { 425 + fsl,pins = < 426 + MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x140 427 + MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX 0x140 428 + MX8MP_IOMUXC_UART3_RXD__UART1_DCE_CTS 0x140 429 + MX8MP_IOMUXC_UART3_TXD__UART1_DCE_RTS 0x140 430 + /* BT_REG_ON */ 431 + MX8MP_IOMUXC_SD1_RESET_B__GPIO2_IO10 0x0 432 + /* BT_WAKE_DEV */ 433 + MX8MP_IOMUXC_SD1_DATA5__GPIO2_IO07 0x0 434 + /* BT_WAKE_HOST */ 435 + MX8MP_IOMUXC_SD1_DATA6__GPIO2_IO08 0x100 436 + >; 437 + }; 438 + 439 + uart2_pins: pinctrl-uart2-grp { 440 + fsl,pins = < 441 + MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x49 442 + MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x49 443 + >; 444 + }; 445 + 446 + usdhc1_pins: pinctrl-usdhc1-grp { 447 + fsl,pins = < 448 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x190 449 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d0 450 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d0 451 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d0 452 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d0 453 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d0 454 + /* WL_REG_ON */ 455 + MX8MP_IOMUXC_SD1_STROBE__GPIO2_IO11 0x0 456 + /* WL_WAKE_HOST */ 457 + MX8MP_IOMUXC_SD1_DATA7__GPIO2_IO09 0x100 458 + >; 459 + }; 460 + 461 + usdhc1_100mhz_pins: pinctrl-usdhc1g-100mhz-grp { 462 + fsl,pins = < 463 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x194 464 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d4 465 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d4 466 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d4 467 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d4 468 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d4 469 + >; 470 + }; 471 + 472 + usdhc1_200mhz_pins: pinctrl-usdhc1-200mhz-grp { 473 + fsl,pins = < 474 + MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK 0x196 475 + MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD 0x1d6 476 + MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0 0x1d6 477 + MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1 0x1d6 478 + MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2 0x1d6 479 + MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3 0x1d6 480 + >; 481 + }; 482 + 483 + usdhc3_pins: pinctrl-usdhc3-grp { 484 + fsl,pins = < 485 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190 486 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d0 487 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d0 488 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d0 489 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d0 490 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d0 491 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d0 492 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d0 493 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d0 494 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d0 495 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x190 496 + >; 497 + }; 498 + 499 + usdhc3_100mhz_pins: pinctrl-usdhc3-100mhz-grp { 500 + fsl,pins = < 501 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194 502 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4 503 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4 504 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4 505 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4 506 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4 507 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4 508 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4 509 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4 510 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4 511 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x194 512 + >; 513 + }; 514 + 515 + usdhc3_200mhz_pins: pinctrl-usdhc3-200mhz-grp { 516 + fsl,pins = < 517 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x196 518 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d6 519 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d6 520 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d6 521 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d6 522 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d6 523 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d6 524 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d6 525 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d6 526 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d6 527 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x196 528 + >; 529 + }; 530 + 531 + wdog1_pins: pinctrl-wdog1-grp { 532 + fsl,pins = < 533 + MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0x140 534 + >; 535 + }; 536 + }; 537 + 538 + &uart1 { 539 + pinctrl-names = "default"; 540 + pinctrl-0 = <&uart1_pins>; 541 + uart-has-rtscts; 542 + /* select 80MHz parent clock to support maximum baudrate 4Mbps */ 543 + assigned-clocks = <&clk IMX8MP_CLK_UART1>; 544 + assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>; 545 + status = "okay"; 546 + 547 + bluetooth { 548 + compatible = "brcm,bcm4345c5"; 549 + device-wakeup-gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>; 550 + host-wakeup-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; 551 + shutdown-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>; 552 + /* Murata 1MW module supports max. 3M baud */ 553 + max-speed = <3000000>; 554 + }; 555 + }; 556 + 557 + &uart2 { 558 + pinctrl-names = "default"; 559 + pinctrl-0 = <&uart2_pins>; 560 + status = "okay"; 561 + }; 562 + 563 + &usdhc1 { 564 + pinctrl-names = "default"; 565 + pinctrl-0 = <&usdhc1_pins>; 566 + pinctrl-1 = <&usdhc1_100mhz_pins>; 567 + pinctrl-2 = <&usdhc1_200mhz_pins>; 568 + vmmc-supply = <&v_3_3>; 569 + vqmmc-supply = <&v_1_8>; 570 + bus-width = <4>; 571 + mmc-pwrseq = <&usdhc1_pwrseq>; 572 + status = "okay"; 573 + }; 574 + 575 + &usdhc3 { 576 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 577 + pinctrl-0 = <&usdhc3_pins>; 578 + pinctrl-1 = <&usdhc3_100mhz_pins>; 579 + pinctrl-2 = <&usdhc3_200mhz_pins>; 580 + vmmc-supply = <&v_3_3>; 581 + vqmmc-supply = <&v_1_8>; 582 + bus-width = <8>; 583 + non-removable; 584 + status = "okay"; 585 + }; 586 + 587 + &wdog1 { 588 + pinctrl-names = "default"; 589 + pinctrl-0 = <&wdog1_pins>; 590 + status = "okay"; 591 + };
+22 -24
arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106.dts
··· 36 36 vout-supply = <&reg_5v0_sensor>; 37 37 }; 38 38 39 + flexcan1_phy: can-phy0 { 40 + compatible = "ti,tcan1051", "ti,tcan1042"; 41 + #phy-cells = <0>; 42 + pinctrl-0 = <&pinctrl_flexcan1_stby>; 43 + pinctrl-names = "default"; 44 + max-bitrate = <5000000>; 45 + standby-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>; 46 + }; 47 + 48 + flexcan2_phy: can-phy1 { 49 + compatible = "ti,tcan1051", "ti,tcan1042"; 50 + #phy-cells = <0>; 51 + pinctrl-0 = <&pinctrl_flexcan2_stby>; 52 + pinctrl-names = "default"; 53 + max-bitrate = <5000000>; 54 + standby-gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>; 55 + }; 56 + 39 57 reg_1v8_per: regulator-1v8-per { 40 58 compatible = "regulator-fixed"; 41 59 pinctrl-0 = <&pinctrl_reg_1v8>; ··· 101 83 regulator-max-microvolt = <6400000>; 102 84 regulator-min-microvolt = <6400000>; 103 85 regulator-name = "6v4"; 104 - }; 105 - 106 - reg_can1_stby: regulator-can1-stby { 107 - compatible = "regulator-fixed"; 108 - pinctrl-0 = <&pinctrl_flexcan1_reg>; 109 - pinctrl-names = "default"; 110 - regulator-max-microvolt = <3300000>; 111 - regulator-min-microvolt = <3300000>; 112 - regulator-name = "can1-stby"; 113 - gpio = <&gpio4 3 GPIO_ACTIVE_LOW>; 114 - }; 115 - 116 - reg_can2_stby: regulator-can2-stby { 117 - compatible = "regulator-fixed"; 118 - pinctrl-0 = <&pinctrl_flexcan2_reg>; 119 - pinctrl-names = "default"; 120 - regulator-max-microvolt = <3300000>; 121 - regulator-min-microvolt = <3300000>; 122 - regulator-name = "can2-stby"; 123 - gpio = <&gpio5 9 GPIO_ACTIVE_LOW>; 124 86 }; 125 87 126 88 sound { ··· 178 180 }; 179 181 180 182 &flexcan1 { 183 + phys = <&flexcan1_phy>; 181 184 pinctrl-0 = <&pinctrl_flexcan1>; 182 185 pinctrl-names = "default"; 183 - xceiver-supply = <&reg_can1_stby>; 184 186 status = "okay"; 185 187 }; 186 188 187 189 &flexcan2 { 190 + phys = <&flexcan2_phy>; 188 191 pinctrl-0 = <&pinctrl_flexcan2>; 189 192 pinctrl-names = "default"; 190 - xceiver-supply = <&reg_can2_stby>; 191 193 status = "okay"; 192 194 }; 193 195 ··· 276 278 >; 277 279 }; 278 280 279 - pinctrl_flexcan1_reg: flexcan1reggrp { 281 + pinctrl_flexcan1_stby: flexcan1stbygrp { 280 282 fsl,pins = < 281 283 MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03 282 284 (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE) ··· 292 294 >; 293 295 }; 294 296 295 - pinctrl_flexcan2_reg: flexcan2reggrp { 297 + pinctrl_flexcan2_stby: flexcan2stbygrp { 296 298 fsl,pins = < 297 299 MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 298 300 (MX8MP_DSE_X2 | MX8MP_FSEL_FAST | MX8MP_PULL_UP | MX8MP_PULL_ENABLE)
+907
arch/arm64/boot/dts/freescale/imx8mp-ultra-mach-sbc.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright (C) 2025 Ultratronik 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include <dt-bindings/usb/pd.h> 9 + #include "imx8mp.dtsi" 10 + 11 + / { 12 + model = "NXP i.MX8MPlus Ultratronik MMI_A53 board"; 13 + compatible = "ultratronik,imx8mp-ultra-mach-sbc", "fsl,imx8mp"; 14 + 15 + aliases { 16 + ethernet0 = &fec; 17 + ethernet1 = &eqos; 18 + rtc0 = &hwrtc; 19 + rtc1 = &snvs_rtc; 20 + }; 21 + 22 + chosen { 23 + stdout-path = &uart2; 24 + }; 25 + 26 + gpio-sbu-mux { 27 + compatible = "nxp,cbdtu02043", "gpio-sbu-mux"; 28 + pinctrl-names = "default"; 29 + pinctrl-0 = <&pinctrl_sbu_mux>; 30 + select-gpios = <&gpio4 20 GPIO_ACTIVE_HIGH>; 31 + enable-gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>; 32 + orientation-switch; 33 + 34 + port { 35 + usb3_data_ss: endpoint { 36 + remote-endpoint = <&typec_con_ss>; 37 + }; 38 + }; 39 + }; 40 + 41 + gpio-keys { 42 + compatible = "gpio-keys"; 43 + 44 + button-0 { 45 + gpios = <&gpio4 27 GPIO_ACTIVE_LOW>; /* Wakeup */ 46 + label = "Wakeup"; 47 + linux,code = <KEY_WAKEUP>; 48 + pinctrl-0 = <&pinctrl_gpio_key_wakeup>; 49 + pinctrl-names = "default"; 50 + wakeup-source; 51 + }; 52 + }; 53 + 54 + leds { 55 + compatible = "gpio-leds"; 56 + pinctrl-names = "default"; 57 + pinctrl-0 = <&pinctrl_gpio_leds>; 58 + 59 + led1 { 60 + label = "red"; 61 + gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>; 62 + default-state = "off"; 63 + }; 64 + 65 + led2 { 66 + label = "green"; 67 + gpios = <&gpio4 25 GPIO_ACTIVE_HIGH>; 68 + default-state = "off"; 69 + }; 70 + 71 + led3 { 72 + label = "yellow"; 73 + gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; 74 + default-state = "off"; 75 + }; 76 + }; 77 + 78 + reg_usba_vbus: regulator-usba-vbus { 79 + compatible = "regulator-fixed"; 80 + pinctrl-names = "default"; 81 + pinctrl-0 = <&pinctrl_usb1>; 82 + regulator-name = "usb-A-vbus"; 83 + regulator-min-microvolt = <5000000>; 84 + regulator-max-microvolt = <5000000>; 85 + gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>; 86 + enable-active-high; 87 + }; 88 + 89 + reg_usdhc2_vmmc: regulator-usdhc2 { 90 + compatible = "regulator-fixed"; 91 + pinctrl-names = "default"; 92 + pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; 93 + regulator-name = "VSD_3V3"; 94 + regulator-min-microvolt = <3300000>; 95 + regulator-max-microvolt = <3300000>; 96 + gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>; 97 + enable-active-high; 98 + }; 99 + }; 100 + 101 + &A53_0 { 102 + cpu-supply = <&buck2>; 103 + }; 104 + 105 + &A53_1 { 106 + cpu-supply = <&buck2>; 107 + }; 108 + 109 + &A53_2 { 110 + cpu-supply = <&buck2>; 111 + }; 112 + 113 + &A53_3 { 114 + cpu-supply = <&buck2>; 115 + }; 116 + 117 + &ecspi1 { 118 + #address-cells = <1>; 119 + #size-cells = <0>; 120 + pinctrl-names = "default"; 121 + pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>; 122 + cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 123 + status = "okay"; 124 + 125 + slb9670: tpm@0 { 126 + compatible = "infineon,slb9670", "tcg,tpm_tis-spi"; 127 + reg = <0>; 128 + spi-max-frequency = <32000000>; 129 + pinctrl-names = "default"; 130 + pinctrl-0 = <&pinctrl_slb9670>; 131 + interrupt-parent = <&gpio1>; 132 + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 133 + }; 134 + }; 135 + 136 + &ecspi2 { 137 + #address-cells = <1>; 138 + #size-cells = <0>; 139 + pinctrl-names = "default"; 140 + pinctrl-0 = <&pinctrl_ecspi2 &pinctrl_ecspi2_cs>; 141 + cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>, 142 + <&gpio1 8 GPIO_ACTIVE_LOW>, 143 + <&gpio1 9 GPIO_ACTIVE_LOW>; 144 + status = "okay"; 145 + 146 + nfc-transceiver@1 { 147 + compatible = "st,st95hf"; 148 + reg = <1>; 149 + pinctrl-names = "default"; 150 + pinctrl-0 = <&pinctrl_nfc>; 151 + spi-max-frequency = <100000>; 152 + interrupt-parent = <&gpio1>; 153 + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; 154 + enable-gpio = <&gpio1 6 GPIO_ACTIVE_HIGH>; 155 + }; 156 + }; 157 + 158 + &eqos { 159 + pinctrl-names = "default"; 160 + pinctrl-0 = <&pinctrl_eqos>; 161 + phy-mode = "rgmii-id"; 162 + phy-handle = <&ethphy0>; 163 + status = "okay"; 164 + 165 + mdio { 166 + compatible = "snps,dwmac-mdio"; 167 + #address-cells = <1>; 168 + #size-cells = <0>; 169 + 170 + ethphy0: ethernet-phy@1 { 171 + compatible = "ethernet-phy-ieee802.3-c22"; 172 + reg = <0x1>; 173 + interrupt-parent = <&gpio4>; 174 + interrupts = <18 IRQ_TYPE_LEVEL_LOW>; 175 + }; 176 + }; 177 + }; 178 + 179 + &fec { 180 + pinctrl-names = "default"; 181 + pinctrl-0 = <&pinctrl_fec>; 182 + phy-mode = "rgmii-id"; 183 + phy-handle = <&ethphy1>; 184 + fsl,magic-packet; 185 + status = "okay"; 186 + 187 + mdio { 188 + #address-cells = <1>; 189 + #size-cells = <0>; 190 + 191 + ethphy1: ethernet-phy@2 { 192 + compatible = "ethernet-phy-ieee802.3-c22"; 193 + reg = <0x2>; 194 + interrupt-parent = <&gpio4>; 195 + interrupts = <1 IRQ_TYPE_LEVEL_LOW>; 196 + }; 197 + }; 198 + }; 199 + 200 + &flexcan1 { 201 + pinctrl-names = "default"; 202 + pinctrl-0 = <&pinctrl_flexcan1>; 203 + status = "okay"; 204 + }; 205 + 206 + &gpio1 { 207 + gpio-line-names = 208 + "#TPM_IRQ", "GPIO1", "", "#PMIC_INT", 209 + "SD2_VSEL", "#TOUCH_IRQ", "#NFC_INT_I", "#NFC_INT", 210 + "#SPI2_CS2", "#SPI2_CS3", "#RTS4", "", 211 + "USB_PWR", "GPIO2", "GPIO3", ""; 212 + }; 213 + 214 + &gpio2 { 215 + gpio-line-names = 216 + "", "", "", "", "", "", "", "", 217 + "", "", "", "", "#SD2_CD", "", "", "", 218 + "", "", "", "", "#USB-C_EN", "", "", "", 219 + "", "", "", "", "", "", "", ""; 220 + }; 221 + 222 + &gpio3 { 223 + gpio-line-names = 224 + "", "", "", "", "", "", "", "", 225 + "", "", "", "", "", "", "", "", 226 + "", "", "", "", "", "", "DISP_POW", "GPIO4", 227 + "#", "", "", "", "", "", "", ""; 228 + }; 229 + 230 + &gpio4 { 231 + gpio-line-names = 232 + "BKL_POW", "#ETH1_INT", "#TPM_RES", "#PCAP_RES", 233 + "", "", "", "", 234 + "", "", "", "", "", "", "", "", 235 + "", "", "#ETH0_INT", "#USB-C_ALERT", 236 + "#USB-C_SEL", "", "", "", 237 + "LED_RED", "LED_GREEN", "LED_YELLOW", "#WAKEUP", 238 + "", "", "", ""; 239 + }; 240 + 241 + &gpio5 { 242 + gpio-line-names = 243 + "", "", "", "", "", "", "", "", 244 + "", "#SPI1_CS", "", "", "", "#SPI2_CS1", "", "", 245 + "", "", "", "", "ENA_KAM", "ENA_LED", "", "", 246 + "", "", "", "", "", "", "", ""; 247 + }; 248 + 249 + &hdmi_pvi { 250 + status = "okay"; 251 + }; 252 + 253 + &hdmi_tx { 254 + ddc-i2c-bus = <&i2c5>; 255 + pinctrl-names = "default"; 256 + pinctrl-0 = <&pinctrl_hdmi>; 257 + status = "okay"; 258 + }; 259 + 260 + &hdmi_tx_phy { 261 + status = "okay"; 262 + }; 263 + 264 + &i2c1 { 265 + clock-frequency = <100000>; 266 + pinctrl-names = "default", "gpio"; 267 + pinctrl-0 = <&pinctrl_i2c1>; 268 + pinctrl-1 = <&pinctrl_i2c1_gpio>; 269 + scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 270 + sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 271 + status = "okay"; 272 + 273 + pmic@25 { 274 + compatible = "nxp,pca9450c"; 275 + reg = <0x25>; 276 + pinctrl-0 = <&pinctrl_pmic>; 277 + interrupt-parent = <&gpio1>; 278 + interrupts = <3 GPIO_ACTIVE_LOW>; 279 + 280 + /* 281 + * i.MX 8M Plus Data Sheet for Consumer Products 282 + * 3.1.4 Operating ranges 283 + * MIMX8ML8DVNLZAB 284 + */ 285 + regulators { 286 + buck1: BUCK1 { /* VDD_SOC (dual-phase with BUCK3) */ 287 + regulator-min-microvolt = <850000>; 288 + regulator-max-microvolt = <1050000>; 289 + regulator-always-on; 290 + regulator-boot-on; 291 + regulator-ramp-delay = <3125>; 292 + }; 293 + 294 + buck2: BUCK2 { /* VDD_ARM */ 295 + regulator-min-microvolt = <850000>; 296 + regulator-max-microvolt = <1000000>; 297 + regulator-always-on; 298 + regulator-boot-on; 299 + regulator-ramp-delay = <3125>; 300 + nxp,dvs-run-voltage = <950000>; 301 + nxp,dvs-standby-voltage = <850000>; 302 + }; 303 + 304 + buck4: BUCK4 { /* +3V3 */ 305 + regulator-min-microvolt = <3300000>; 306 + regulator-max-microvolt = <3300000>; 307 + regulator-always-on; 308 + regulator-boot-on; 309 + }; 310 + 311 + buck5: BUCK5 { /* +1V8 */ 312 + regulator-min-microvolt = <1800000>; 313 + regulator-max-microvolt = <1800000>; 314 + regulator-always-on; 315 + regulator-boot-on; 316 + }; 317 + 318 + buck6: BUCK6 { /* DRAM_1V1 */ 319 + regulator-min-microvolt = <1100000>; 320 + regulator-max-microvolt = <1100000>; 321 + regulator-always-on; 322 + regulator-boot-on; 323 + }; 324 + 325 + ldo1: LDO1 { /* NVCC_SNVS_1V8 */ 326 + regulator-min-microvolt = <1800000>; 327 + regulator-max-microvolt = <1800000>; 328 + regulator-always-on; 329 + regulator-boot-on; 330 + }; 331 + 332 + ldo3: LDO3 { /* VDDA_1P8 */ 333 + regulator-min-microvolt = <1800000>; 334 + regulator-max-microvolt = <1800000>; 335 + regulator-always-on; 336 + regulator-boot-on; 337 + }; 338 + 339 + ldo4: LDO4 { /* ENET_2V5 */ 340 + regulator-min-microvolt = <2500000>; 341 + regulator-max-microvolt = <2500000>; 342 + regulator-always-on; 343 + regulator-boot-on; 344 + }; 345 + 346 + ldo5: LDO5 { /* NVCC_SD2 */ 347 + regulator-min-microvolt = <1800000>; 348 + regulator-max-microvolt = <3300000>; 349 + regulator-always-on; 350 + regulator-boot-on; 351 + }; 352 + }; 353 + }; 354 + 355 + crypto@35 { 356 + compatible = "atmel,atecc508a"; 357 + reg = <0x35>; 358 + }; 359 + 360 + eeprom@50 { 361 + compatible = "atmel,24c16"; 362 + reg = <0x50>; 363 + pagesize = <16>; 364 + }; 365 + }; 366 + 367 + &i2c2 { 368 + clock-frequency = <100000>; 369 + pinctrl-names = "default", "gpio"; 370 + pinctrl-0 = <&pinctrl_i2c2>; 371 + pinctrl-1 = <&pinctrl_i2c2_gpio>; 372 + scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 373 + sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 374 + status = "okay"; 375 + 376 + hwrtc: rtc@32 { 377 + compatible = "epson,rx8900"; 378 + reg = <0x32>; 379 + epson,vdet-disable; 380 + trickle-diode-disable; 381 + }; 382 + 383 + tcpc@52 { 384 + compatible = "nxp,ptn5110", "tcpci"; 385 + reg = <0x52>; 386 + pinctrl-names = "default"; 387 + pinctrl-0 = <&pinctrl_ptn5110>; 388 + interrupt-parent = <&gpio4>; 389 + interrupts = <19 IRQ_TYPE_LEVEL_LOW>; 390 + 391 + usb_con: connector { 392 + compatible = "usb-c-connector"; 393 + label = "USB-C"; 394 + power-role = "dual"; 395 + data-role = "dual"; 396 + try-power-role = "sink"; 397 + source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>; 398 + sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM) 399 + PDO_VAR(5000, 5000, 3000)>; 400 + op-sink-microwatt = <15000000>; 401 + self-powered; 402 + 403 + ports { 404 + #address-cells = <1>; 405 + #size-cells = <0>; 406 + 407 + port@0 { 408 + reg = <0>; 409 + 410 + typec_dr_sw: endpoint { 411 + remote-endpoint = <&usb3_drd_sw>; 412 + }; 413 + }; 414 + 415 + port@1 { 416 + reg = <1>; 417 + 418 + typec_con_ss: endpoint { 419 + remote-endpoint = <&usb3_data_ss>; 420 + }; 421 + }; 422 + }; 423 + }; 424 + }; 425 + }; 426 + 427 + &i2c3 { 428 + clock-frequency = <100000>; 429 + pinctrl-names = "default", "gpio"; 430 + pinctrl-0 = <&pinctrl_i2c3>; 431 + pinctrl-1 = <&pinctrl_i2c3_gpio>; 432 + scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 433 + sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 434 + status = "okay"; 435 + }; 436 + 437 + &i2c5 { /* HDMI EDID bus */ 438 + clock-frequency = <100000>; 439 + pinctrl-names = "default", "gpio"; 440 + pinctrl-0 = <&pinctrl_i2c5>; 441 + pinctrl-1 = <&pinctrl_i2c5_gpio>; 442 + scl-gpios = <&gpio3 26 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 443 + sda-gpios = <&gpio3 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 444 + status = "okay"; 445 + }; 446 + 447 + &lcdif3 { 448 + status = "okay"; 449 + }; 450 + 451 + &pwm1 { 452 + pinctrl-names = "default"; 453 + pinctrl-0 = <&pinctrl_pwm1>; 454 + status = "okay"; 455 + }; 456 + 457 + &pwm2 { 458 + pinctrl-names = "default"; 459 + pinctrl-0 = <&pinctrl_pwm2>; 460 + status = "okay"; 461 + }; 462 + 463 + &snvs_pwrkey { 464 + status = "okay"; 465 + }; 466 + 467 + &uart2 { 468 + /* system console */ 469 + pinctrl-names = "default"; 470 + pinctrl-0 = <&pinctrl_uart2>; 471 + status = "okay"; 472 + }; 473 + 474 + &uart3 { 475 + pinctrl-names = "default"; 476 + pinctrl-0 = <&pinctrl_uart3>; 477 + status = "okay"; 478 + }; 479 + 480 + &uart4 { 481 + /* expansion port serial connection */ 482 + pinctrl-names = "default"; 483 + pinctrl-0 = <&pinctrl_uart4>; 484 + status = "okay"; 485 + }; 486 + 487 + &usb3_phy0 { 488 + status = "okay"; 489 + }; 490 + 491 + &usb3_0 { 492 + status = "okay"; 493 + }; 494 + 495 + &usb_dwc3_0 { 496 + dr_mode = "otg"; 497 + hnp-disable; 498 + srp-disable; 499 + adp-disable; 500 + usb-role-switch; 501 + status = "okay"; 502 + 503 + port { 504 + usb3_drd_sw: endpoint { 505 + remote-endpoint = <&typec_dr_sw>; 506 + }; 507 + }; 508 + }; 509 + 510 + &usb3_phy1 { 511 + vbus-supply = <&reg_usba_vbus>; 512 + status = "okay"; 513 + }; 514 + 515 + &usb3_1 { 516 + status = "okay"; 517 + }; 518 + 519 + &usb_dwc3_1 { 520 + dr_mode = "host"; 521 + snps,hsphy_interface = "utmi"; 522 + status = "okay"; 523 + }; 524 + 525 + &usdhc2 { 526 + assigned-clocks = <&clk IMX8MP_CLK_USDHC2>; 527 + assigned-clock-rates = <400000000>; 528 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 529 + pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 530 + pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 531 + pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 532 + cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; 533 + bus-width = <4>; 534 + vmmc-supply = <&reg_usdhc2_vmmc>; 535 + vqmmc-supply = <&ldo5>; 536 + status = "okay"; 537 + }; 538 + 539 + &usdhc3 { 540 + assigned-clocks = <&clk IMX8MP_CLK_USDHC3>; 541 + assigned-clock-rates = <400000000>; 542 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 543 + pinctrl-0 = <&pinctrl_usdhc3>; 544 + pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 545 + pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 546 + vmmc-supply = <&buck4>; 547 + vqmmc-supply = <&buck5>; 548 + bus-width = <8>; 549 + no-sd; 550 + no-sdio; 551 + non-removable; 552 + status = "okay"; 553 + }; 554 + 555 + &wdog1 { 556 + pinctrl-names = "default"; 557 + pinctrl-0 = <&pinctrl_wdog>; 558 + fsl,ext-reset-output; 559 + status = "okay"; 560 + }; 561 + 562 + &iomuxc { 563 + pinctrl-names = "default"; 564 + pinctrl-0 = <&pinctrl_hog>; 565 + 566 + pinctrl_ecspi1_cs: ecspi1-cs-grp { 567 + fsl,pins = < 568 + MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09 0x40 /* #SPI1_CS */ 569 + >; 570 + }; 571 + 572 + pinctrl_ecspi1: ecspi1-grp { 573 + fsl,pins = < 574 + MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK 0x82 575 + MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI 0x82 576 + MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO 0x82 577 + >; 578 + }; 579 + 580 + pinctrl_ecspi2_cs: ecspi2-cs-grp { 581 + fsl,pins = < 582 + MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13 0x40 /* #SPI2_CS */ 583 + MX8MP_IOMUXC_GPIO1_IO08__GPIO1_IO08 0x40 /* #SPI2_CS2 */ 584 + MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 0x40 /* #SPI2_CS3 */ 585 + >; 586 + }; 587 + 588 + pinctrl_ecspi2: ecspi2-grp { 589 + fsl,pins = < 590 + MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK 0x82 591 + MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI 0x82 592 + MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO 0x82 593 + >; 594 + }; 595 + 596 + pinctrl_eqos: eqos-grp { 597 + fsl,pins = < 598 + MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC 0x0 599 + MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x0 600 + MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0 0x90 601 + MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1 0x90 602 + MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2 0x90 603 + MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3 0x90 604 + MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK 0x90 605 + MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x90 606 + MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x16 607 + MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x16 608 + MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x16 609 + MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x16 610 + MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x16 611 + MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x16 612 + MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18 0x10 /* #ETH0_INT */ 613 + >; 614 + }; 615 + 616 + pinctrl_fec: fec-grp { 617 + fsl,pins = < 618 + MX8MP_IOMUXC_SAI1_RXD2__ENET1_MDC 0x0 619 + MX8MP_IOMUXC_SAI1_RXD3__ENET1_MDIO 0x0 620 + MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0 0x90 621 + MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1 0x90 622 + MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2 0x90 623 + MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3 0x90 624 + MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC 0x90 625 + MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL 0x90 626 + MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0 0x16 627 + MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1 0x16 628 + MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2 0x16 629 + MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3 0x16 630 + MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL 0x16 631 + MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC 0x16 632 + MX8MP_IOMUXC_SAI1_RXC__GPIO4_IO01 0x10 /* #ETH1_INT */ 633 + >; 634 + }; 635 + 636 + pinctrl_flexcan1: flexcan1-grp { 637 + fsl,pins = < 638 + MX8MP_IOMUXC_SPDIF_RX__CAN1_RX 0x154 639 + MX8MP_IOMUXC_SPDIF_TX__CAN1_TX 0x154 640 + >; 641 + }; 642 + 643 + pinctrl_gpio_key_wakeup: gpio-key-wakeup-grp { 644 + fsl,pins = < 645 + MX8MP_IOMUXC_SAI2_MCLK__GPIO4_IO27 0x40 /* #WAKEUP */ 646 + >; 647 + }; 648 + 649 + pinctrl_gpio_leds: gpio-leds-grp { 650 + fsl,pins = < 651 + MX8MP_IOMUXC_SAI2_TXFS__GPIO4_IO24 0x40 /* LED_RED */ 652 + MX8MP_IOMUXC_SAI2_TXC__GPIO4_IO25 0x40 /* LED_GREEN */ 653 + MX8MP_IOMUXC_SAI2_TXD0__GPIO4_IO26 0x40 /* LED_YELLOW */ 654 + >; 655 + }; 656 + 657 + pinctrl_hdmi: hdmi-grp { 658 + fsl,pins = < 659 + MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC 0x154 660 + MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD 0x154 661 + >; 662 + }; 663 + 664 + pinctrl_hog: hog-grp { 665 + fsl,pins = < 666 + MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01 0x40 /* GPIO1 */ 667 + MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13 0x40 /* GPIO2 */ 668 + MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14 0x40 /* GPIO3 */ 669 + MX8MP_IOMUXC_SAI5_RXD2__GPIO3_IO23 0x40 /* GPIO4 */ 670 + MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20 0x40 /* ENA_KAM */ 671 + MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21 0x40 /* ENA_LED */ 672 + MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03 0x40 /* #PCAP_RES */ 673 + MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x40 /* #RTS4 */ 674 + >; 675 + }; 676 + 677 + pinctrl_i2c1: i2c1-grp { 678 + fsl,pins = < 679 + MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001c0 680 + MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001c0 681 + >; 682 + }; 683 + 684 + pinctrl_i2c1_gpio: i2c1-gpio-grp { 685 + fsl,pins = < 686 + MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14 0xc0 687 + MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15 0xc0 688 + >; 689 + }; 690 + 691 + pinctrl_i2c2: i2c2-grp { 692 + fsl,pins = < 693 + MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL 0x400001c0 694 + MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA 0x400001c0 695 + >; 696 + }; 697 + 698 + pinctrl_i2c2_gpio: i2c2-gpio-grp { 699 + fsl,pins = < 700 + MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16 0xc0 701 + MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17 0xc0 702 + >; 703 + }; 704 + 705 + pinctrl_i2c3: i2c3-grp { 706 + fsl,pins = < 707 + MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL 0x400001c2 708 + MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA 0x400001c2 709 + >; 710 + }; 711 + 712 + pinctrl_i2c3_gpio: i2c3-gpio-grp { 713 + fsl,pins = < 714 + MX8MP_IOMUXC_I2C3_SCL__GPIO5_IO18 0xc2 715 + MX8MP_IOMUXC_I2C3_SDA__GPIO5_IO19 0xc2 716 + >; 717 + }; 718 + 719 + pinctrl_i2c5: i2c5-grp { 720 + fsl,pins = < 721 + MX8MP_IOMUXC_HDMI_DDC_SCL__I2C5_SCL 0x400000c4 722 + MX8MP_IOMUXC_HDMI_DDC_SDA__I2C5_SDA 0x400000c4 723 + >; 724 + }; 725 + 726 + pinctrl_i2c5_gpio: i2c5-gpio-grp { 727 + fsl,pins = < 728 + MX8MP_IOMUXC_HDMI_DDC_SCL__GPIO3_IO26 0xc4 729 + MX8MP_IOMUXC_HDMI_DDC_SDA__GPIO3_IO27 0xc4 730 + >; 731 + }; 732 + 733 + pinctrl_nfc: nfc-grp { 734 + fsl,pins = < 735 + MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06 0x40 /* NFC_INT_I */ 736 + MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 0x40 /* NFC_INT */ 737 + >; 738 + }; 739 + 740 + pinctrl_pmic: pmic-grp { 741 + fsl,pins = < 742 + MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03 0x40 /* #PMIC_INT */ 743 + >; 744 + }; 745 + 746 + pinctrl_ptn5110: ptn5110-grp { 747 + fsl,pins = < 748 + MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19 0x1c4 /* #USB-C_ALERT */ 749 + >; 750 + }; 751 + 752 + pinctrl_pwm1: pwm1-grp { 753 + fsl,pins = < 754 + MX8MP_IOMUXC_SPDIF_EXT_CLK__PWM1_OUT 0x116 755 + >; 756 + }; 757 + 758 + pinctrl_pwm2: pwm2-grp { 759 + fsl,pins = < 760 + MX8MP_IOMUXC_SAI5_RXD0__PWM2_OUT 0x116 /* EXT_PWM */ 761 + >; 762 + }; 763 + 764 + pinctrl_reg_usdhc2_vmmc: reg-usdhc2-vmmc-grp { 765 + fsl,pins = < 766 + MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x40 767 + >; 768 + }; 769 + 770 + pinctrl_sbu_mux: sbu-mux-grp { 771 + fsl,pins = < 772 + MX8MP_IOMUXC_SAI1_MCLK__GPIO4_IO20 0x16 /* #USB-C_SEL */ 773 + MX8MP_IOMUXC_SD2_WP__GPIO2_IO20 0x16 /* #USB-C_EN */ 774 + >; 775 + }; 776 + 777 + pinctrl_slb9670: slb9670-grp { 778 + fsl,pins = < 779 + MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00 0x40 /* #TPM_IRQ */ 780 + MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02 0x40 /* #TPM_RES */ 781 + >; 782 + }; 783 + 784 + pinctrl_uart2: uart2-grp { 785 + fsl,pins = < 786 + MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x40 787 + MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x40 788 + >; 789 + }; 790 + 791 + pinctrl_uart3: uart3-grp { 792 + fsl,pins = < 793 + MX8MP_IOMUXC_UART3_RXD__UART3_DCE_RX 0x40 794 + MX8MP_IOMUXC_UART3_TXD__UART3_DCE_TX 0x40 795 + >; 796 + }; 797 + 798 + pinctrl_uart4: uart4-grp { 799 + fsl,pins = < 800 + MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX 0x40 801 + MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX 0x40 802 + >; 803 + }; 804 + 805 + pinctrl_usb1: usb1-grp { 806 + fsl,pins = < 807 + MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12 0x40 /* USB_PWR */ 808 + >; 809 + }; 810 + 811 + pinctrl_usdhc2: usdhc2-grp { 812 + fsl,pins = < 813 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x190 814 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d0 815 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d0 816 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d0 817 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d0 818 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d0 819 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc0 /* SD2_VSEL */ 820 + >; 821 + }; 822 + 823 + pinctrl_usdhc2_100mhz: usdhc2-100mhz-grp { 824 + fsl,pins = < 825 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x194 826 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d4 827 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d4 828 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d4 829 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d4 830 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d4 831 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc0 /* SD2_VSEL */ 832 + >; 833 + }; 834 + 835 + pinctrl_usdhc2_200mhz: usdhc2-200mhz-grp { 836 + fsl,pins = < 837 + MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK 0x196 838 + MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD 0x1d6 839 + MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0 0x1d6 840 + MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1 0x1d6 841 + MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2 0x1d6 842 + MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3 0x1d6 843 + MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT 0xc0 /* SD2_VSEL */ 844 + >; 845 + }; 846 + 847 + pinctrl_usdhc2_gpio: usdhc2-gpio-grp { 848 + fsl,pins = < 849 + MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12 0x1c4 850 + >; 851 + }; 852 + 853 + pinctrl_usdhc3: usdhc3-grp { 854 + fsl,pins = < 855 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x190 856 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d0 857 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d0 858 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d0 859 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d0 860 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d0 861 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d0 862 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d0 863 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d0 864 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d0 865 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x190 866 + MX8MP_IOMUXC_NAND_READY_B__USDHC3_RESET_B 0x40 /* #SD3_RESET */ 867 + >; 868 + }; 869 + 870 + pinctrl_usdhc3_100mhz: usdhc3-100mhz-grp { 871 + fsl,pins = < 872 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194 873 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4 874 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4 875 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4 876 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4 877 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4 878 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4 879 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4 880 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4 881 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4 882 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x194 883 + >; 884 + }; 885 + 886 + pinctrl_usdhc3_200mhz: usdhc3-200mhz-grp { 887 + fsl,pins = < 888 + MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x192 889 + MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d2 890 + MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d2 891 + MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d2 892 + MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d2 893 + MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d2 894 + MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d2 895 + MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d2 896 + MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d2 897 + MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d2 898 + MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x192 899 + >; 900 + }; 901 + 902 + pinctrl_wdog: wdog-grp { 903 + fsl,pins = < 904 + MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0xc6 /* #WDOG */ 905 + >; 906 + }; 907 + };
+17 -6
arch/arm64/boot/dts/freescale/imx8mp.dtsi
··· 1701 1701 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 1702 1702 clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 1703 1703 <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1704 - <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1705 - clock-names = "isp", "aclk", "hclk"; 1706 - power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 1704 + <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1705 + <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>; 1706 + clock-names = "isp", "aclk", "hclk", "pclk"; 1707 + power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>, 1708 + <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_1>; 1709 + power-domain-names = "isp", "csi2"; 1707 1710 fsl,blk-ctrl = <&media_blk_ctrl 0>; 1708 1711 status = "disabled"; 1709 1712 ··· 1726 1723 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 1727 1724 clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>, 1728 1725 <&clk IMX8MP_CLK_MEDIA_AXI_ROOT>, 1729 - <&clk IMX8MP_CLK_MEDIA_APB_ROOT>; 1730 - clock-names = "isp", "aclk", "hclk"; 1731 - power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>; 1726 + <&clk IMX8MP_CLK_MEDIA_APB_ROOT>, 1727 + <&clk IMX8MP_CLK_MEDIA_CAM1_PIX_ROOT>; 1728 + clock-names = "isp", "aclk", "hclk", "pclk"; 1729 + power-domains = <&media_blk_ctrl IMX8MP_MEDIABLK_PD_ISP>, 1730 + <&media_blk_ctrl IMX8MP_MEDIABLK_PD_MIPI_CSI2_2>; 1731 + power-domain-names = "isp", "csi2"; 1732 1732 fsl,blk-ctrl = <&media_blk_ctrl 1>; 1733 1733 status = "disabled"; 1734 1734 ··· 2051 2045 "pai", "pvi", "trng", 2052 2046 "hdmi-tx", "hdmi-tx-phy", 2053 2047 "hdcp", "hrv"; 2048 + interconnects = <&noc IMX8MP_ICM_HRV &noc IMX8MP_ICN_HDMI>, 2049 + <&noc IMX8MP_ICM_LCDIF_HDMI &noc IMX8MP_ICN_HDMI>, 2050 + <&noc IMX8MP_ICM_HDCP &noc IMX8MP_ICN_HDMI>; 2051 + interconnect-names = "hrv", "lcdif-hdmi", "hdcp"; 2054 2052 #power-domain-cells = <1>; 2055 2053 }; 2056 2054 ··· 2327 2317 compatible = "arm,gic-v3"; 2328 2318 reg = <0x38800000 0x10000>, 2329 2319 <0x38880000 0xc0000>; 2320 + #address-cells = <0>; 2330 2321 #interrupt-cells = <3>; 2331 2322 interrupt-controller; 2332 2323 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+7 -1
arch/arm64/boot/dts/freescale/imx8mq-evk.dts
··· 108 108 simple-audio-card,format = "i2s"; 109 109 simple-audio-card,frame-master = <&cpudai>; 110 110 simple-audio-card,bitclock-master = <&cpudai>; 111 + simple-audio-card,mclk-fs = <256>; 111 112 simple-audio-card,widgets = 112 113 "Line", "Left Line Out Jack", 113 114 "Line", "Right Line Out Jack"; ··· 118 117 119 118 cpudai: simple-audio-card,cpu { 120 119 sound-dai = <&sai2>; 120 + system-clock-direction-out; 121 121 }; 122 122 123 123 link_codec: simple-audio-card,codec { 124 124 sound-dai = <&wm8524>; 125 - clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>; 126 125 }; 127 126 }; 128 127 ··· 441 440 assigned-clocks = <&clk IMX8MQ_AUDIO_PLL1_BYPASS>, <&clk IMX8MQ_CLK_SAI2>; 442 441 assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1>, <&clk IMX8MQ_AUDIO_PLL1_OUT>; 443 442 assigned-clock-rates = <0>, <24576000>; 443 + clocks = <&clk IMX8MQ_CLK_SAI2_IPG>, <&clk IMX8MQ_CLK_DUMMY>, 444 + <&clk IMX8MQ_CLK_SAI2_ROOT>, <&clk IMX8MQ_CLK_DUMMY>, 445 + <&clk IMX8MQ_CLK_DUMMY>, <&clk IMX8MQ_AUDIO_PLL1_OUT>, 446 + <&clk IMX8MQ_AUDIO_PLL2_OUT>; 447 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k"; 444 448 status = "okay"; 445 449 }; 446 450
+1
arch/arm64/boot/dts/freescale/imx8mq.dtsi
··· 1890 1890 <0x31000000 0x2000>, /* GICC */ 1891 1891 <0x31010000 0x2000>, /* GICV */ 1892 1892 <0x31020000 0x2000>; /* GICH */ 1893 + #address-cells = <0>; 1893 1894 #interrupt-cells = <3>; 1894 1895 interrupt-controller; 1895 1896 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+2 -2
arch/arm64/boot/dts/freescale/imx8qm-mek.dts
··· 406 406 model = "wm8960-audio"; 407 407 audio-cpu = <&sai1>; 408 408 audio-codec = <&wm8960>; 409 - hp-det-gpio = <&lsio_gpio0 31 GPIO_ACTIVE_HIGH>; 410 - audio-routing = "Headphone Jack", "HP_L", 409 + hp-det-gpios = <&lsio_gpio0 31 GPIO_ACTIVE_HIGH>; 410 + audio-routing = "Headphone Jack", "HP_L", 411 411 "Headphone Jack", "HP_R", 412 412 "Ext Spk", "SPK_LP", 413 413 "Ext Spk", "SPK_LN",
+8 -8
arch/arm64/boot/dts/freescale/imx8qm-ss-hsio.dtsi
··· 30 30 clock-names = "dbi", "mstr", "slv"; 31 31 bus-range = <0x00 0xff>; 32 32 device_type = "pci"; 33 - interrupt-map = <0 0 0 1 &gic 0 73 4>, 34 - <0 0 0 2 &gic 0 74 4>, 35 - <0 0 0 3 &gic 0 75 4>, 36 - <0 0 0 4 &gic 0 76 4>; 33 + interrupt-map = <0 0 0 1 &gic GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, 34 + <0 0 0 2 &gic GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 35 + <0 0 0 3 &gic GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, 36 + <0 0 0 4 &gic GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 37 37 interrupt-map-mask = <0 0 0 0x7>; 38 38 num-lanes = <1>; 39 39 num-viewport = <4>; ··· 80 80 clock-names = "dbi", "mstr", "slv"; 81 81 bus-range = <0x00 0xff>; 82 82 device_type = "pci"; 83 - interrupt-map = <0 0 0 1 &gic 0 105 4>, 84 - <0 0 0 2 &gic 0 106 4>, 85 - <0 0 0 3 &gic 0 107 4>, 86 - <0 0 0 4 &gic 0 108 4>; 83 + interrupt-map = <0 0 0 1 &gic GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, 84 + <0 0 0 2 &gic GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 85 + <0 0 0 3 &gic GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 86 + <0 0 0 4 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 87 87 interrupt-map-mask = <0 0 0 0x7>; 88 88 num-lanes = <1>; 89 89 num-viewport = <4>;
+1
arch/arm64/boot/dts/freescale/imx8qm.dtsi
··· 245 245 <0x0 0x52000000 0 0x2000>, /* GICC */ 246 246 <0x0 0x52010000 0 0x1000>, /* GICH */ 247 247 <0x0 0x52020000 0 0x20000>; /* GICV */ 248 + #address-cells = <0>; 248 249 #interrupt-cells = <3>; 249 250 interrupt-controller; 250 251 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+1 -1
arch/arm64/boot/dts/freescale/imx8qxp-mek.dts
··· 333 333 model = "wm8960-audio"; 334 334 audio-cpu = <&sai1>; 335 335 audio-codec = <&wm8960>; 336 - hp-det-gpio = <&lsio_gpio1 0 GPIO_ACTIVE_HIGH>; 336 + hp-det-gpios = <&lsio_gpio1 0 GPIO_ACTIVE_HIGH>; 337 337 audio-routing = "Headphone Jack", "HP_L", 338 338 "Headphone Jack", "HP_R", 339 339 "Ext Spk", "SPK_LP",
+1
arch/arm64/boot/dts/freescale/imx8qxp.dtsi
··· 159 159 compatible = "arm,gic-v3"; 160 160 reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */ 161 161 <0x0 0x51b00000 0 0xc0000>; /* GICR (RD_base + SGI_base) */ 162 + #address-cells = <0>; 162 163 #interrupt-cells = <3>; 163 164 interrupt-controller; 164 165 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+69
arch/arm64/boot/dts/freescale/imx8ulp-9x9-evk.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 NXP 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx8ulp-evk.dts" 9 + 10 + / { 11 + model = "NXP i.MX8ULP EVK9"; 12 + compatible = "fsl,imx8ulp-9x9-evk", "fsl,imx8ulp"; 13 + }; 14 + 15 + &btcpu { 16 + sound-dai = <&sai6>; 17 + }; 18 + 19 + &iomuxc1 { 20 + pinctrl_sai6: sai6grp { 21 + fsl,pins = < 22 + MX8ULP_PAD_PTE10__I2S6_TX_BCLK 0x43 23 + MX8ULP_PAD_PTE11__I2S6_TX_FS 0x43 24 + MX8ULP_PAD_PTE14__I2S6_TXD2 0x43 25 + MX8ULP_PAD_PTE6__I2S6_RXD0 0x43 26 + >; 27 + }; 28 + }; 29 + 30 + &pinctrl_enet { 31 + fsl,pins = < 32 + MX8ULP_PAD_PTF9__ENET0_MDC 0x43 33 + MX8ULP_PAD_PTF8__ENET0_MDIO 0x43 34 + MX8ULP_PAD_PTF5__ENET0_RXER 0x43 35 + MX8ULP_PAD_PTF6__ENET0_CRS_DV 0x43 36 + MX8ULP_PAD_PTF1__ENET0_RXD0 0x43 37 + MX8ULP_PAD_PTF0__ENET0_RXD1 0x43 38 + MX8ULP_PAD_PTF4__ENET0_TXEN 0x43 39 + MX8ULP_PAD_PTF3__ENET0_TXD0 0x43 40 + MX8ULP_PAD_PTF2__ENET0_TXD1 0x43 41 + MX8ULP_PAD_PTF7__ENET0_REFCLK 0x43 42 + MX8ULP_PAD_PTF10__ENET0_1588_CLKIN 0x43 43 + >; 44 + }; 45 + 46 + &pinctrl_usb1 { 47 + fsl,pins = < 48 + MX8ULP_PAD_PTE16__USB0_ID 0x10003 49 + MX8ULP_PAD_PTE18__USB0_OC 0x10003 50 + >; 51 + }; 52 + 53 + &pinctrl_usb2 { 54 + fsl,pins = < 55 + MX8ULP_PAD_PTD23__USB1_ID 0x10003 56 + MX8ULP_PAD_PTE20__USB1_OC 0x10003 57 + >; 58 + }; 59 + 60 + &sai6 { 61 + pinctrl-names = "default", "sleep"; 62 + pinctrl-0 = <&pinctrl_sai6>; 63 + pinctrl-1 = <&pinctrl_sai6>; 64 + assigned-clocks = <&cgc1 IMX8ULP_CLK_SPLL3_PFD1_DIV1>, <&cgc2 IMX8ULP_CLK_SAI6_SEL>; 65 + assigned-clock-parents = <0>, <&cgc1 IMX8ULP_CLK_SPLL3_PFD1_DIV1>; 66 + assigned-clock-rates = <12288000>; 67 + fsl,dataline = <1 0x01 0x04>; 68 + status = "okay"; 69 + };
+2 -2
arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
··· 462 462 463 463 /* VPU Mailboxes */ 464 464 &mu_m0 { 465 - status="okay"; 465 + status = "okay"; 466 466 }; 467 467 468 468 &mu1_m0 { 469 - status="okay"; 469 + status = "okay"; 470 470 }; 471 471 472 472 /* TODO MIPI CSI */
+674
arch/arm64/boot/dts/freescale/imx91-11x11-evk.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 NXP 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include <dt-bindings/usb/pd.h> 9 + #include "imx91.dtsi" 10 + 11 + / { 12 + compatible = "fsl,imx91-11x11-evk", "fsl,imx91"; 13 + model = "NXP i.MX91 11X11 EVK board"; 14 + 15 + aliases { 16 + ethernet0 = &fec; 17 + ethernet1 = &eqos; 18 + gpio0 = &gpio1; 19 + gpio1 = &gpio2; 20 + gpio2 = &gpio3; 21 + i2c0 = &lpi2c1; 22 + i2c1 = &lpi2c2; 23 + i2c2 = &lpi2c3; 24 + mmc0 = &usdhc1; 25 + mmc1 = &usdhc2; 26 + rtc0 = &bbnsm_rtc; 27 + serial0 = &lpuart1; 28 + serial1 = &lpuart2; 29 + serial2 = &lpuart3; 30 + serial3 = &lpuart4; 31 + serial4 = &lpuart5; 32 + }; 33 + 34 + chosen { 35 + stdout-path = &lpuart1; 36 + }; 37 + 38 + reg_vref_1v8: regulator-adc-vref { 39 + compatible = "regulator-fixed"; 40 + regulator-max-microvolt = <1800000>; 41 + regulator-min-microvolt = <1800000>; 42 + regulator-name = "vref_1v8"; 43 + }; 44 + 45 + reg_audio_pwr: regulator-audio-pwr { 46 + compatible = "regulator-fixed"; 47 + regulator-always-on; 48 + regulator-max-microvolt = <3300000>; 49 + regulator-min-microvolt = <3300000>; 50 + regulator-name = "audio-pwr"; 51 + gpio = <&adp5585 1 GPIO_ACTIVE_HIGH>; 52 + enable-active-high; 53 + }; 54 + 55 + reg_usdhc2_vmmc: regulator-usdhc2 { 56 + compatible = "regulator-fixed"; 57 + off-on-delay-us = <12000>; 58 + pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; 59 + pinctrl-names = "default"; 60 + regulator-max-microvolt = <3300000>; 61 + regulator-min-microvolt = <3300000>; 62 + regulator-name = "VSD_3V3"; 63 + gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>; 64 + enable-active-high; 65 + }; 66 + 67 + reserved-memory { 68 + ranges; 69 + #address-cells = <2>; 70 + #size-cells = <2>; 71 + 72 + linux,cma { 73 + compatible = "shared-dma-pool"; 74 + alloc-ranges = <0 0x80000000 0 0x40000000>; 75 + reusable; 76 + size = <0 0x10000000>; 77 + linux,cma-default; 78 + }; 79 + }; 80 + }; 81 + 82 + &adc1 { 83 + vref-supply = <&reg_vref_1v8>; 84 + status = "okay"; 85 + }; 86 + 87 + &eqos { 88 + phy-handle = <&ethphy1>; 89 + phy-mode = "rgmii-id"; 90 + pinctrl-0 = <&pinctrl_eqos>; 91 + pinctrl-1 = <&pinctrl_eqos_sleep>; 92 + pinctrl-names = "default", "sleep"; 93 + status = "okay"; 94 + 95 + mdio { 96 + compatible = "snps,dwmac-mdio"; 97 + #address-cells = <1>; 98 + #size-cells = <0>; 99 + clock-frequency = <5000000>; 100 + 101 + ethphy1: ethernet-phy@1 { 102 + reg = <1>; 103 + realtek,clkout-disable; 104 + }; 105 + }; 106 + }; 107 + 108 + &fec { 109 + phy-handle = <&ethphy2>; 110 + phy-mode = "rgmii-id"; 111 + pinctrl-0 = <&pinctrl_fec>; 112 + pinctrl-1 = <&pinctrl_fec_sleep>; 113 + pinctrl-names = "default", "sleep"; 114 + fsl,magic-packet; 115 + status = "okay"; 116 + 117 + mdio { 118 + #address-cells = <1>; 119 + #size-cells = <0>; 120 + clock-frequency = <5000000>; 121 + 122 + ethphy2: ethernet-phy@2 { 123 + reg = <2>; 124 + realtek,clkout-disable; 125 + }; 126 + }; 127 + }; 128 + 129 + &lpi2c1 { 130 + clock-frequency = <400000>; 131 + pinctrl-0 = <&pinctrl_lpi2c1>; 132 + pinctrl-names = "default"; 133 + status = "okay"; 134 + 135 + audio_codec: wm8962@1a { 136 + compatible = "wlf,wm8962"; 137 + reg = <0x1a>; 138 + clocks = <&clk IMX93_CLK_SAI3_GATE>; 139 + AVDD-supply = <&reg_audio_pwr>; 140 + CPVDD-supply = <&reg_audio_pwr>; 141 + DBVDD-supply = <&reg_audio_pwr>; 142 + DCVDD-supply = <&reg_audio_pwr>; 143 + MICVDD-supply = <&reg_audio_pwr>; 144 + PLLVDD-supply = <&reg_audio_pwr>; 145 + SPKVDD1-supply = <&reg_audio_pwr>; 146 + SPKVDD2-supply = <&reg_audio_pwr>; 147 + gpio-cfg = < 148 + 0x0000 /* 0:Default */ 149 + 0x0000 /* 1:Default */ 150 + 0x0000 /* 2:FN_DMICCLK */ 151 + 0x0000 /* 3:Default */ 152 + 0x0000 /* 4:FN_DMICCDAT */ 153 + 0x0000 /* 5:Default */ 154 + >; 155 + }; 156 + 157 + inertial-meter@6a { 158 + compatible = "st,lsm6dso"; 159 + reg = <0x6a>; 160 + }; 161 + }; 162 + 163 + &lpi2c2 { 164 + #address-cells = <1>; 165 + #size-cells = <0>; 166 + clock-frequency = <400000>; 167 + pinctrl-0 = <&pinctrl_lpi2c2>; 168 + pinctrl-names = "default"; 169 + status = "okay"; 170 + 171 + pcal6524: gpio@22 { 172 + compatible = "nxp,pcal6524"; 173 + reg = <0x22>; 174 + #interrupt-cells = <2>; 175 + interrupt-controller; 176 + interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 177 + #gpio-cells = <2>; 178 + gpio-controller; 179 + interrupt-parent = <&gpio3>; 180 + pinctrl-0 = <&pinctrl_pcal6524>; 181 + pinctrl-names = "default"; 182 + }; 183 + 184 + pmic@25 { 185 + compatible = "nxp,pca9451a"; 186 + reg = <0x25>; 187 + interrupts = <11 IRQ_TYPE_EDGE_FALLING>; 188 + interrupt-parent = <&pcal6524>; 189 + 190 + regulators { 191 + buck1: BUCK1 { 192 + regulator-always-on; 193 + regulator-boot-on; 194 + regulator-max-microvolt = <2237500>; 195 + regulator-min-microvolt = <650000>; 196 + regulator-name = "BUCK1"; 197 + regulator-ramp-delay = <3125>; 198 + }; 199 + 200 + buck2: BUCK2 { 201 + regulator-always-on; 202 + regulator-boot-on; 203 + regulator-max-microvolt = <2187500>; 204 + regulator-min-microvolt = <600000>; 205 + regulator-name = "BUCK2"; 206 + regulator-ramp-delay = <3125>; 207 + }; 208 + 209 + buck4: BUCK4 { 210 + regulator-always-on; 211 + regulator-boot-on; 212 + regulator-max-microvolt = <3400000>; 213 + regulator-min-microvolt = <600000>; 214 + regulator-name = "BUCK4"; 215 + }; 216 + 217 + buck5: BUCK5 { 218 + regulator-always-on; 219 + regulator-boot-on; 220 + regulator-max-microvolt = <3400000>; 221 + regulator-min-microvolt = <600000>; 222 + regulator-name = "BUCK5"; 223 + }; 224 + 225 + buck6: BUCK6 { 226 + regulator-always-on; 227 + regulator-boot-on; 228 + regulator-max-microvolt = <3400000>; 229 + regulator-min-microvolt = <600000>; 230 + regulator-name = "BUCK6"; 231 + }; 232 + 233 + ldo1: LDO1 { 234 + regulator-always-on; 235 + regulator-boot-on; 236 + regulator-max-microvolt = <3300000>; 237 + regulator-min-microvolt = <1600000>; 238 + regulator-name = "LDO1"; 239 + }; 240 + 241 + ldo4: LDO4 { 242 + regulator-always-on; 243 + regulator-boot-on; 244 + regulator-max-microvolt = <3300000>; 245 + regulator-min-microvolt = <800000>; 246 + regulator-name = "LDO4"; 247 + }; 248 + 249 + ldo5: LDO5 { 250 + regulator-always-on; 251 + regulator-boot-on; 252 + regulator-max-microvolt = <3300000>; 253 + regulator-min-microvolt = <1800000>; 254 + regulator-name = "LDO5"; 255 + }; 256 + }; 257 + }; 258 + 259 + adp5585: io-expander@34 { 260 + compatible = "adi,adp5585-00", "adi,adp5585"; 261 + reg = <0x34>; 262 + #gpio-cells = <2>; 263 + gpio-controller; 264 + #pwm-cells = <3>; 265 + gpio-reserved-ranges = <5 1>; 266 + 267 + exp-sel-hog { 268 + gpio-hog; 269 + gpios = <4 GPIO_ACTIVE_HIGH>; 270 + output-low; 271 + }; 272 + }; 273 + }; 274 + 275 + &lpi2c3 { 276 + #address-cells = <1>; 277 + #size-cells = <0>; 278 + clock-frequency = <400000>; 279 + pinctrl-0 = <&pinctrl_lpi2c3>; 280 + pinctrl-names = "default"; 281 + status = "okay"; 282 + 283 + ptn5110: tcpc@50 { 284 + compatible = "nxp,ptn5110", "tcpci"; 285 + reg = <0x50>; 286 + interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 287 + interrupt-parent = <&gpio3>; 288 + 289 + typec1_con: connector { 290 + compatible = "usb-c-connector"; 291 + data-role = "dual"; 292 + label = "USB-C"; 293 + op-sink-microwatt = <15000000>; 294 + power-role = "dual"; 295 + self-powered; 296 + sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM) 297 + PDO_VAR(5000, 20000, 3000)>; 298 + source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>; 299 + try-power-role = "sink"; 300 + 301 + ports { 302 + #address-cells = <1>; 303 + #size-cells = <0>; 304 + 305 + port@0 { 306 + reg = <0>; 307 + 308 + typec1_dr_sw: endpoint { 309 + remote-endpoint = <&usb1_drd_sw>; 310 + }; 311 + }; 312 + }; 313 + }; 314 + }; 315 + 316 + ptn5110_2: tcpc@51 { 317 + compatible = "nxp,ptn5110", "tcpci"; 318 + reg = <0x51>; 319 + interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 320 + interrupt-parent = <&gpio3>; 321 + status = "okay"; 322 + 323 + typec2_con: connector { 324 + compatible = "usb-c-connector"; 325 + data-role = "dual"; 326 + label = "USB-C"; 327 + op-sink-microwatt = <15000000>; 328 + power-role = "dual"; 329 + self-powered; 330 + sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM) 331 + PDO_VAR(5000, 20000, 3000)>; 332 + source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>; 333 + try-power-role = "sink"; 334 + 335 + ports { 336 + #address-cells = <1>; 337 + #size-cells = <0>; 338 + 339 + port@0 { 340 + reg = <0>; 341 + 342 + typec2_dr_sw: endpoint { 343 + remote-endpoint = <&usb2_drd_sw>; 344 + }; 345 + }; 346 + }; 347 + }; 348 + }; 349 + 350 + pcf2131: rtc@53 { 351 + compatible = "nxp,pcf2131"; 352 + reg = <0x53>; 353 + interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 354 + interrupt-parent = <&pcal6524>; 355 + status = "okay"; 356 + }; 357 + }; 358 + 359 + &lpuart1 { 360 + pinctrl-0 = <&pinctrl_uart1>; 361 + pinctrl-names = "default"; 362 + status = "okay"; 363 + }; 364 + 365 + &lpuart5 { 366 + pinctrl-0 = <&pinctrl_uart5>; 367 + pinctrl-names = "default"; 368 + status = "okay"; 369 + 370 + bluetooth { 371 + compatible = "nxp,88w8987-bt"; 372 + }; 373 + }; 374 + 375 + &usbotg1 { 376 + adp-disable; 377 + disable-over-current; 378 + dr_mode = "otg"; 379 + hnp-disable; 380 + srp-disable; 381 + usb-role-switch; 382 + samsung,picophy-dc-vol-level-adjust = <7>; 383 + samsung,picophy-pre-emp-curr-control = <3>; 384 + status = "okay"; 385 + 386 + port { 387 + usb1_drd_sw: endpoint { 388 + remote-endpoint = <&typec1_dr_sw>; 389 + }; 390 + }; 391 + }; 392 + 393 + &usbotg2 { 394 + adp-disable; 395 + disable-over-current; 396 + dr_mode = "otg"; 397 + hnp-disable; 398 + srp-disable; 399 + usb-role-switch; 400 + samsung,picophy-dc-vol-level-adjust = <7>; 401 + samsung,picophy-pre-emp-curr-control = <3>; 402 + status = "okay"; 403 + 404 + port { 405 + usb2_drd_sw: endpoint { 406 + remote-endpoint = <&typec2_dr_sw>; 407 + }; 408 + }; 409 + }; 410 + 411 + &usdhc1 { 412 + bus-width = <8>; 413 + non-removable; 414 + pinctrl-0 = <&pinctrl_usdhc1>; 415 + pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 416 + pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 417 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 418 + status = "okay"; 419 + }; 420 + 421 + &usdhc2 { 422 + bus-width = <4>; 423 + cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>; 424 + no-mmc; 425 + no-sdio; 426 + pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>; 427 + pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>; 428 + pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>; 429 + pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_gpio_sleep>; 430 + pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep"; 431 + vmmc-supply = <&reg_usdhc2_vmmc>; 432 + status = "okay"; 433 + }; 434 + 435 + &wdog3 { 436 + fsl,ext-reset-output; 437 + status = "okay"; 438 + }; 439 + 440 + &iomuxc { 441 + pinctrl_eqos: eqosgrp { 442 + fsl,pins = < 443 + MX91_PAD_ENET1_MDC__ENET1_MDC 0x57e 444 + MX91_PAD_ENET1_MDIO__ENET_QOS_MDIO 0x57e 445 + MX91_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0 0x57e 446 + MX91_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1 0x57e 447 + MX91_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2 0x57e 448 + MX91_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3 0x57e 449 + MX91_PAD_ENET1_RXC__ENET_QOS_RGMII_RXC 0x5fe 450 + MX91_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x57e 451 + MX91_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0 0x57e 452 + MX91_PAD_ENET1_TD1__ENET1_RGMII_TD1 0x57e 453 + MX91_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2 0x57e 454 + MX91_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3 0x57e 455 + MX91_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x5fe 456 + MX91_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x57e 457 + >; 458 + }; 459 + 460 + pinctrl_eqos_sleep: eqossleepgrp { 461 + fsl,pins = < 462 + MX91_PAD_ENET1_MDC__GPIO4_IO0 0x31e 463 + MX91_PAD_ENET1_MDIO__GPIO4_IO1 0x31e 464 + MX91_PAD_ENET1_RD0__GPIO4_IO10 0x31e 465 + MX91_PAD_ENET1_RD1__GPIO4_IO11 0x31e 466 + MX91_PAD_ENET1_RD2__GPIO4_IO12 0x31e 467 + MX91_PAD_ENET1_RD3__GPIO4_IO13 0x31e 468 + MX91_PAD_ENET1_RXC__GPIO4_IO9 0x31e 469 + MX91_PAD_ENET1_RX_CTL__GPIO4_IO8 0x31e 470 + MX91_PAD_ENET1_TD0__GPIO4_IO5 0x31e 471 + MX91_PAD_ENET1_TD1__GPIO4_IO4 0x31e 472 + MX91_PAD_ENET1_TD2__GPIO4_IO3 0x31e 473 + MX91_PAD_ENET1_TD3__GPIO4_IO2 0x31e 474 + MX91_PAD_ENET1_TXC__GPIO4_IO7 0x31e 475 + MX91_PAD_ENET1_TX_CTL__GPIO4_IO6 0x31e 476 + >; 477 + }; 478 + 479 + pinctrl_fec: fecgrp { 480 + fsl,pins = < 481 + MX91_PAD_ENET2_MDC__ENET2_MDC 0x57e 482 + MX91_PAD_ENET2_MDIO__ENET2_MDIO 0x57e 483 + MX91_PAD_ENET2_RD0__ENET2_RGMII_RD0 0x57e 484 + MX91_PAD_ENET2_RD1__ENET2_RGMII_RD1 0x57e 485 + MX91_PAD_ENET2_RD2__ENET2_RGMII_RD2 0x57e 486 + MX91_PAD_ENET2_RD3__ENET2_RGMII_RD3 0x57e 487 + MX91_PAD_ENET2_RXC__ENET2_RGMII_RXC 0x5fe 488 + MX91_PAD_ENET2_RX_CTL__ENET2_RGMII_RX_CTL 0x57e 489 + MX91_PAD_ENET2_TD0__ENET2_RGMII_TD0 0x57e 490 + MX91_PAD_ENET2_TD1__ENET2_RGMII_TD1 0x57e 491 + MX91_PAD_ENET2_TD2__ENET2_RGMII_TD2 0x57e 492 + MX91_PAD_ENET2_TD3__ENET2_RGMII_TD3 0x57e 493 + MX91_PAD_ENET2_TXC__ENET2_RGMII_TXC 0x5fe 494 + MX91_PAD_ENET2_TX_CTL__ENET2_RGMII_TX_CTL 0x57e 495 + >; 496 + }; 497 + 498 + pinctrl_fec_sleep: fecsleepgrp { 499 + fsl,pins = < 500 + MX91_PAD_ENET2_MDC__GPIO4_IO14 0x51e 501 + MX91_PAD_ENET2_MDIO__GPIO4_IO15 0x51e 502 + MX91_PAD_ENET2_RD0__GPIO4_IO24 0x51e 503 + MX91_PAD_ENET2_RD1__GPIO4_IO25 0x51e 504 + MX91_PAD_ENET2_RD2__GPIO4_IO26 0x51e 505 + MX91_PAD_ENET2_RD3__GPIO4_IO27 0x51e 506 + MX91_PAD_ENET2_RXC__GPIO4_IO23 0x51e 507 + MX91_PAD_ENET2_RX_CTL__GPIO4_IO22 0x51e 508 + MX91_PAD_ENET2_TD0__GPIO4_IO19 0x51e 509 + MX91_PAD_ENET2_TD1__GPIO4_IO18 0x51e 510 + MX91_PAD_ENET2_TD2__GPIO4_IO17 0x51e 511 + MX91_PAD_ENET2_TD3__GPIO4_IO16 0x51e 512 + MX91_PAD_ENET2_TXC__GPIO4_IO21 0x51e 513 + MX91_PAD_ENET2_TX_CTL__GPIO4_IO20 0x51e 514 + >; 515 + }; 516 + 517 + pinctrl_lpi2c1: lpi2c1grp { 518 + fsl,pins = < 519 + MX91_PAD_I2C1_SCL__LPI2C1_SCL 0x40000b9e 520 + MX91_PAD_I2C1_SDA__LPI2C1_SDA 0x40000b9e 521 + >; 522 + }; 523 + 524 + pinctrl_lpi2c2: lpi2c2grp { 525 + fsl,pins = < 526 + MX91_PAD_I2C2_SCL__LPI2C2_SCL 0x40000b9e 527 + MX91_PAD_I2C2_SDA__LPI2C2_SDA 0x40000b9e 528 + >; 529 + }; 530 + 531 + pinctrl_lpi2c3: lpi2c3grp { 532 + fsl,pins = < 533 + MX91_PAD_GPIO_IO28__LPI2C3_SDA 0x40000b9e 534 + MX91_PAD_GPIO_IO29__LPI2C3_SCL 0x40000b9e 535 + >; 536 + }; 537 + 538 + pinctrl_pcal6524: pcal6524grp { 539 + fsl,pins = < 540 + MX91_PAD_CCM_CLKO2__GPIO3_IO27 0x31e 541 + >; 542 + }; 543 + 544 + pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { 545 + fsl,pins = < 546 + MX91_PAD_SD2_RESET_B__GPIO3_IO7 0x31e 547 + >; 548 + }; 549 + 550 + pinctrl_uart1: uart1grp { 551 + fsl,pins = < 552 + MX91_PAD_UART1_RXD__LPUART1_RX 0x31e 553 + MX91_PAD_UART1_TXD__LPUART1_TX 0x31e 554 + >; 555 + }; 556 + 557 + pinctrl_uart5: uart5grp { 558 + fsl,pins = < 559 + MX91_PAD_DAP_TDO_TRACESWO__LPUART5_TX 0x31e 560 + MX91_PAD_DAP_TDI__LPUART5_RX 0x31e 561 + MX91_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B 0x31e 562 + MX91_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B 0x31e 563 + >; 564 + }; 565 + 566 + pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 567 + fsl,pins = < 568 + MX91_PAD_SD1_CLK__USDHC1_CLK 0x158e 569 + MX91_PAD_SD1_CMD__USDHC1_CMD 0x138e 570 + MX91_PAD_SD1_DATA0__USDHC1_DATA0 0x138e 571 + MX91_PAD_SD1_DATA1__USDHC1_DATA1 0x138e 572 + MX91_PAD_SD1_DATA2__USDHC1_DATA2 0x138e 573 + MX91_PAD_SD1_DATA3__USDHC1_DATA3 0x138e 574 + MX91_PAD_SD1_DATA4__USDHC1_DATA4 0x138e 575 + MX91_PAD_SD1_DATA5__USDHC1_DATA5 0x138e 576 + MX91_PAD_SD1_DATA6__USDHC1_DATA6 0x138e 577 + MX91_PAD_SD1_DATA7__USDHC1_DATA7 0x138e 578 + MX91_PAD_SD1_STROBE__USDHC1_STROBE 0x158e 579 + >; 580 + }; 581 + 582 + pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 583 + fsl,pins = < 584 + MX91_PAD_SD1_CLK__USDHC1_CLK 0x15fe 585 + MX91_PAD_SD1_CMD__USDHC1_CMD 0x13fe 586 + MX91_PAD_SD1_DATA0__USDHC1_DATA0 0x13fe 587 + MX91_PAD_SD1_DATA1__USDHC1_DATA1 0x13fe 588 + MX91_PAD_SD1_DATA2__USDHC1_DATA2 0x13fe 589 + MX91_PAD_SD1_DATA3__USDHC1_DATA3 0x13fe 590 + MX91_PAD_SD1_DATA4__USDHC1_DATA4 0x13fe 591 + MX91_PAD_SD1_DATA5__USDHC1_DATA5 0x13fe 592 + MX91_PAD_SD1_DATA6__USDHC1_DATA6 0x13fe 593 + MX91_PAD_SD1_DATA7__USDHC1_DATA7 0x13fe 594 + MX91_PAD_SD1_STROBE__USDHC1_STROBE 0x15fe 595 + >; 596 + }; 597 + 598 + pinctrl_usdhc1: usdhc1grp { 599 + fsl,pins = < 600 + MX91_PAD_SD1_CLK__USDHC1_CLK 0x1582 601 + MX91_PAD_SD1_CMD__USDHC1_CMD 0x1382 602 + MX91_PAD_SD1_DATA0__USDHC1_DATA0 0x1382 603 + MX91_PAD_SD1_DATA1__USDHC1_DATA1 0x1382 604 + MX91_PAD_SD1_DATA2__USDHC1_DATA2 0x1382 605 + MX91_PAD_SD1_DATA3__USDHC1_DATA3 0x1382 606 + MX91_PAD_SD1_DATA4__USDHC1_DATA4 0x1382 607 + MX91_PAD_SD1_DATA5__USDHC1_DATA5 0x1382 608 + MX91_PAD_SD1_DATA6__USDHC1_DATA6 0x1382 609 + MX91_PAD_SD1_DATA7__USDHC1_DATA7 0x1382 610 + MX91_PAD_SD1_STROBE__USDHC1_STROBE 0x1582 611 + >; 612 + }; 613 + 614 + pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp { 615 + fsl,pins = < 616 + MX91_PAD_SD2_CLK__USDHC2_CLK 0x158e 617 + MX91_PAD_SD2_CMD__USDHC2_CMD 0x138e 618 + MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x138e 619 + MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x138e 620 + MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x138e 621 + MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x138e 622 + MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 623 + >; 624 + }; 625 + 626 + pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 627 + fsl,pins = < 628 + MX91_PAD_SD2_CLK__USDHC2_CLK 0x15fe 629 + MX91_PAD_SD2_CMD__USDHC2_CMD 0x13fe 630 + MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x13fe 631 + MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x13fe 632 + MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x13fe 633 + MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x13fe 634 + MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 635 + >; 636 + }; 637 + 638 + pinctrl_usdhc2_gpio: usdhc2gpiogrp { 639 + fsl,pins = < 640 + MX91_PAD_SD2_CD_B__GPIO3_IO0 0x31e 641 + >; 642 + }; 643 + 644 + pinctrl_usdhc2_gpio_sleep: usdhc2gpiosleepgrp { 645 + fsl,pins = < 646 + MX91_PAD_SD2_CD_B__GPIO3_IO0 0x51e 647 + >; 648 + }; 649 + 650 + pinctrl_usdhc2: usdhc2grp { 651 + fsl,pins = < 652 + MX91_PAD_SD2_CLK__USDHC2_CLK 0x1582 653 + MX91_PAD_SD2_CMD__USDHC2_CMD 0x1382 654 + MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x1382 655 + MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x1382 656 + MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x1382 657 + MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x1382 658 + MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 659 + >; 660 + }; 661 + 662 + pinctrl_usdhc2_sleep: usdhc2sleepgrp { 663 + fsl,pins = < 664 + MX91_PAD_SD2_CLK__GPIO3_IO1 0x51e 665 + MX91_PAD_SD2_CMD__GPIO3_IO2 0x51e 666 + MX91_PAD_SD2_DATA0__GPIO3_IO3 0x51e 667 + MX91_PAD_SD2_DATA1__GPIO3_IO4 0x51e 668 + MX91_PAD_SD2_DATA2__GPIO3_IO5 0x51e 669 + MX91_PAD_SD2_DATA3__GPIO3_IO6 0x51e 670 + MX91_PAD_SD2_VSELECT__GPIO3_IO19 0x51e 671 + >; 672 + }; 673 + 674 + };
+770
arch/arm64/boot/dts/freescale/imx91-pinfunc.h
··· 1 + /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ 2 + /* 3 + * Copyright 2025 NXP 4 + */ 5 + 6 + #ifndef __DTS_IMX91_PINFUNC_H 7 + #define __DTS_IMX91_PINFUNC_H 8 + 9 + /* 10 + * The pin function ID is a tuple of 11 + * <mux_reg conf_reg input_reg mux_mode input_val> 12 + */ 13 + #define MX91_PAD_DAP_TDI__JTAG_MUX_TDI 0x0000 0x01b0 0x03d8 0x00 0x00 14 + #define MX91_PAD_DAP_TDI__MQS2_LEFT 0x0000 0x01b0 0x0000 0x01 0x00 15 + #define MX91_PAD_DAP_TDI__CAN2_TX 0x0000 0x01b0 0x0000 0x03 0x00 16 + #define MX91_PAD_DAP_TDI__FLEXIO2_FLEXIO30 0x0000 0x01b0 0x0000 0x04 0x00 17 + #define MX91_PAD_DAP_TDI__GPIO3_IO28 0x0000 0x01b0 0x0000 0x05 0x00 18 + #define MX91_PAD_DAP_TDI__LPUART5_RX 0x0000 0x01b0 0x0488 0x06 0x00 19 + 20 + #define MX91_PAD_DAP_TMS_SWDIO__JTAG_MUX_TMS 0x0004 0x01b4 0x03dc 0x00 0x00 21 + #define MX91_PAD_DAP_TMS_SWDIO__FLEXIO2_FLEXIO31 0x0004 0x01b4 0x0000 0x04 0x00 22 + #define MX91_PAD_DAP_TMS_SWDIO__GPIO3_IO29 0x0004 0x01b4 0x0000 0x05 0x00 23 + #define MX91_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B 0x0004 0x01b4 0x0000 0x06 0x00 24 + 25 + #define MX91_PAD_DAP_TCLK_SWCLK__JTAG_MUX_TCK 0x0008 0x01b8 0x03d4 0x00 0x00 26 + #define MX91_PAD_DAP_TCLK_SWCLK__FLEXIO1_FLEXIO30 0x0008 0x01b8 0x0000 0x04 0x00 27 + #define MX91_PAD_DAP_TCLK_SWCLK__GPIO3_IO30 0x0008 0x01b8 0x0000 0x05 0x00 28 + #define MX91_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B 0x0008 0x01b8 0x0484 0x06 0x00 29 + 30 + #define MX91_PAD_DAP_TDO_TRACESWO__JTAG_MUX_TDO 0x000c 0x01bc 0x0000 0x00 0x00 31 + #define MX91_PAD_DAP_TDO_TRACESWO__MQS2_RIGHT 0x000c 0x01bc 0x0000 0x01 0x00 32 + #define MX91_PAD_DAP_TDO_TRACESWO__CAN2_RX 0x000c 0x01bc 0x0364 0x03 0x00 33 + #define MX91_PAD_DAP_TDO_TRACESWO__FLEXIO1_FLEXIO31 0x000c 0x01bc 0x0000 0x04 0x00 34 + #define MX91_PAD_DAP_TDO_TRACESWO__GPIO3_IO31 0x000c 0x01bc 0x0000 0x05 0x00 35 + #define MX91_PAD_DAP_TDO_TRACESWO__LPUART5_TX 0x000c 0x01bc 0x048c 0x06 0x00 36 + 37 + #define MX91_PAD_GPIO_IO00__GPIO2_IO0 0x0010 0x01c0 0x0000 0x00 0x00 38 + #define MX91_PAD_GPIO_IO00__LPI2C3_SDA 0x0010 0x01c0 0x03f4 0x01 0x00 39 + #define MX91_PAD_GPIO_IO00__MEDIAMIX_CAM_CLK 0x0010 0x01c0 0x04bc 0x02 0x00 40 + #define MX91_PAD_GPIO_IO00__MEDIAMIX_DISP_CLK 0x0010 0x01c0 0x0000 0x03 0x00 41 + #define MX91_PAD_GPIO_IO00__LPSPI6_PCS0 0x0010 0x01c0 0x0000 0x04 0x00 42 + #define MX91_PAD_GPIO_IO00__LPUART5_TX 0x0010 0x01c0 0x048c 0x05 0x01 43 + #define MX91_PAD_GPIO_IO00__LPI2C5_SDA 0x0010 0x01c0 0x0404 0x06 0x00 44 + #define MX91_PAD_GPIO_IO00__FLEXIO1_FLEXIO0 0x0010 0x01c0 0x036c 0x07 0x00 45 + 46 + #define MX91_PAD_GPIO_IO01__GPIO2_IO1 0x0014 0x01c4 0x0000 0x00 0x00 47 + #define MX91_PAD_GPIO_IO01__LPI2C3_SCL 0x0014 0x01c4 0x03f0 0x01 0x00 48 + #define MX91_PAD_GPIO_IO01__MEDIAMIX_CAM_DATA0 0x0014 0x01c4 0x0490 0x02 0x00 49 + #define MX91_PAD_GPIO_IO01__MEDIAMIX_DISP_DE 0x0014 0x01c4 0x0000 0x03 0x00 50 + #define MX91_PAD_GPIO_IO01__LPSPI6_SIN 0x0014 0x01c4 0x0000 0x04 0x00 51 + #define MX91_PAD_GPIO_IO01__LPUART5_RX 0x0014 0x01c4 0x0488 0x05 0x01 52 + #define MX91_PAD_GPIO_IO01__LPI2C5_SCL 0x0014 0x01c4 0x0400 0x06 0x00 53 + #define MX91_PAD_GPIO_IO01__FLEXIO1_FLEXIO1 0x0014 0x01c4 0x0370 0x07 0x00 54 + 55 + #define MX91_PAD_GPIO_IO02__GPIO2_IO2 0x0018 0x01c8 0x0000 0x00 0x00 56 + #define MX91_PAD_GPIO_IO02__LPI2C4_SDA 0x0018 0x01c8 0x03fc 0x01 0x00 57 + #define MX91_PAD_GPIO_IO02__MEDIAMIX_CAM_VSYNC 0x0018 0x01c8 0x04c0 0x02 0x00 58 + #define MX91_PAD_GPIO_IO02__MEDIAMIX_DISP_VSYNC 0x0018 0x01c8 0x0000 0x03 0x00 59 + #define MX91_PAD_GPIO_IO02__LPSPI6_SOUT 0x0018 0x01c8 0x0000 0x04 0x00 60 + #define MX91_PAD_GPIO_IO02__LPUART5_CTS_B 0x0018 0x01c8 0x0484 0x05 0x01 61 + #define MX91_PAD_GPIO_IO02__LPI2C6_SDA 0x0018 0x01c8 0x040c 0x06 0x00 62 + #define MX91_PAD_GPIO_IO02__FLEXIO1_FLEXIO2 0x0018 0x01c8 0x0374 0x07 0x00 63 + 64 + #define MX91_PAD_GPIO_IO03__GPIO2_IO3 0x001c 0x01cc 0x0000 0x00 0x00 65 + #define MX91_PAD_GPIO_IO03__LPI2C4_SCL 0x001c 0x01cc 0x03f8 0x01 0x00 66 + #define MX91_PAD_GPIO_IO03__MEDIAMIX_CAM_HSYNC 0x001c 0x01cc 0x04b8 0x02 0x00 67 + #define MX91_PAD_GPIO_IO03__MEDIAMIX_DISP_HSYNC 0x001c 0x01cc 0x0000 0x03 0x00 68 + #define MX91_PAD_GPIO_IO03__LPSPI6_SCK 0x001c 0x01cc 0x0000 0x04 0x00 69 + #define MX91_PAD_GPIO_IO03__LPUART5_RTS_B 0x001c 0x01cc 0x0000 0x05 0x00 70 + #define MX91_PAD_GPIO_IO03__LPI2C6_SCL 0x001c 0x01cc 0x0408 0x06 0x00 71 + #define MX91_PAD_GPIO_IO03__FLEXIO1_FLEXIO3 0x001c 0x01cc 0x0378 0x07 0x00 72 + 73 + #define MX91_PAD_GPIO_IO04__GPIO2_IO4 0x0020 0x01d0 0x0000 0x00 0x00 74 + #define MX91_PAD_GPIO_IO04__TPM3_CH0 0x0020 0x01d0 0x0000 0x01 0x00 75 + #define MX91_PAD_GPIO_IO04__PDM_CLK 0x0020 0x01d0 0x0000 0x02 0x00 76 + #define MX91_PAD_GPIO_IO04__MEDIAMIX_DISP_DATA0 0x0020 0x01d0 0x0000 0x03 0x00 77 + #define MX91_PAD_GPIO_IO04__LPSPI7_PCS0 0x0020 0x01d0 0x0000 0x04 0x00 78 + #define MX91_PAD_GPIO_IO04__LPUART6_TX 0x0020 0x01d0 0x0000 0x05 0x00 79 + #define MX91_PAD_GPIO_IO04__LPI2C6_SDA 0x0020 0x01d0 0x040c 0x06 0x01 80 + #define MX91_PAD_GPIO_IO04__FLEXIO1_FLEXIO4 0x0020 0x01d0 0x037c 0x07 0x00 81 + 82 + #define MX91_PAD_GPIO_IO05__GPIO2_IO5 0x0024 0x01d4 0x0000 0x00 0x00 83 + #define MX91_PAD_GPIO_IO05__TPM4_CH0 0x0024 0x01d4 0x0000 0x01 0x00 84 + #define MX91_PAD_GPIO_IO05__PDM_BIT_STREAM0 0x0024 0x01d4 0x04c4 0x02 0x00 85 + #define MX91_PAD_GPIO_IO05__MEDIAMIX_DISP_DATA1 0x0024 0x01d4 0x0000 0x03 0x00 86 + #define MX91_PAD_GPIO_IO05__LPSPI7_SIN 0x0024 0x01d4 0x0000 0x04 0x00 87 + #define MX91_PAD_GPIO_IO05__LPUART6_RX 0x0024 0x01d4 0x0000 0x05 0x00 88 + #define MX91_PAD_GPIO_IO05__LPI2C6_SCL 0x0024 0x01d4 0x0408 0x06 0x01 89 + #define MX91_PAD_GPIO_IO05__FLEXIO1_FLEXIO5 0x0024 0x01d4 0x0380 0x07 0x00 90 + 91 + #define MX91_PAD_GPIO_IO06__GPIO2_IO6 0x0028 0x01d8 0x0000 0x00 0x00 92 + #define MX91_PAD_GPIO_IO06__TPM5_CH0 0x0028 0x01d8 0x0000 0x01 0x00 93 + #define MX91_PAD_GPIO_IO06__PDM_BIT_STREAM1 0x0028 0x01d8 0x04c8 0x02 0x00 94 + #define MX91_PAD_GPIO_IO06__MEDIAMIX_DISP_DATA2 0x0028 0x01d8 0x0000 0x03 0x00 95 + #define MX91_PAD_GPIO_IO06__LPSPI7_SOUT 0x0028 0x01d8 0x0000 0x04 0x00 96 + #define MX91_PAD_GPIO_IO06__LPUART6_CTS_B 0x0028 0x01d8 0x0000 0x05 0x00 97 + #define MX91_PAD_GPIO_IO06__LPI2C7_SDA 0x0028 0x01d8 0x0414 0x06 0x00 98 + #define MX91_PAD_GPIO_IO06__FLEXIO1_FLEXIO6 0x0028 0x01d8 0x0384 0x07 0x00 99 + 100 + #define MX91_PAD_GPIO_IO07__GPIO2_IO7 0x002c 0x01dc 0x0000 0x00 0x00 101 + #define MX91_PAD_GPIO_IO07__LPSPI3_PCS1 0x002c 0x01dc 0x0000 0x01 0x00 102 + #define MX91_PAD_GPIO_IO07__MEDIAMIX_CAM_DATA1 0x002c 0x01dc 0x0494 0x02 0x00 103 + #define MX91_PAD_GPIO_IO07__MEDIAMIX_DISP_DATA3 0x002c 0x01dc 0x0000 0x03 0x00 104 + #define MX91_PAD_GPIO_IO07__LPSPI7_SCK 0x002c 0x01dc 0x0000 0x04 0x00 105 + #define MX91_PAD_GPIO_IO07__LPUART6_RTS_B 0x002c 0x01dc 0x0000 0x05 0x00 106 + #define MX91_PAD_GPIO_IO07__LPI2C7_SCL 0x002c 0x01dc 0x0410 0x06 0x00 107 + #define MX91_PAD_GPIO_IO07__FLEXIO1_FLEXIO7 0x002c 0x01dc 0x0388 0x07 0x00 108 + 109 + #define MX91_PAD_GPIO_IO08__GPIO2_IO8 0x0030 0x01e0 0x0000 0x00 0x00 110 + #define MX91_PAD_GPIO_IO08__LPSPI3_PCS0 0x0030 0x01e0 0x0000 0x01 0x00 111 + #define MX91_PAD_GPIO_IO08__MEDIAMIX_CAM_DATA2 0x0030 0x01e0 0x0498 0x02 0x00 112 + #define MX91_PAD_GPIO_IO08__MEDIAMIX_DISP_DATA4 0x0030 0x01e0 0x0000 0x03 0x00 113 + #define MX91_PAD_GPIO_IO08__TPM6_CH0 0x0030 0x01e0 0x0000 0x04 0x00 114 + #define MX91_PAD_GPIO_IO08__LPUART7_TX 0x0030 0x01e0 0x0000 0x05 0x00 115 + #define MX91_PAD_GPIO_IO08__LPI2C7_SDA 0x0030 0x01e0 0x0414 0x06 0x01 116 + #define MX91_PAD_GPIO_IO08__FLEXIO1_FLEXIO8 0x0030 0x01e0 0x038c 0x07 0x00 117 + 118 + #define MX91_PAD_GPIO_IO09__GPIO2_IO9 0x0034 0x01e4 0x0000 0x00 0x00 119 + #define MX91_PAD_GPIO_IO09__LPSPI3_SIN 0x0034 0x01e4 0x0000 0x01 0x00 120 + #define MX91_PAD_GPIO_IO09__MEDIAMIX_CAM_DATA3 0x0034 0x01e4 0x049c 0x02 0x00 121 + #define MX91_PAD_GPIO_IO09__MEDIAMIX_DISP_DATA5 0x0034 0x01e4 0x0000 0x03 0x00 122 + #define MX91_PAD_GPIO_IO09__TPM3_EXTCLK 0x0034 0x01e4 0x0000 0x04 0x00 123 + #define MX91_PAD_GPIO_IO09__LPUART7_RX 0x0034 0x01e4 0x0000 0x05 0x00 124 + #define MX91_PAD_GPIO_IO09__LPI2C7_SCL 0x0034 0x01e4 0x0410 0x06 0x01 125 + #define MX91_PAD_GPIO_IO09__FLEXIO1_FLEXIO9 0x0034 0x01e4 0x0390 0x07 0x00 126 + 127 + #define MX91_PAD_GPIO_IO10__GPIO2_IO10 0x0038 0x01e8 0x0000 0x00 0x00 128 + #define MX91_PAD_GPIO_IO10__LPSPI3_SOUT 0x0038 0x01e8 0x0000 0x01 0x00 129 + #define MX91_PAD_GPIO_IO10__MEDIAMIX_CAM_DATA4 0x0038 0x01e8 0x04a0 0x02 0x00 130 + #define MX91_PAD_GPIO_IO10__MEDIAMIX_DISP_DATA6 0x0038 0x01e8 0x0000 0x03 0x00 131 + #define MX91_PAD_GPIO_IO10__TPM4_EXTCLK 0x0038 0x01e8 0x0000 0x04 0x00 132 + #define MX91_PAD_GPIO_IO10__LPUART7_CTS_B 0x0038 0x01e8 0x0000 0x05 0x00 133 + #define MX91_PAD_GPIO_IO10__LPI2C8_SDA 0x0038 0x01e8 0x041c 0x06 0x00 134 + #define MX91_PAD_GPIO_IO10__FLEXIO1_FLEXIO10 0x0038 0x01e8 0x0394 0x07 0x00 135 + 136 + #define MX91_PAD_GPIO_IO11__GPIO2_IO11 0x003c 0x01ec 0x0000 0x00 0x00 137 + #define MX91_PAD_GPIO_IO11__LPSPI3_SCK 0x003c 0x01ec 0x0000 0x01 0x00 138 + #define MX91_PAD_GPIO_IO11__MEDIAMIX_CAM_DATA5 0x003c 0x01ec 0x04a4 0x02 0x00 139 + #define MX91_PAD_GPIO_IO11__MEDIAMIX_DISP_DATA7 0x003c 0x01ec 0x0000 0x03 0x00 140 + #define MX91_PAD_GPIO_IO11__TPM5_EXTCLK 0x003c 0x01ec 0x0000 0x04 0x00 141 + #define MX91_PAD_GPIO_IO11__LPUART7_RTS_B 0x003c 0x01ec 0x0000 0x05 0x00 142 + #define MX91_PAD_GPIO_IO11__LPI2C8_SCL 0x003c 0x01ec 0x0418 0x06 0x00 143 + #define MX91_PAD_GPIO_IO11__FLEXIO1_FLEXIO11 0x003c 0x01ec 0x0398 0x07 0x00 144 + 145 + #define MX91_PAD_GPIO_IO12__GPIO2_IO12 0x0040 0x01f0 0x0000 0x00 0x00 146 + #define MX91_PAD_GPIO_IO12__TPM3_CH2 0x0040 0x01f0 0x0000 0x01 0x00 147 + #define MX91_PAD_GPIO_IO12__PDM_BIT_STREAM2 0x0040 0x01f0 0x04cc 0x02 0x00 148 + #define MX91_PAD_GPIO_IO12__MEDIAMIX_DISP_DATA8 0x0040 0x01f0 0x0000 0x03 0x00 149 + #define MX91_PAD_GPIO_IO12__LPSPI8_PCS0 0x0040 0x01f0 0x0000 0x04 0x00 150 + #define MX91_PAD_GPIO_IO12__LPUART8_TX 0x0040 0x01f0 0x0000 0x05 0x00 151 + #define MX91_PAD_GPIO_IO12__LPI2C8_SDA 0x0040 0x01f0 0x041c 0x06 0x01 152 + #define MX91_PAD_GPIO_IO12__SAI3_RX_SYNC 0x0040 0x01f0 0x04dc 0x07 0x00 153 + 154 + #define MX91_PAD_GPIO_IO13__GPIO2_IO13 0x0044 0x01f4 0x0000 0x00 0x00 155 + #define MX91_PAD_GPIO_IO13__TPM4_CH2 0x0044 0x01f4 0x0000 0x01 0x00 156 + #define MX91_PAD_GPIO_IO13__PDM_BIT_STREAM3 0x0044 0x01f4 0x04d0 0x02 0x00 157 + #define MX91_PAD_GPIO_IO13__MEDIAMIX_DISP_DATA9 0x0044 0x01f4 0x0000 0x03 0x00 158 + #define MX91_PAD_GPIO_IO13__LPSPI8_SIN 0x0044 0x01f4 0x0000 0x04 0x00 159 + #define MX91_PAD_GPIO_IO13__LPUART8_RX 0x0044 0x01f4 0x0000 0x05 0x00 160 + #define MX91_PAD_GPIO_IO13__LPI2C8_SCL 0x0044 0x01f4 0x0418 0x06 0x01 161 + #define MX91_PAD_GPIO_IO13__FLEXIO1_FLEXIO13 0x0044 0x01f4 0x039c 0x07 0x00 162 + 163 + #define MX91_PAD_GPIO_IO14__GPIO2_IO14 0x0048 0x01f8 0x0000 0x00 0x00 164 + #define MX91_PAD_GPIO_IO14__LPUART3_TX 0x0048 0x01f8 0x0474 0x01 0x00 165 + #define MX91_PAD_GPIO_IO14__MEDIAMIX_CAM_DATA6 0x0048 0x01f8 0x04a8 0x02 0x00 166 + #define MX91_PAD_GPIO_IO14__MEDIAMIX_DISP_DATA10 0x0048 0x01f8 0x0000 0x03 0x00 167 + #define MX91_PAD_GPIO_IO14__LPSPI8_SOUT 0x0048 0x01f8 0x0000 0x04 0x00 168 + #define MX91_PAD_GPIO_IO14__LPUART8_CTS_B 0x0048 0x01f8 0x0000 0x05 0x00 169 + #define MX91_PAD_GPIO_IO14__LPUART4_TX 0x0048 0x01f8 0x0480 0x06 0x00 170 + #define MX91_PAD_GPIO_IO14__FLEXIO1_FLEXIO14 0x0048 0x01f8 0x03a0 0x07 0x00 171 + 172 + #define MX91_PAD_GPIO_IO15__GPIO2_IO15 0x004c 0x01fc 0x0000 0x00 0x00 173 + #define MX91_PAD_GPIO_IO15__LPUART3_RX 0x004c 0x01fc 0x0470 0x01 0x00 174 + #define MX91_PAD_GPIO_IO15__MEDIAMIX_CAM_DATA7 0x004c 0x01fc 0x04ac 0x02 0x00 175 + #define MX91_PAD_GPIO_IO15__MEDIAMIX_DISP_DATA11 0x004c 0x01fc 0x0000 0x03 0x00 176 + #define MX91_PAD_GPIO_IO15__LPSPI8_SCK 0x004c 0x01fc 0x0000 0x04 0x00 177 + #define MX91_PAD_GPIO_IO15__LPUART8_RTS_B 0x004c 0x01fc 0x0000 0x05 0x00 178 + #define MX91_PAD_GPIO_IO15__LPUART4_RX 0x004c 0x01fc 0x047c 0x06 0x00 179 + #define MX91_PAD_GPIO_IO15__FLEXIO1_FLEXIO15 0x004c 0x01fc 0x03a4 0x07 0x00 180 + 181 + #define MX91_PAD_GPIO_IO16__GPIO2_IO16 0x0050 0x0200 0x0000 0x00 0x00 182 + #define MX91_PAD_GPIO_IO16__SAI3_TX_BCLK 0x0050 0x0200 0x0000 0x01 0x00 183 + #define MX91_PAD_GPIO_IO16__PDM_BIT_STREAM2 0x0050 0x0200 0x04cc 0x02 0x01 184 + #define MX91_PAD_GPIO_IO16__MEDIAMIX_DISP_DATA12 0x0050 0x0200 0x0000 0x03 0x00 185 + #define MX91_PAD_GPIO_IO16__LPUART3_CTS_B 0x0050 0x0200 0x046c 0x04 0x00 186 + #define MX91_PAD_GPIO_IO16__LPSPI4_PCS2 0x0050 0x0200 0x0000 0x05 0x00 187 + #define MX91_PAD_GPIO_IO16__LPUART4_CTS_B 0x0050 0x0200 0x0478 0x06 0x00 188 + #define MX91_PAD_GPIO_IO16__FLEXIO1_FLEXIO16 0x0050 0x0200 0x03a8 0x07 0x00 189 + 190 + #define MX91_PAD_GPIO_IO17__GPIO2_IO17 0x0054 0x0204 0x0000 0x00 0x00 191 + #define MX91_PAD_GPIO_IO17__SAI3_MCLK 0x0054 0x0204 0x0000 0x01 0x00 192 + #define MX91_PAD_GPIO_IO17__MEDIAMIX_CAM_DATA8 0x0054 0x0204 0x04b0 0x02 0x00 193 + #define MX91_PAD_GPIO_IO17__MEDIAMIX_DISP_DATA13 0x0054 0x0204 0x0000 0x03 0x00 194 + #define MX91_PAD_GPIO_IO17__LPUART3_RTS_B 0x0054 0x0204 0x0000 0x04 0x00 195 + #define MX91_PAD_GPIO_IO17__LPSPI4_PCS1 0x0054 0x0204 0x0000 0x05 0x00 196 + #define MX91_PAD_GPIO_IO17__LPUART4_RTS_B 0x0054 0x0204 0x0000 0x06 0x00 197 + #define MX91_PAD_GPIO_IO17__FLEXIO1_FLEXIO17 0x0054 0x0204 0x03ac 0x07 0x00 198 + 199 + #define MX91_PAD_GPIO_IO18__GPIO2_IO18 0x0058 0x0208 0x0000 0x00 0x00 200 + #define MX91_PAD_GPIO_IO18__SAI3_RX_BCLK 0x0058 0x0208 0x04d8 0x01 0x00 201 + #define MX91_PAD_GPIO_IO18__MEDIAMIX_CAM_DATA9 0x0058 0x0208 0x04b4 0x02 0x00 202 + #define MX91_PAD_GPIO_IO18__MEDIAMIX_DISP_DATA14 0x0058 0x0208 0x0000 0x03 0x00 203 + #define MX91_PAD_GPIO_IO18__LPSPI5_PCS0 0x0058 0x0208 0x0000 0x04 0x00 204 + #define MX91_PAD_GPIO_IO18__LPSPI4_PCS0 0x0058 0x0208 0x0000 0x05 0x00 205 + #define MX91_PAD_GPIO_IO18__TPM5_CH2 0x0058 0x0208 0x0000 0x06 0x00 206 + #define MX91_PAD_GPIO_IO18__FLEXIO1_FLEXIO18 0x0058 0x0208 0x03b0 0x07 0x00 207 + 208 + #define MX91_PAD_GPIO_IO19__GPIO2_IO19 0x005c 0x020c 0x0000 0x00 0x00 209 + #define MX91_PAD_GPIO_IO19__SAI3_RX_SYNC 0x005c 0x020c 0x04dc 0x01 0x01 210 + #define MX91_PAD_GPIO_IO19__PDM_BIT_STREAM3 0x005c 0x020c 0x04d0 0x02 0x01 211 + #define MX91_PAD_GPIO_IO19__MEDIAMIX_DISP_DATA15 0x005c 0x020c 0x0000 0x03 0x00 212 + #define MX91_PAD_GPIO_IO19__LPSPI5_SIN 0x005c 0x020c 0x0000 0x04 0x00 213 + #define MX91_PAD_GPIO_IO19__LPSPI4_SIN 0x005c 0x020c 0x0000 0x05 0x00 214 + #define MX91_PAD_GPIO_IO19__TPM6_CH2 0x005c 0x020c 0x0000 0x06 0x00 215 + #define MX91_PAD_GPIO_IO19__SAI3_TX_DATA0 0x005c 0x020c 0x0000 0x07 0x00 216 + 217 + #define MX91_PAD_GPIO_IO20__GPIO2_IO20 0x0060 0x0210 0x0000 0x00 0x00 218 + #define MX91_PAD_GPIO_IO20__SAI3_RX_DATA0 0x0060 0x0210 0x0000 0x01 0x00 219 + #define MX91_PAD_GPIO_IO20__PDM_BIT_STREAM0 0x0060 0x0210 0x04c4 0x02 0x01 220 + #define MX91_PAD_GPIO_IO20__MEDIAMIX_DISP_DATA16 0x0060 0x0210 0x0000 0x03 0x00 221 + #define MX91_PAD_GPIO_IO20__LPSPI5_SOUT 0x0060 0x0210 0x0000 0x04 0x00 222 + #define MX91_PAD_GPIO_IO20__LPSPI4_SOUT 0x0060 0x0210 0x0000 0x05 0x00 223 + #define MX91_PAD_GPIO_IO20__TPM3_CH1 0x0060 0x0210 0x0000 0x06 0x00 224 + #define MX91_PAD_GPIO_IO20__FLEXIO1_FLEXIO20 0x0060 0x0210 0x03b4 0x07 0x00 225 + 226 + #define MX91_PAD_GPIO_IO21__GPIO2_IO21 0x0064 0x0214 0x0000 0x00 0x00 227 + #define MX91_PAD_GPIO_IO21__SAI3_TX_DATA0 0x0064 0x0214 0x0000 0x01 0x00 228 + #define MX91_PAD_GPIO_IO21__PDM_CLK 0x0064 0x0214 0x0000 0x02 0x00 229 + #define MX91_PAD_GPIO_IO21__MEDIAMIX_DISP_DATA17 0x0064 0x0214 0x0000 0x03 0x00 230 + #define MX91_PAD_GPIO_IO21__LPSPI5_SCK 0x0064 0x0214 0x0000 0x04 0x00 231 + #define MX91_PAD_GPIO_IO21__LPSPI4_SCK 0x0064 0x0214 0x0000 0x05 0x00 232 + #define MX91_PAD_GPIO_IO21__TPM4_CH1 0x0064 0x0214 0x0000 0x06 0x00 233 + #define MX91_PAD_GPIO_IO21__SAI3_RX_BCLK 0x0064 0x0214 0x04d8 0x07 0x01 234 + 235 + #define MX91_PAD_GPIO_IO22__GPIO2_IO22 0x0068 0x0218 0x0000 0x00 0x00 236 + #define MX91_PAD_GPIO_IO22__USDHC3_CLK 0x0068 0x0218 0x04e8 0x01 0x00 237 + #define MX91_PAD_GPIO_IO22__SPDIF_IN 0x0068 0x0218 0x04e4 0x02 0x00 238 + #define MX91_PAD_GPIO_IO22__MEDIAMIX_DISP_DATA18 0x0068 0x0218 0x0000 0x03 0x00 239 + #define MX91_PAD_GPIO_IO22__TPM5_CH1 0x0068 0x0218 0x0000 0x04 0x00 240 + #define MX91_PAD_GPIO_IO22__TPM6_EXTCLK 0x0068 0x0218 0x0000 0x05 0x00 241 + #define MX91_PAD_GPIO_IO22__LPI2C5_SDA 0x0068 0x0218 0x0404 0x06 0x01 242 + #define MX91_PAD_GPIO_IO22__FLEXIO1_FLEXIO22 0x0068 0x0218 0x03b8 0x07 0x00 243 + 244 + #define MX91_PAD_GPIO_IO23__GPIO2_IO23 0x006c 0x021c 0x0000 0x00 0x00 245 + #define MX91_PAD_GPIO_IO23__USDHC3_CMD 0x006c 0x021c 0x04ec 0x01 0x00 246 + #define MX91_PAD_GPIO_IO23__SPDIF_OUT 0x006c 0x021c 0x0000 0x02 0x00 247 + #define MX91_PAD_GPIO_IO23__MEDIAMIX_DISP_DATA19 0x006c 0x021c 0x0000 0x03 0x00 248 + #define MX91_PAD_GPIO_IO23__TPM6_CH1 0x006c 0x021c 0x0000 0x04 0x00 249 + #define MX91_PAD_GPIO_IO23__LPI2C5_SCL 0x006c 0x021c 0x0400 0x06 0x01 250 + #define MX91_PAD_GPIO_IO23__FLEXIO1_FLEXIO23 0x006c 0x021c 0x03bc 0x07 0x00 251 + 252 + #define MX91_PAD_GPIO_IO24__GPIO2_IO24 0x0070 0x0220 0x0000 0x00 0x00 253 + #define MX91_PAD_GPIO_IO24__USDHC3_DATA0 0x0070 0x0220 0x04f0 0x01 0x00 254 + #define MX91_PAD_GPIO_IO24__MEDIAMIX_DISP_DATA20 0x0070 0x0220 0x0000 0x03 0x00 255 + #define MX91_PAD_GPIO_IO24__TPM3_CH3 0x0070 0x0220 0x0000 0x04 0x00 256 + #define MX91_PAD_GPIO_IO24__JTAG_MUX_TDO 0x0070 0x0220 0x0000 0x05 0x00 257 + #define MX91_PAD_GPIO_IO24__LPSPI6_PCS1 0x0070 0x0220 0x0000 0x06 0x00 258 + #define MX91_PAD_GPIO_IO24__FLEXIO1_FLEXIO24 0x0070 0x0220 0x03c0 0x07 0x00 259 + 260 + #define MX91_PAD_GPIO_IO25__GPIO2_IO25 0x0074 0x0224 0x0000 0x00 0x00 261 + #define MX91_PAD_GPIO_IO25__USDHC3_DATA1 0x0074 0x0224 0x04f4 0x01 0x00 262 + #define MX91_PAD_GPIO_IO25__CAN2_TX 0x0074 0x0224 0x0000 0x02 0x00 263 + #define MX91_PAD_GPIO_IO25__MEDIAMIX_DISP_DATA21 0x0074 0x0224 0x0000 0x03 0x00 264 + #define MX91_PAD_GPIO_IO25__TPM4_CH3 0x0074 0x0224 0x0000 0x04 0x00 265 + #define MX91_PAD_GPIO_IO25__JTAG_MUX_TCK 0x0074 0x0224 0x03d4 0x05 0x01 266 + #define MX91_PAD_GPIO_IO25__LPSPI7_PCS1 0x0074 0x0224 0x0000 0x06 0x00 267 + #define MX91_PAD_GPIO_IO25__FLEXIO1_FLEXIO25 0x0074 0x0224 0x03c4 0x07 0x00 268 + 269 + #define MX91_PAD_GPIO_IO26__GPIO2_IO26 0x0078 0x0228 0x0000 0x00 0x00 270 + #define MX91_PAD_GPIO_IO26__USDHC3_DATA2 0x0078 0x0228 0x04f8 0x01 0x00 271 + #define MX91_PAD_GPIO_IO26__PDM_BIT_STREAM1 0x0078 0x0228 0x04c8 0x02 0x01 272 + #define MX91_PAD_GPIO_IO26__MEDIAMIX_DISP_DATA22 0x0078 0x0228 0x0000 0x03 0x00 273 + #define MX91_PAD_GPIO_IO26__TPM5_CH3 0x0078 0x0228 0x0000 0x04 0x00 274 + #define MX91_PAD_GPIO_IO26__JTAG_MUX_TDI 0x0078 0x0228 0x03d8 0x05 0x01 275 + #define MX91_PAD_GPIO_IO26__LPSPI8_PCS1 0x0078 0x0228 0x0000 0x06 0x00 276 + #define MX91_PAD_GPIO_IO26__SAI3_TX_SYNC 0x0078 0x0228 0x04e0 0x07 0x00 277 + 278 + #define MX91_PAD_GPIO_IO27__GPIO2_IO27 0x007c 0x022c 0x0000 0x00 0x00 279 + #define MX91_PAD_GPIO_IO27__USDHC3_DATA3 0x007c 0x022c 0x04fc 0x01 0x00 280 + #define MX91_PAD_GPIO_IO27__CAN2_RX 0x007c 0x022c 0x0364 0x02 0x01 281 + #define MX91_PAD_GPIO_IO27__MEDIAMIX_DISP_DATA23 0x007c 0x022c 0x0000 0x03 0x00 282 + #define MX91_PAD_GPIO_IO27__TPM6_CH3 0x007c 0x022c 0x0000 0x04 0x00 283 + #define MX91_PAD_GPIO_IO27__JTAG_MUX_TMS 0x007c 0x022c 0x03dc 0x05 0x01 284 + #define MX91_PAD_GPIO_IO27__LPSPI5_PCS1 0x007c 0x022c 0x0000 0x06 0x00 285 + #define MX91_PAD_GPIO_IO27__FLEXIO1_FLEXIO27 0x007c 0x022c 0x03c8 0x07 0x00 286 + 287 + #define MX91_PAD_GPIO_IO28__GPIO2_IO28 0x0080 0x0230 0x0000 0x00 0x00 288 + #define MX91_PAD_GPIO_IO28__LPI2C3_SDA 0x0080 0x0230 0x03f4 0x01 0x01 289 + #define MX91_PAD_GPIO_IO28__CAN1_TX 0x0080 0x0230 0x0000 0x02 0x00 290 + #define MX91_PAD_GPIO_IO28__FLEXIO1_FLEXIO28 0x0080 0x0230 0x0000 0x07 0x00 291 + 292 + #define MX91_PAD_GPIO_IO29__GPIO2_IO29 0x0084 0x0234 0x0000 0x00 0x00 293 + #define MX91_PAD_GPIO_IO29__LPI2C3_SCL 0x0084 0x0234 0x03f0 0x01 0x01 294 + #define MX91_PAD_GPIO_IO29__CAN1_RX 0x0084 0x0234 0x0360 0x02 0x00 295 + #define MX91_PAD_GPIO_IO29__FLEXIO1_FLEXIO29 0x0084 0x0234 0x0000 0x07 0x00 296 + 297 + #define MX91_PAD_CCM_CLKO1__CCMSRCGPCMIX_CLKO1 0x0088 0x0238 0x0000 0x00 0x00 298 + #define MX91_PAD_CCM_CLKO1__FLEXIO1_FLEXIO26 0x0088 0x0238 0x0000 0x04 0x00 299 + #define MX91_PAD_CCM_CLKO1__GPIO3_IO26 0x0088 0x0238 0x0000 0x05 0x00 300 + 301 + #define MX91_PAD_CCM_CLKO2__GPIO3_IO27 0x008c 0x023c 0x0000 0x05 0x00 302 + #define MX91_PAD_CCM_CLKO2__CCMSRCGPCMIX_CLKO2 0x008c 0x023c 0x0000 0x00 0x00 303 + #define MX91_PAD_CCM_CLKO2__FLEXIO1_FLEXIO27 0x008c 0x023c 0x03c8 0x04 0x01 304 + 305 + #define MX91_PAD_CCM_CLKO3__CCMSRCGPCMIX_CLKO3 0x0090 0x0240 0x0000 0x00 0x00 306 + #define MX91_PAD_CCM_CLKO3__FLEXIO2_FLEXIO28 0x0090 0x0240 0x0000 0x04 0x00 307 + #define MX91_PAD_CCM_CLKO3__GPIO4_IO28 0x0090 0x0240 0x0000 0x05 0x00 308 + 309 + #define MX91_PAD_CCM_CLKO4__CCMSRCGPCMIX_CLKO4 0x0094 0x0244 0x0000 0x00 0x00 310 + #define MX91_PAD_CCM_CLKO4__FLEXIO2_FLEXIO29 0x0094 0x0244 0x0000 0x04 0x00 311 + #define MX91_PAD_CCM_CLKO4__GPIO4_IO29 0x0094 0x0244 0x0000 0x05 0x00 312 + 313 + #define MX91_PAD_ENET1_MDC__ENET1_MDC 0x0098 0x0248 0x0000 0x00 0x00 314 + #define MX91_PAD_ENET1_MDC__LPUART3_DCB_B 0x0098 0x0248 0x0000 0x01 0x00 315 + #define MX91_PAD_ENET1_MDC__I3C2_SCL 0x0098 0x0248 0x03cc 0x02 0x00 316 + #define MX91_PAD_ENET1_MDC__HSIOMIX_OTG_ID1 0x0098 0x0248 0x0000 0x03 0x00 317 + #define MX91_PAD_ENET1_MDC__FLEXIO2_FLEXIO0 0x0098 0x0248 0x0000 0x04 0x00 318 + #define MX91_PAD_ENET1_MDC__GPIO4_IO0 0x0098 0x0248 0x0000 0x05 0x00 319 + #define MX91_PAD_ENET1_MDC__LPI2C1_SCL 0x0098 0x0248 0x03e0 0x06 0x00 320 + 321 + #define MX91_PAD_ENET1_MDIO__ENET_QOS_MDIO 0x009c 0x024c 0x0000 0x00 0x00 322 + #define MX91_PAD_ENET1_MDIO__LPUART3_RIN_B 0x009c 0x024c 0x0000 0x01 0x00 323 + #define MX91_PAD_ENET1_MDIO__I3C2_SDA 0x009c 0x024c 0x03d0 0x02 0x00 324 + #define MX91_PAD_ENET1_MDIO__HSIOMIX_OTG_PWR1 0x009c 0x024c 0x0000 0x03 0x00 325 + #define MX91_PAD_ENET1_MDIO__FLEXIO2_FLEXIO1 0x009c 0x024c 0x0000 0x04 0x00 326 + #define MX91_PAD_ENET1_MDIO__GPIO4_IO1 0x009c 0x024c 0x0000 0x05 0x00 327 + #define MX91_PAD_ENET1_MDIO__LPI2C1_SDA 0x009c 0x024c 0x03e4 0x06 0x00 328 + 329 + #define MX91_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3 0x00a0 0x0250 0x0000 0x00 0x00 330 + #define MX91_PAD_ENET1_TD3__CAN2_TX 0x00a0 0x0250 0x0000 0x02 0x00 331 + #define MX91_PAD_ENET1_TD3__HSIOMIX_OTG_ID2 0x00a0 0x0250 0x0000 0x03 0x00 332 + #define MX91_PAD_ENET1_TD3__FLEXIO2_FLEXIO2 0x00a0 0x0250 0x0000 0x04 0x00 333 + #define MX91_PAD_ENET1_TD3__GPIO4_IO2 0x00a0 0x0250 0x0000 0x05 0x00 334 + #define MX91_PAD_ENET1_TD3__LPI2C2_SCL 0x00a0 0x0250 0x03e8 0x06 0x00 335 + 336 + #define MX91_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2 0x00a4 0x0254 0x0000 0x00 0x00 337 + #define MX91_PAD_ENET1_TD2__ENET_QOS_CLOCK_GENERATE_CLK 0x00a4 0x0254 0x0000 0x01 0x00 338 + #define MX91_PAD_ENET1_TD2__CAN2_RX 0x00a4 0x0254 0x0364 0x02 0x02 339 + #define MX91_PAD_ENET1_TD2__HSIOMIX_OTG_OC2 0x00a4 0x0254 0x0000 0x03 0x00 340 + #define MX91_PAD_ENET1_TD2__FLEXIO2_FLEXIO3 0x00a4 0x0254 0x0000 0x04 0x00 341 + #define MX91_PAD_ENET1_TD2__GPIO4_IO3 0x00a4 0x0254 0x0000 0x05 0x00 342 + #define MX91_PAD_ENET1_TD2__LPI2C2_SDA 0x00a4 0x0254 0x03ec 0x06 0x00 343 + 344 + #define MX91_PAD_ENET1_TD1__ENET1_RGMII_TD1 0x00a8 0x0258 0x0000 0x00 0x00 345 + #define MX91_PAD_ENET1_TD1__LPUART3_RTS_B 0x00a8 0x0258 0x0000 0x01 0x00 346 + #define MX91_PAD_ENET1_TD1__I3C2_PUR 0x00a8 0x0258 0x0000 0x02 0x00 347 + #define MX91_PAD_ENET1_TD1__HSIOMIX_OTG_OC1 0x00a8 0x0258 0x0000 0x03 0x00 348 + #define MX91_PAD_ENET1_TD1__FLEXIO2_FLEXIO4 0x00a8 0x0258 0x0000 0x04 0x00 349 + #define MX91_PAD_ENET1_TD1__GPIO4_IO4 0x00a8 0x0258 0x0000 0x05 0x00 350 + #define MX91_PAD_ENET1_TD1__I3C2_PUR_B 0x00a8 0x0258 0x0000 0x06 0x00 351 + 352 + #define MX91_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0 0x00ac 0x025c 0x0000 0x00 0x00 353 + #define MX91_PAD_ENET1_TD0__LPUART3_TX 0x00ac 0x025c 0x0474 0x01 0x01 354 + #define MX91_PAD_ENET1_TD0__FLEXIO2_FLEXIO5 0x00ac 0x025c 0x0000 0x04 0x00 355 + #define MX91_PAD_ENET1_TD0__GPIO4_IO5 0x00ac 0x025c 0x0000 0x05 0x00 356 + 357 + #define MX91_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x00b0 0x0260 0x0000 0x00 0x00 358 + #define MX91_PAD_ENET1_TX_CTL__LPUART3_DTR_B 0x00b0 0x0260 0x0000 0x01 0x00 359 + #define MX91_PAD_ENET1_TX_CTL__FLEXIO2_FLEXIO6 0x00b0 0x0260 0x0000 0x04 0x00 360 + #define MX91_PAD_ENET1_TX_CTL__GPIO4_IO6 0x00b0 0x0260 0x0000 0x05 0x00 361 + #define MX91_PAD_ENET1_TX_CTL__LPSPI2_SCK 0x00b0 0x0260 0x043c 0x02 0x00 362 + 363 + #define MX91_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x00b4 0x0264 0x0000 0x00 0x00 364 + #define MX91_PAD_ENET1_TXC__ENET_QOS_TX_ER 0x00b4 0x0264 0x0000 0x01 0x00 365 + #define MX91_PAD_ENET1_TXC__FLEXIO2_FLEXIO7 0x00b4 0x0264 0x0000 0x04 0x00 366 + #define MX91_PAD_ENET1_TXC__GPIO4_IO7 0x00b4 0x0264 0x0000 0x05 0x00 367 + #define MX91_PAD_ENET1_TXC__LPSPI2_SIN 0x00b4 0x0264 0x0440 0x02 0x00 368 + 369 + #define MX91_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x00b8 0x0268 0x0000 0x00 0x00 370 + #define MX91_PAD_ENET1_RX_CTL__LPUART3_DSR_B 0x00b8 0x0268 0x0000 0x01 0x00 371 + #define MX91_PAD_ENET1_RX_CTL__HSIOMIX_OTG_PWR2 0x00b8 0x0268 0x0000 0x03 0x00 372 + #define MX91_PAD_ENET1_RX_CTL__FLEXIO2_FLEXIO8 0x00b8 0x0268 0x0000 0x04 0x00 373 + #define MX91_PAD_ENET1_RX_CTL__GPIO4_IO8 0x00b8 0x0268 0x0000 0x05 0x00 374 + #define MX91_PAD_ENET1_RX_CTL__LPSPI2_PCS0 0x00b8 0x0268 0x0434 0x02 0x00 375 + 376 + #define MX91_PAD_ENET1_RXC__ENET_QOS_RGMII_RXC 0x00bc 0x026c 0x0000 0x00 0x00 377 + #define MX91_PAD_ENET1_RXC__ENET_QOS_RX_ER 0x00bc 0x026c 0x0000 0x01 0x00 378 + #define MX91_PAD_ENET1_RXC__FLEXIO2_FLEXIO9 0x00bc 0x026c 0x0000 0x04 0x00 379 + #define MX91_PAD_ENET1_RXC__GPIO4_IO9 0x00bc 0x026c 0x0000 0x05 0x00 380 + #define MX91_PAD_ENET1_RXC__LPSPI2_SOUT 0x00bc 0x026c 0x0444 0x02 0x00 381 + 382 + #define MX91_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0 0x00c0 0x0270 0x0000 0x00 0x00 383 + #define MX91_PAD_ENET1_RD0__LPUART3_RX 0x00c0 0x0270 0x0470 0x01 0x01 384 + #define MX91_PAD_ENET1_RD0__FLEXIO2_FLEXIO10 0x00c0 0x0270 0x0000 0x04 0x00 385 + #define MX91_PAD_ENET1_RD0__GPIO4_IO10 0x00c0 0x0270 0x0000 0x05 0x00 386 + 387 + #define MX91_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1 0x00c4 0x0274 0x0000 0x00 0x00 388 + #define MX91_PAD_ENET1_RD1__LPUART3_CTS_B 0x00c4 0x0274 0x046c 0x01 0x01 389 + #define MX91_PAD_ENET1_RD1__LPTMR2_ALT1 0x00c4 0x0274 0x0448 0x03 0x00 390 + #define MX91_PAD_ENET1_RD1__FLEXIO2_FLEXIO11 0x00c4 0x0274 0x0000 0x04 0x00 391 + #define MX91_PAD_ENET1_RD1__GPIO4_IO11 0x00c4 0x0274 0x0000 0x05 0x00 392 + 393 + #define MX91_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2 0x00c8 0x0278 0x0000 0x00 0x00 394 + #define MX91_PAD_ENET1_RD2__LPTMR2_ALT2 0x00c8 0x0278 0x044c 0x03 0x00 395 + #define MX91_PAD_ENET1_RD2__FLEXIO2_FLEXIO12 0x00c8 0x0278 0x0000 0x04 0x00 396 + #define MX91_PAD_ENET1_RD2__GPIO4_IO12 0x00c8 0x0278 0x0000 0x05 0x00 397 + 398 + #define MX91_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3 0x00cc 0x027c 0x0000 0x00 0x00 399 + #define MX91_PAD_ENET1_RD3__FLEXSPI1_TESTER_TRIGGER 0x00cc 0x027c 0x0000 0x02 0x00 400 + #define MX91_PAD_ENET1_RD3__LPTMR2_ALT3 0x00cc 0x027c 0x0450 0x03 0x00 401 + #define MX91_PAD_ENET1_RD3__FLEXIO2_FLEXIO13 0x00cc 0x027c 0x0000 0x04 0x00 402 + #define MX91_PAD_ENET1_RD3__GPIO4_IO13 0x00cc 0x027c 0x0000 0x05 0x00 403 + 404 + #define MX91_PAD_ENET2_MDC__ENET2_MDC 0x00d0 0x0280 0x0000 0x00 0x00 405 + #define MX91_PAD_ENET2_MDC__LPUART4_DCB_B 0x00d0 0x0280 0x0000 0x01 0x00 406 + #define MX91_PAD_ENET2_MDC__SAI2_RX_SYNC 0x00d0 0x0280 0x0000 0x02 0x00 407 + #define MX91_PAD_ENET2_MDC__FLEXIO2_FLEXIO14 0x00d0 0x0280 0x0000 0x04 0x00 408 + #define MX91_PAD_ENET2_MDC__GPIO4_IO14 0x00d0 0x0280 0x0000 0x05 0x00 409 + #define MX91_PAD_ENET2_MDC__MEDIAMIX_CAM_CLK 0x00d0 0x0280 0x04bc 0x06 0x01 410 + 411 + #define MX91_PAD_ENET2_MDIO__ENET2_MDIO 0x00d4 0x0284 0x0000 0x00 0x00 412 + #define MX91_PAD_ENET2_MDIO__LPUART4_RIN_B 0x00d4 0x0284 0x0000 0x01 0x00 413 + #define MX91_PAD_ENET2_MDIO__SAI2_RX_BCLK 0x00d4 0x0284 0x0000 0x02 0x00 414 + #define MX91_PAD_ENET2_MDIO__FLEXIO2_FLEXIO15 0x00d4 0x0284 0x0000 0x04 0x00 415 + #define MX91_PAD_ENET2_MDIO__GPIO4_IO15 0x00d4 0x0284 0x0000 0x05 0x00 416 + #define MX91_PAD_ENET2_MDIO__MEDIAMIX_CAM_DATA0 0x00d4 0x0284 0x0490 0x06 0x01 417 + 418 + #define MX91_PAD_ENET2_TD3__SAI2_RX_DATA0 0x00d8 0x0288 0x0000 0x02 0x00 419 + #define MX91_PAD_ENET2_TD3__FLEXIO2_FLEXIO16 0x00d8 0x0288 0x0000 0x04 0x00 420 + #define MX91_PAD_ENET2_TD3__GPIO4_IO16 0x00d8 0x0288 0x0000 0x05 0x00 421 + #define MX91_PAD_ENET2_TD3__MEDIAMIX_CAM_VSYNC 0x00d8 0x0288 0x04c0 0x06 0x01 422 + #define MX91_PAD_ENET2_TD3__ENET2_RGMII_TD3 0x00d8 0x0288 0x0000 0x00 0x00 423 + 424 + #define MX91_PAD_ENET2_TD2__ENET2_RGMII_TD2 0x00dc 0x028c 0x0000 0x00 0x00 425 + #define MX91_PAD_ENET2_TD2__ENET2_TX_CLK2 0x00dc 0x028c 0x0000 0x01 0x00 426 + #define MX91_PAD_ENET2_TD2__FLEXIO2_FLEXIO17 0x00dc 0x028c 0x0000 0x04 0x00 427 + #define MX91_PAD_ENET2_TD2__GPIO4_IO17 0x00dc 0x028c 0x0000 0x05 0x00 428 + #define MX91_PAD_ENET2_TD2__MEDIAMIX_CAM_HSYNC 0x00dc 0x028c 0x04b8 0x06 0x01 429 + 430 + #define MX91_PAD_ENET2_TD1__ENET2_RGMII_TD1 0x00e0 0x0290 0x0000 0x00 0x00 431 + #define MX91_PAD_ENET2_TD1__LPUART4_RTS_B 0x00e0 0x0290 0x0000 0x01 0x00 432 + #define MX91_PAD_ENET2_TD1__FLEXIO2_FLEXIO18 0x00e0 0x0290 0x0000 0x04 0x00 433 + #define MX91_PAD_ENET2_TD1__GPIO4_IO18 0x00e0 0x0290 0x0000 0x05 0x00 434 + #define MX91_PAD_ENET2_TD1__MEDIAMIX_CAM_DATA1 0x00e0 0x0290 0x0494 0x06 0x01 435 + 436 + #define MX91_PAD_ENET2_TD0__ENET2_RGMII_TD0 0x00e4 0x0294 0x0000 0x00 0x00 437 + #define MX91_PAD_ENET2_TD0__LPUART4_TX 0x00e4 0x0294 0x0480 0x01 0x01 438 + #define MX91_PAD_ENET2_TD0__FLEXIO2_FLEXIO19 0x00e4 0x0294 0x0000 0x04 0x00 439 + #define MX91_PAD_ENET2_TD0__GPIO4_IO19 0x00e4 0x0294 0x0000 0x05 0x00 440 + #define MX91_PAD_ENET2_TD0__MEDIAMIX_CAM_DATA2 0x00e4 0x0294 0x0498 0x06 0x01 441 + 442 + #define MX91_PAD_ENET2_TX_CTL__ENET2_RGMII_TX_CTL 0x00e8 0x0298 0x0000 0x00 0x00 443 + #define MX91_PAD_ENET2_TX_CTL__LPUART4_DTR_B 0x00e8 0x0298 0x0000 0x01 0x00 444 + #define MX91_PAD_ENET2_TX_CTL__SAI2_TX_SYNC 0x00e8 0x0298 0x0000 0x02 0x00 445 + #define MX91_PAD_ENET2_TX_CTL__FLEXIO2_FLEXIO20 0x00e8 0x0298 0x0000 0x04 0x00 446 + #define MX91_PAD_ENET2_TX_CTL__GPIO4_IO20 0x00e8 0x0298 0x0000 0x05 0x00 447 + #define MX91_PAD_ENET2_TX_CTL__MEDIAMIX_CAM_DATA3 0x00e8 0x0298 0x049c 0x06 0x01 448 + 449 + #define MX91_PAD_ENET2_TXC__ENET2_RGMII_TXC 0x00ec 0x029c 0x0000 0x00 0x00 450 + #define MX91_PAD_ENET2_TXC__ENET2_TX_ER 0x00ec 0x029c 0x0000 0x01 0x00 451 + #define MX91_PAD_ENET2_TXC__SAI2_TX_BCLK 0x00ec 0x029c 0x0000 0x02 0x00 452 + #define MX91_PAD_ENET2_TXC__FLEXIO2_FLEXIO21 0x00ec 0x029c 0x0000 0x04 0x00 453 + #define MX91_PAD_ENET2_TXC__GPIO4_IO21 0x00ec 0x029c 0x0000 0x05 0x00 454 + #define MX91_PAD_ENET2_TXC__MEDIAMIX_CAM_DATA4 0x00ec 0x029c 0x04a0 0x06 0x01 455 + 456 + #define MX91_PAD_ENET2_RX_CTL__ENET2_RGMII_RX_CTL 0x00f0 0x02a0 0x0000 0x00 0x00 457 + #define MX91_PAD_ENET2_RX_CTL__LPUART4_DSR_B 0x00f0 0x02a0 0x0000 0x01 0x00 458 + #define MX91_PAD_ENET2_RX_CTL__SAI2_TX_DATA0 0x00f0 0x02a0 0x0000 0x02 0x00 459 + #define MX91_PAD_ENET2_RX_CTL__FLEXIO2_FLEXIO22 0x00f0 0x02a0 0x0000 0x04 0x00 460 + #define MX91_PAD_ENET2_RX_CTL__GPIO4_IO22 0x00f0 0x02a0 0x0000 0x05 0x00 461 + #define MX91_PAD_ENET2_RX_CTL__MEDIAMIX_CAM_DATA5 0x00f0 0x02a0 0x04a4 0x06 0x01 462 + 463 + #define MX91_PAD_ENET2_RXC__ENET2_RGMII_RXC 0x00f4 0x02a4 0x0000 0x00 0x00 464 + #define MX91_PAD_ENET2_RXC__ENET2_RX_ER 0x00f4 0x02a4 0x0000 0x01 0x00 465 + #define MX91_PAD_ENET2_RXC__FLEXIO2_FLEXIO23 0x00f4 0x02a4 0x0000 0x04 0x00 466 + #define MX91_PAD_ENET2_RXC__GPIO4_IO23 0x00f4 0x02a4 0x0000 0x05 0x00 467 + #define MX91_PAD_ENET2_RXC__MEDIAMIX_CAM_DATA6 0x00f4 0x02a4 0x04a8 0x06 0x01 468 + 469 + #define MX91_PAD_ENET2_RD0__ENET2_RGMII_RD0 0x00f8 0x02a8 0x0000 0x00 0x00 470 + #define MX91_PAD_ENET2_RD0__LPUART4_RX 0x00f8 0x02a8 0x047c 0x01 0x01 471 + #define MX91_PAD_ENET2_RD0__FLEXIO2_FLEXIO24 0x00f8 0x02a8 0x0000 0x04 0x00 472 + #define MX91_PAD_ENET2_RD0__GPIO4_IO24 0x00f8 0x02a8 0x0000 0x05 0x00 473 + #define MX91_PAD_ENET2_RD0__MEDIAMIX_CAM_DATA7 0x00f8 0x02a8 0x04ac 0x06 0x01 474 + 475 + #define MX91_PAD_ENET2_RD1__ENET2_RGMII_RD1 0x00fc 0x02ac 0x0000 0x00 0x00 476 + #define MX91_PAD_ENET2_RD1__SPDIF_IN 0x00fc 0x02ac 0x04e4 0x01 0x01 477 + #define MX91_PAD_ENET2_RD1__FLEXIO2_FLEXIO25 0x00fc 0x02ac 0x0000 0x04 0x00 478 + #define MX91_PAD_ENET2_RD1__GPIO4_IO25 0x00fc 0x02ac 0x0000 0x05 0x00 479 + #define MX91_PAD_ENET2_RD1__MEDIAMIX_CAM_DATA8 0x00fc 0x02ac 0x04b0 0x06 0x01 480 + 481 + #define MX91_PAD_ENET2_RD2__ENET2_RGMII_RD2 0x0100 0x02b0 0x0000 0x00 0x00 482 + #define MX91_PAD_ENET2_RD2__LPUART4_CTS_B 0x0100 0x02b0 0x0478 0x01 0x01 483 + #define MX91_PAD_ENET2_RD2__SAI2_MCLK 0x0100 0x02b0 0x0000 0x02 0x00 484 + #define MX91_PAD_ENET2_RD2__MQS2_RIGHT 0x0100 0x02b0 0x0000 0x03 0x00 485 + #define MX91_PAD_ENET2_RD2__FLEXIO2_FLEXIO26 0x0100 0x02b0 0x0000 0x04 0x00 486 + #define MX91_PAD_ENET2_RD2__GPIO4_IO26 0x0100 0x02b0 0x0000 0x05 0x00 487 + #define MX91_PAD_ENET2_RD2__MEDIAMIX_CAM_DATA9 0x0100 0x02b0 0x04b4 0x06 0x01 488 + 489 + #define MX91_PAD_ENET2_RD3__ENET2_RGMII_RD3 0x0104 0x02b4 0x0000 0x00 0x00 490 + #define MX91_PAD_ENET2_RD3__SPDIF_OUT 0x0104 0x02b4 0x0000 0x01 0x00 491 + #define MX91_PAD_ENET2_RD3__SPDIF_IN 0x0104 0x02b4 0x04e4 0x02 0x02 492 + #define MX91_PAD_ENET2_RD3__MQS2_LEFT 0x0104 0x02b4 0x0000 0x03 0x00 493 + #define MX91_PAD_ENET2_RD3__FLEXIO2_FLEXIO27 0x0104 0x02b4 0x0000 0x04 0x00 494 + #define MX91_PAD_ENET2_RD3__GPIO4_IO27 0x0104 0x02b4 0x0000 0x05 0x00 495 + 496 + #define MX91_PAD_SD1_CLK__FLEXIO1_FLEXIO8 0x0108 0x02b8 0x038c 0x04 0x01 497 + #define MX91_PAD_SD1_CLK__GPIO3_IO8 0x0108 0x02b8 0x0000 0x05 0x00 498 + #define MX91_PAD_SD1_CLK__USDHC1_CLK 0x0108 0x02b8 0x0000 0x00 0x00 499 + #define MX91_PAD_SD1_CLK__LPSPI2_SCK 0x0108 0x02b8 0x043c 0x03 0x01 500 + 501 + #define MX91_PAD_SD1_CMD__USDHC1_CMD 0x010c 0x02bc 0x0000 0x00 0x00 502 + #define MX91_PAD_SD1_CMD__FLEXIO1_FLEXIO9 0x010c 0x02bc 0x0390 0x04 0x01 503 + #define MX91_PAD_SD1_CMD__GPIO3_IO9 0x010c 0x02bc 0x0000 0x05 0x00 504 + #define MX91_PAD_SD1_CMD__LPSPI2_SIN 0x010c 0x02bc 0x0440 0x03 0x01 505 + 506 + #define MX91_PAD_SD1_DATA0__USDHC1_DATA0 0x0110 0x02c0 0x0000 0x00 0x00 507 + #define MX91_PAD_SD1_DATA0__FLEXIO1_FLEXIO10 0x0110 0x02c0 0x0394 0x04 0x01 508 + #define MX91_PAD_SD1_DATA0__GPIO3_IO10 0x0110 0x02c0 0x0000 0x05 0x00 509 + #define MX91_PAD_SD1_DATA0__LPSPI2_PCS0 0x0110 0x02c0 0x0434 0x03 0x01 510 + 511 + #define MX91_PAD_SD1_DATA1__USDHC1_DATA1 0x0114 0x02c4 0x0000 0x00 0x00 512 + #define MX91_PAD_SD1_DATA1__FLEXIO1_FLEXIO11 0x0114 0x02c4 0x0398 0x04 0x01 513 + #define MX91_PAD_SD1_DATA1__GPIO3_IO11 0x0114 0x02c4 0x0000 0x05 0x00 514 + #define MX91_PAD_SD1_DATA1__CCMSRCGPCMIX_INT_BOOT 0x0114 0x02c4 0x0000 0x06 0x00 515 + #define MX91_PAD_SD1_DATA1__LPSPI2_SOUT 0x0114 0x02c4 0x0444 0x03 0x01 516 + 517 + #define MX91_PAD_SD1_DATA2__USDHC1_DATA2 0x0118 0x02c8 0x0000 0x00 0x00 518 + #define MX91_PAD_SD1_DATA2__FLEXIO1_FLEXIO12 0x0118 0x02c8 0x0000 0x04 0x00 519 + #define MX91_PAD_SD1_DATA2__GPIO3_IO12 0x0118 0x02c8 0x0000 0x05 0x00 520 + #define MX91_PAD_SD1_DATA2__CCMSRCGPCMIX_PMIC_READY 0x0118 0x02c8 0x0000 0x06 0x00 521 + #define MX91_PAD_SD1_DATA2__LPSPI2_PCS1 0x0118 0x02c8 0x0438 0x03 0x00 522 + 523 + #define MX91_PAD_SD1_DATA3__USDHC1_DATA3 0x011c 0x02cc 0x0000 0x00 0x00 524 + #define MX91_PAD_SD1_DATA3__FLEXSPI1_A_SS1_B 0x011c 0x02cc 0x0000 0x01 0x00 525 + #define MX91_PAD_SD1_DATA3__FLEXIO1_FLEXIO13 0x011c 0x02cc 0x039c 0x04 0x01 526 + #define MX91_PAD_SD1_DATA3__GPIO3_IO13 0x011c 0x02cc 0x0000 0x05 0x00 527 + #define MX91_PAD_SD1_DATA3__LPSPI1_PCS1 0x011c 0x02cc 0x0424 0x03 0x00 528 + 529 + #define MX91_PAD_SD1_DATA4__USDHC1_DATA4 0x0120 0x02d0 0x0000 0x00 0x00 530 + #define MX91_PAD_SD1_DATA4__FLEXSPI1_A_DATA4 0x0120 0x02d0 0x0000 0x01 0x00 531 + #define MX91_PAD_SD1_DATA4__FLEXIO1_FLEXIO14 0x0120 0x02d0 0x03a0 0x04 0x01 532 + #define MX91_PAD_SD1_DATA4__GPIO3_IO14 0x0120 0x02d0 0x0000 0x05 0x00 533 + #define MX91_PAD_SD1_DATA4__LPSPI1_PCS0 0x0120 0x02d0 0x0420 0x03 0x00 534 + 535 + #define MX91_PAD_SD1_DATA5__USDHC1_DATA5 0x0124 0x02d4 0x0000 0x00 0x00 536 + #define MX91_PAD_SD1_DATA5__FLEXSPI1_A_DATA5 0x0124 0x02d4 0x0000 0x01 0x00 537 + #define MX91_PAD_SD1_DATA5__USDHC1_RESET_B 0x0124 0x02d4 0x0000 0x02 0x00 538 + #define MX91_PAD_SD1_DATA5__FLEXIO1_FLEXIO15 0x0124 0x02d4 0x03a4 0x04 0x01 539 + #define MX91_PAD_SD1_DATA5__GPIO3_IO15 0x0124 0x02d4 0x0000 0x05 0x00 540 + #define MX91_PAD_SD1_DATA5__LPSPI1_SIN 0x0124 0x02d4 0x042c 0x03 0x00 541 + 542 + #define MX91_PAD_SD1_DATA6__USDHC1_DATA6 0x0128 0x02d8 0x0000 0x00 0x00 543 + #define MX91_PAD_SD1_DATA6__FLEXSPI1_A_DATA6 0x0128 0x02d8 0x0000 0x01 0x00 544 + #define MX91_PAD_SD1_DATA6__USDHC1_CD_B 0x0128 0x02d8 0x0000 0x02 0x00 545 + #define MX91_PAD_SD1_DATA6__FLEXIO1_FLEXIO16 0x0128 0x02d8 0x03a8 0x04 0x01 546 + #define MX91_PAD_SD1_DATA6__GPIO3_IO16 0x0128 0x02d8 0x0000 0x05 0x00 547 + #define MX91_PAD_SD1_DATA6__LPSPI1_SCK 0x0128 0x02d8 0x0428 0x03 0x00 548 + 549 + #define MX91_PAD_SD1_DATA7__USDHC1_DATA7 0x012c 0x02dc 0x0000 0x00 0x00 550 + #define MX91_PAD_SD1_DATA7__FLEXSPI1_A_DATA7 0x012c 0x02dc 0x0000 0x01 0x00 551 + #define MX91_PAD_SD1_DATA7__USDHC1_WP 0x012c 0x02dc 0x0000 0x02 0x00 552 + #define MX91_PAD_SD1_DATA7__FLEXIO1_FLEXIO17 0x012c 0x02dc 0x03ac 0x04 0x01 553 + #define MX91_PAD_SD1_DATA7__GPIO3_IO17 0x012c 0x02dc 0x0000 0x05 0x00 554 + #define MX91_PAD_SD1_DATA7__LPSPI1_SOUT 0x012c 0x02dc 0x0430 0x03 0x00 555 + 556 + #define MX91_PAD_SD1_STROBE__USDHC1_STROBE 0x0130 0x02e0 0x0000 0x00 0x00 557 + #define MX91_PAD_SD1_STROBE__FLEXSPI1_A_DQS 0x0130 0x02e0 0x0000 0x01 0x00 558 + #define MX91_PAD_SD1_STROBE__FLEXIO1_FLEXIO18 0x0130 0x02e0 0x03b0 0x04 0x01 559 + #define MX91_PAD_SD1_STROBE__GPIO3_IO18 0x0130 0x02e0 0x0000 0x05 0x00 560 + 561 + #define MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x0134 0x02e4 0x0000 0x00 0x00 562 + #define MX91_PAD_SD2_VSELECT__USDHC2_WP 0x0134 0x02e4 0x0000 0x01 0x00 563 + #define MX91_PAD_SD2_VSELECT__LPTMR2_ALT3 0x0134 0x02e4 0x0450 0x02 0x01 564 + #define MX91_PAD_SD2_VSELECT__FLEXIO1_FLEXIO19 0x0134 0x02e4 0x0000 0x04 0x00 565 + #define MX91_PAD_SD2_VSELECT__GPIO3_IO19 0x0134 0x02e4 0x0000 0x05 0x00 566 + #define MX91_PAD_SD2_VSELECT__CCMSRCGPCMIX_EXT_CLK1 0x0134 0x02e4 0x0368 0x06 0x00 567 + 568 + #define MX91_PAD_SD3_CLK__USDHC3_CLK 0x0138 0x02e8 0x04e8 0x00 0x01 569 + #define MX91_PAD_SD3_CLK__FLEXSPI1_A_SCLK 0x0138 0x02e8 0x0000 0x01 0x00 570 + #define MX91_PAD_SD3_CLK__LPUART1_CTS_B 0x0138 0x02e8 0x0454 0x02 0x00 571 + #define MX91_PAD_SD3_CLK__FLEXIO1_FLEXIO20 0x0138 0x02e8 0x03b4 0x04 0x01 572 + #define MX91_PAD_SD3_CLK__GPIO3_IO20 0x0138 0x02e8 0x0000 0x05 0x00 573 + 574 + #define MX91_PAD_SD3_CMD__USDHC3_CMD 0x013c 0x02ec 0x04ec 0x00 0x01 575 + #define MX91_PAD_SD3_CMD__FLEXSPI1_A_SS0_B 0x013c 0x02ec 0x0000 0x01 0x00 576 + #define MX91_PAD_SD3_CMD__LPUART1_RTS_B 0x013c 0x02ec 0x0000 0x02 0x00 577 + #define MX91_PAD_SD3_CMD__FLEXIO1_FLEXIO21 0x013c 0x02ec 0x0000 0x04 0x00 578 + #define MX91_PAD_SD3_CMD__GPIO3_IO21 0x013c 0x02ec 0x0000 0x05 0x00 579 + 580 + #define MX91_PAD_SD3_DATA0__USDHC3_DATA0 0x0140 0x02f0 0x04f0 0x00 0x01 581 + #define MX91_PAD_SD3_DATA0__FLEXSPI1_A_DATA0 0x0140 0x02f0 0x0000 0x01 0x00 582 + #define MX91_PAD_SD3_DATA0__LPUART2_CTS_B 0x0140 0x02f0 0x0460 0x02 0x00 583 + #define MX91_PAD_SD3_DATA0__FLEXIO1_FLEXIO22 0x0140 0x02f0 0x03b8 0x04 0x01 584 + #define MX91_PAD_SD3_DATA0__GPIO3_IO22 0x0140 0x02f0 0x0000 0x05 0x00 585 + 586 + #define MX91_PAD_SD3_DATA1__USDHC3_DATA1 0x0144 0x02f4 0x04f4 0x00 0x01 587 + #define MX91_PAD_SD3_DATA1__FLEXSPI1_A_DATA1 0x0144 0x02f4 0x0000 0x01 0x00 588 + #define MX91_PAD_SD3_DATA1__LPUART2_RTS_B 0x0144 0x02f4 0x0000 0x02 0x00 589 + #define MX91_PAD_SD3_DATA1__FLEXIO1_FLEXIO23 0x0144 0x02f4 0x03bc 0x04 0x01 590 + #define MX91_PAD_SD3_DATA1__GPIO3_IO23 0x0144 0x02f4 0x0000 0x05 0x00 591 + 592 + #define MX91_PAD_SD3_DATA2__USDHC3_DATA2 0x0148 0x02f8 0x04f8 0x00 0x01 593 + #define MX91_PAD_SD3_DATA2__LPI2C4_SDA 0x0148 0x02f8 0x03fc 0x02 0x01 594 + #define MX91_PAD_SD3_DATA2__FLEXSPI1_A_DATA2 0x0148 0x02f8 0x0000 0x01 0x00 595 + #define MX91_PAD_SD3_DATA2__FLEXIO1_FLEXIO24 0x0148 0x02f8 0x03c0 0x04 0x01 596 + #define MX91_PAD_SD3_DATA2__GPIO3_IO24 0x0148 0x02f8 0x0000 0x05 0x00 597 + 598 + #define MX91_PAD_SD3_DATA3__USDHC3_DATA3 0x014c 0x02fc 0x04fc 0x00 0x01 599 + #define MX91_PAD_SD3_DATA3__FLEXSPI1_A_DATA3 0x014c 0x02fc 0x0000 0x01 0x00 600 + #define MX91_PAD_SD3_DATA3__LPI2C4_SCL 0x014c 0x02fc 0x03f8 0x02 0x01 601 + #define MX91_PAD_SD3_DATA3__FLEXIO1_FLEXIO25 0x014c 0x02fc 0x03c4 0x04 0x01 602 + #define MX91_PAD_SD3_DATA3__GPIO3_IO25 0x014c 0x02fc 0x0000 0x05 0x00 603 + 604 + #define MX91_PAD_SD2_CD_B__USDHC2_CD_B 0x0150 0x0300 0x0000 0x00 0x00 605 + #define MX91_PAD_SD2_CD_B__ENET_QOS_1588_EVENT0_IN 0x0150 0x0300 0x0000 0x01 0x00 606 + #define MX91_PAD_SD2_CD_B__I3C2_SCL 0x0150 0x0300 0x03cc 0x02 0x01 607 + #define MX91_PAD_SD2_CD_B__FLEXIO1_FLEXIO0 0x0150 0x0300 0x036c 0x04 0x01 608 + #define MX91_PAD_SD2_CD_B__GPIO3_IO0 0x0150 0x0300 0x0000 0x05 0x00 609 + #define MX91_PAD_SD2_CD_B__LPI2C1_SCL 0x0150 0x0300 0x03e0 0x03 0x01 610 + 611 + #define MX91_PAD_SD2_CLK__USDHC2_CLK 0x0154 0x0304 0x0000 0x00 0x00 612 + #define MX91_PAD_SD2_CLK__ENET_QOS_1588_EVENT0_OUT 0x0154 0x0304 0x0000 0x01 0x00 613 + #define MX91_PAD_SD2_CLK__I2C1_SDA 0x0154 0x0304 0x0000 0x03 0x00 614 + #define MX91_PAD_SD2_CLK__I3C2_SDA 0x0154 0x0304 0x03d0 0x02 0x01 615 + #define MX91_PAD_SD2_CLK__FLEXIO1_FLEXIO1 0x0154 0x0304 0x0370 0x04 0x01 616 + #define MX91_PAD_SD2_CLK__GPIO3_IO1 0x0154 0x0304 0x0000 0x05 0x00 617 + #define MX91_PAD_SD2_CLK__CCMSRCGPCMIX_OBSERVE0 0x0154 0x0304 0x0000 0x06 0x00 618 + #define MX91_PAD_SD2_CLK__LPI2C1_SDA 0x0154 0x0304 0x03e4 0x03 0x01 619 + 620 + #define MX91_PAD_SD2_CMD__USDHC2_CMD 0x0158 0x0308 0x0000 0x00 0x00 621 + #define MX91_PAD_SD2_CMD__ENET2_1588_EVENT0_IN 0x0158 0x0308 0x0000 0x01 0x00 622 + #define MX91_PAD_SD2_CMD__I3C2_PUR 0x0158 0x0308 0x0000 0x02 0x00 623 + #define MX91_PAD_SD2_CMD__I3C2_PUR_B 0x0158 0x0308 0x0000 0x03 0x00 624 + #define MX91_PAD_SD2_CMD__FLEXIO1_FLEXIO2 0x0158 0x0308 0x0374 0x04 0x01 625 + #define MX91_PAD_SD2_CMD__GPIO3_IO2 0x0158 0x0308 0x0000 0x05 0x00 626 + #define MX91_PAD_SD2_CMD__CCMSRCGPCMIX_OBSERVE1 0x0158 0x0308 0x0000 0x06 0x00 627 + 628 + #define MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x015c 0x030c 0x0000 0x00 0x00 629 + #define MX91_PAD_SD2_DATA0__ENET2_1588_EVENT0_OUT 0x015c 0x030c 0x0000 0x01 0x00 630 + #define MX91_PAD_SD2_DATA0__CAN2_TX 0x015c 0x030c 0x0000 0x02 0x00 631 + #define MX91_PAD_SD2_DATA0__FLEXIO1_FLEXIO3 0x015c 0x030c 0x0378 0x04 0x01 632 + #define MX91_PAD_SD2_DATA0__GPIO3_IO3 0x015c 0x030c 0x0000 0x05 0x00 633 + #define MX91_PAD_SD2_DATA0__LPUART1_TX 0x015c 0x030c 0x045c 0x03 0x00 634 + #define MX91_PAD_SD2_DATA0__CCMSRCGPCMIX_OBSERVE2 0x015c 0x030c 0x0000 0x06 0x00 635 + 636 + #define MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x0160 0x0310 0x0000 0x00 0x00 637 + #define MX91_PAD_SD2_DATA1__ENET2_1588_EVENT1_IN 0x0160 0x0310 0x0000 0x01 0x00 638 + #define MX91_PAD_SD2_DATA1__CAN2_RX 0x0160 0x0310 0x0364 0x02 0x03 639 + #define MX91_PAD_SD2_DATA1__FLEXIO1_FLEXIO4 0x0160 0x0310 0x037c 0x04 0x01 640 + #define MX91_PAD_SD2_DATA1__GPIO3_IO4 0x0160 0x0310 0x0000 0x05 0x00 641 + #define MX91_PAD_SD2_DATA1__LPUART1_RX 0x0160 0x0310 0x0458 0x03 0x00 642 + #define MX91_PAD_SD2_DATA1__CCMSRCGPCMIX_WAIT 0x0160 0x0310 0x0000 0x06 0x00 643 + 644 + #define MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x0164 0x0314 0x0000 0x00 0x00 645 + #define MX91_PAD_SD2_DATA2__ENET2_1588_EVENT1_OUT 0x0164 0x0314 0x0000 0x01 0x00 646 + #define MX91_PAD_SD2_DATA2__MQS2_RIGHT 0x0164 0x0314 0x0000 0x02 0x00 647 + #define MX91_PAD_SD2_DATA2__FLEXIO1_FLEXIO5 0x0164 0x0314 0x0380 0x04 0x01 648 + #define MX91_PAD_SD2_DATA2__GPIO3_IO5 0x0164 0x0314 0x0000 0x05 0x00 649 + #define MX91_PAD_SD2_DATA2__LPUART2_TX 0x0164 0x0314 0x0468 0x03 0x00 650 + #define MX91_PAD_SD2_DATA2__CCMSRCGPCMIX_STOP 0x0164 0x0314 0x0000 0x06 0x00 651 + 652 + #define MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x0168 0x0318 0x0000 0x00 0x00 653 + #define MX91_PAD_SD2_DATA3__LPTMR2_ALT1 0x0168 0x0318 0x0448 0x01 0x01 654 + #define MX91_PAD_SD2_DATA3__MQS2_LEFT 0x0168 0x0318 0x0000 0x02 0x00 655 + #define MX91_PAD_SD2_DATA3__FLEXIO1_FLEXIO6 0x0168 0x0318 0x0384 0x04 0x01 656 + #define MX91_PAD_SD2_DATA3__GPIO3_IO6 0x0168 0x0318 0x0000 0x05 0x00 657 + #define MX91_PAD_SD2_DATA3__LPUART2_RX 0x0168 0x0318 0x0464 0x03 0x00 658 + #define MX91_PAD_SD2_DATA3__CCMSRCGPCMIX_EARLY_RESET 0x0168 0x0318 0x0000 0x06 0x00 659 + 660 + #define MX91_PAD_SD2_RESET_B__USDHC2_RESET_B 0x016c 0x031c 0x0000 0x00 0x00 661 + #define MX91_PAD_SD2_RESET_B__LPTMR2_ALT2 0x016c 0x031c 0x044c 0x01 0x01 662 + #define MX91_PAD_SD2_RESET_B__FLEXIO1_FLEXIO7 0x016c 0x031c 0x0388 0x04 0x01 663 + #define MX91_PAD_SD2_RESET_B__GPIO3_IO7 0x016c 0x031c 0x0000 0x05 0x00 664 + #define MX91_PAD_SD2_RESET_B__CCMSRCGPCMIX_SYSTEM_RESET 0x016c 0x031c 0x0000 0x06 0x00 665 + 666 + #define MX91_PAD_I2C1_SCL__LPI2C1_SCL 0x0170 0x0320 0x03e0 0x00 0x02 667 + #define MX91_PAD_I2C1_SCL__I3C1_SCL 0x0170 0x0320 0x0000 0x01 0x00 668 + #define MX91_PAD_I2C1_SCL__LPUART1_DCB_B 0x0170 0x0320 0x0000 0x02 0x00 669 + #define MX91_PAD_I2C1_SCL__TPM2_CH0 0x0170 0x0320 0x0000 0x03 0x00 670 + #define MX91_PAD_I2C1_SCL__GPIO1_IO0 0x0170 0x0320 0x0000 0x05 0x00 671 + 672 + #define MX91_PAD_I2C1_SDA__LPI2C1_SDA 0x0174 0x0324 0x03e4 0x00 0x02 673 + #define MX91_PAD_I2C1_SDA__I3C1_SDA 0x0174 0x0324 0x0000 0x01 0x00 674 + #define MX91_PAD_I2C1_SDA__LPUART1_RIN_B 0x0174 0x0324 0x0000 0x02 0x00 675 + #define MX91_PAD_I2C1_SDA__TPM2_CH1 0x0174 0x0324 0x0000 0x03 0x00 676 + #define MX91_PAD_I2C1_SDA__GPIO1_IO1 0x0174 0x0324 0x0000 0x05 0x00 677 + 678 + #define MX91_PAD_I2C2_SCL__LPI2C2_SCL 0x0178 0x0328 0x03e8 0x00 0x01 679 + #define MX91_PAD_I2C2_SCL__I3C1_PUR 0x0178 0x0328 0x0000 0x01 0x00 680 + #define MX91_PAD_I2C2_SCL__LPUART2_DCB_B 0x0178 0x0328 0x0000 0x02 0x00 681 + #define MX91_PAD_I2C2_SCL__TPM2_CH2 0x0178 0x0328 0x0000 0x03 0x00 682 + #define MX91_PAD_I2C2_SCL__SAI1_RX_SYNC 0x0178 0x0328 0x0000 0x04 0x00 683 + #define MX91_PAD_I2C2_SCL__GPIO1_IO2 0x0178 0x0328 0x0000 0x05 0x00 684 + #define MX91_PAD_I2C2_SCL__I3C1_PUR_B 0x0178 0x0328 0x0000 0x06 0x00 685 + 686 + #define MX91_PAD_I2C2_SDA__LPI2C2_SDA 0x017c 0x032c 0x03ec 0x00 0x01 687 + #define MX91_PAD_I2C2_SDA__LPUART2_RIN_B 0x017c 0x032c 0x0000 0x02 0x00 688 + #define MX91_PAD_I2C2_SDA__TPM2_CH3 0x017c 0x032c 0x0000 0x03 0x00 689 + #define MX91_PAD_I2C2_SDA__SAI1_RX_BCLK 0x017c 0x032c 0x0000 0x04 0x00 690 + #define MX91_PAD_I2C2_SDA__GPIO1_IO3 0x017c 0x032c 0x0000 0x05 0x00 691 + 692 + #define MX91_PAD_UART1_RXD__LPUART1_RX 0x0180 0x0330 0x0458 0x00 0x01 693 + #define MX91_PAD_UART1_RXD__ELE_UART_RX 0x0180 0x0330 0x0000 0x01 0x00 694 + #define MX91_PAD_UART1_RXD__LPSPI2_SIN 0x0180 0x0330 0x0440 0x02 0x02 695 + #define MX91_PAD_UART1_RXD__TPM1_CH0 0x0180 0x0330 0x0000 0x03 0x00 696 + #define MX91_PAD_UART1_RXD__GPIO1_IO4 0x0180 0x0330 0x0000 0x05 0x00 697 + 698 + #define MX91_PAD_UART1_TXD__LPUART1_TX 0x0184 0x0334 0x045c 0x00 0x01 699 + #define MX91_PAD_UART1_TXD__ELE_UART_TX 0x0184 0x0334 0x0000 0x01 0x00 700 + #define MX91_PAD_UART1_TXD__LPSPI2_PCS0 0x0184 0x0334 0x0434 0x02 0x02 701 + #define MX91_PAD_UART1_TXD__TPM1_CH1 0x0184 0x0334 0x0000 0x03 0x00 702 + #define MX91_PAD_UART1_TXD__GPIO1_IO5 0x0184 0x0334 0x0000 0x05 0x00 703 + 704 + #define MX91_PAD_UART2_RXD__LPUART2_RX 0x0188 0x0338 0x0464 0x00 0x01 705 + #define MX91_PAD_UART2_RXD__LPUART1_CTS_B 0x0188 0x0338 0x0454 0x01 0x01 706 + #define MX91_PAD_UART2_RXD__LPSPI2_SOUT 0x0188 0x0338 0x0444 0x02 0x02 707 + #define MX91_PAD_UART2_RXD__TPM1_CH2 0x0188 0x0338 0x0000 0x03 0x00 708 + #define MX91_PAD_UART2_RXD__SAI1_MCLK 0x0188 0x0338 0x04d4 0x04 0x00 709 + #define MX91_PAD_UART2_RXD__GPIO1_IO6 0x0188 0x0338 0x0000 0x05 0x00 710 + 711 + #define MX91_PAD_UART2_TXD__LPUART2_TX 0x018c 0x033c 0x0468 0x00 0x01 712 + #define MX91_PAD_UART2_TXD__LPUART1_RTS_B 0x018c 0x033c 0x0000 0x01 0x00 713 + #define MX91_PAD_UART2_TXD__LPSPI2_SCK 0x018c 0x033c 0x043c 0x02 0x02 714 + #define MX91_PAD_UART2_TXD__TPM1_CH3 0x018c 0x033c 0x0000 0x03 0x00 715 + #define MX91_PAD_UART2_TXD__GPIO1_IO7 0x018c 0x033c 0x0000 0x05 0x00 716 + #define MX91_PAD_UART2_TXD__SAI3_TX_SYNC 0x018c 0x033c 0x04e0 0x07 0x02 717 + 718 + #define MX91_PAD_PDM_CLK__PDM_CLK 0x0190 0x0340 0x0000 0x00 0x00 719 + #define MX91_PAD_PDM_CLK__MQS1_LEFT 0x0190 0x0340 0x0000 0x01 0x00 720 + #define MX91_PAD_PDM_CLK__LPTMR1_ALT1 0x0190 0x0340 0x0000 0x04 0x00 721 + #define MX91_PAD_PDM_CLK__GPIO1_IO8 0x0190 0x0340 0x0000 0x05 0x00 722 + #define MX91_PAD_PDM_CLK__CAN1_TX 0x0190 0x0340 0x0000 0x06 0x00 723 + 724 + #define MX91_PAD_PDM_BIT_STREAM0__PDM_BIT_STREAM0 0x0194 0x0344 0x04c4 0x00 0x02 725 + #define MX91_PAD_PDM_BIT_STREAM0__MQS1_RIGHT 0x0194 0x0344 0x0000 0x01 0x00 726 + #define MX91_PAD_PDM_BIT_STREAM0__LPSPI1_PCS1 0x0194 0x0344 0x0424 0x02 0x01 727 + #define MX91_PAD_PDM_BIT_STREAM0__TPM1_EXTCLK 0x0194 0x0344 0x0000 0x03 0x00 728 + #define MX91_PAD_PDM_BIT_STREAM0__LPTMR1_ALT2 0x0194 0x0344 0x0000 0x04 0x00 729 + #define MX91_PAD_PDM_BIT_STREAM0__GPIO1_IO9 0x0194 0x0344 0x0000 0x05 0x00 730 + #define MX91_PAD_PDM_BIT_STREAM0__CAN1_RX 0x0194 0x0344 0x0360 0x06 0x01 731 + 732 + #define MX91_PAD_PDM_BIT_STREAM1__PDM_BIT_STREAM1 0x0198 0x0348 0x04c8 0x00 0x02 733 + #define MX91_PAD_PDM_BIT_STREAM1__LPSPI2_PCS1 0x0198 0x0348 0x0438 0x02 0x01 734 + #define MX91_PAD_PDM_BIT_STREAM1__TPM2_EXTCLK 0x0198 0x0348 0x0000 0x03 0x00 735 + #define MX91_PAD_PDM_BIT_STREAM1__LPTMR1_ALT3 0x0198 0x0348 0x0000 0x04 0x00 736 + #define MX91_PAD_PDM_BIT_STREAM1__GPIO1_IO10 0x0198 0x0348 0x0000 0x05 0x00 737 + #define MX91_PAD_PDM_BIT_STREAM1__CCMSRCGPCMIX_EXT_CLK1 0x0198 0x0348 0x0368 0x06 0x01 738 + 739 + #define MX91_PAD_SAI1_TXFS__SAI1_TX_SYNC 0x019c 0x034c 0x0000 0x00 0x00 740 + #define MX91_PAD_SAI1_TXFS__SAI1_TX_DATA1 0x019c 0x034c 0x0000 0x01 0x00 741 + #define MX91_PAD_SAI1_TXFS__LPSPI1_PCS0 0x019c 0x034c 0x0420 0x02 0x01 742 + #define MX91_PAD_SAI1_TXFS__LPUART2_DTR_B 0x019c 0x034c 0x0000 0x03 0x00 743 + #define MX91_PAD_SAI1_TXFS__MQS1_LEFT 0x019c 0x034c 0x0000 0x04 0x00 744 + #define MX91_PAD_SAI1_TXFS__GPIO1_IO11 0x019c 0x034c 0x0000 0x05 0x00 745 + 746 + #define MX91_PAD_SAI1_TXC__SAI1_TX_BCLK 0x01a0 0x0350 0x0000 0x00 0x00 747 + #define MX91_PAD_SAI1_TXC__LPUART2_CTS_B 0x01a0 0x0350 0x0460 0x01 0x01 748 + #define MX91_PAD_SAI1_TXC__LPSPI1_SIN 0x01a0 0x0350 0x042c 0x02 0x01 749 + #define MX91_PAD_SAI1_TXC__LPUART1_DSR_B 0x01a0 0x0350 0x0000 0x03 0x00 750 + #define MX91_PAD_SAI1_TXC__CAN1_RX 0x01a0 0x0350 0x0360 0x04 0x02 751 + #define MX91_PAD_SAI1_TXC__GPIO1_IO12 0x01a0 0x0350 0x0000 0x05 0x00 752 + 753 + #define MX91_PAD_SAI1_TXD0__SAI1_TX_DATA0 0x01a4 0x0354 0x0000 0x00 0x00 754 + #define MX91_PAD_SAI1_TXD0__LPUART2_RTS_B 0x01a4 0x0354 0x0000 0x01 0x00 755 + #define MX91_PAD_SAI1_TXD0__LPSPI1_SCK 0x01a4 0x0354 0x0428 0x02 0x01 756 + #define MX91_PAD_SAI1_TXD0__LPUART1_DTR_B 0x01a4 0x0354 0x0000 0x03 0x00 757 + #define MX91_PAD_SAI1_TXD0__CAN1_TX 0x01a4 0x0354 0x0000 0x04 0x00 758 + #define MX91_PAD_SAI1_TXD0__GPIO1_IO13 0x01a4 0x0354 0x0000 0x05 0x00 759 + #define MX91_PAD_SAI1_TXD0__SAI1_MCLK 0x01a4 0x0354 0x04d4 0x06 0x01 760 + 761 + #define MX91_PAD_SAI1_RXD0__SAI1_RX_DATA0 0x01a8 0x0358 0x0000 0x00 0x00 762 + #define MX91_PAD_SAI1_RXD0__SAI1_MCLK 0x01a8 0x0358 0x04d4 0x01 0x02 763 + #define MX91_PAD_SAI1_RXD0__LPSPI1_SOUT 0x01a8 0x0358 0x0430 0x02 0x01 764 + #define MX91_PAD_SAI1_RXD0__LPUART2_DSR_B 0x01a8 0x0358 0x0000 0x03 0x00 765 + #define MX91_PAD_SAI1_RXD0__MQS1_RIGHT 0x01a8 0x0358 0x0000 0x04 0x00 766 + #define MX91_PAD_SAI1_RXD0__GPIO1_IO14 0x01a8 0x0358 0x0000 0x05 0x00 767 + 768 + #define MX91_PAD_WDOG_ANY__WDOG1_WDOG_ANY 0x01ac 0x035c 0x0000 0x00 0x00 769 + #define MX91_PAD_WDOG_ANY__GPIO1_IO15 0x01ac 0x035c 0x0000 0x05 0x00 770 + #endif /* __DTS_IMX91_PINFUNC_H */
+739
arch/arm64/boot/dts/freescale/imx91-tqma9131-mba91xxca.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2 + /* 3 + * Copyright (c) 2022-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 + * D-82229 Seefeld, Germany. 5 + * Author: Markus Niebel 6 + * Author: Alexander Stein 7 + */ 8 + /dts-v1/; 9 + 10 + #include <dt-bindings/input/input.h> 11 + #include <dt-bindings/leds/common.h> 12 + #include <dt-bindings/net/ti-dp83867.h> 13 + #include <dt-bindings/pwm/pwm.h> 14 + #include <dt-bindings/usb/pd.h> 15 + #include "imx91-tqma9131.dtsi" 16 + 17 + /{ 18 + model = "TQ-Systems i.MX91 TQMa91xxLA/TQMa91xxCA on MBa91xxCA starter kit"; 19 + compatible = "tq,imx91-tqma9131-mba91xxca", "tq,imx91-tqma9131", "fsl,imx91"; 20 + chassis-type = "embedded"; 21 + 22 + chosen { 23 + stdout-path = &lpuart1; 24 + }; 25 + 26 + aliases { 27 + eeprom0 = &eeprom0; 28 + ethernet0 = &eqos; 29 + ethernet1 = &fec; 30 + gpio0 = &gpio1; 31 + gpio1 = &gpio2; 32 + gpio2 = &gpio3; 33 + gpio3 = &gpio4; 34 + i2c0 = &lpi2c1; 35 + i2c1 = &lpi2c2; 36 + i2c2 = &lpi2c3; 37 + mmc0 = &usdhc1; 38 + mmc1 = &usdhc2; 39 + serial0 = &lpuart1; 40 + serial1 = &lpuart2; 41 + rtc0 = &pcf85063; 42 + rtc1 = &bbnsm_rtc; 43 + }; 44 + 45 + backlight: backlight { 46 + compatible = "pwm-backlight"; 47 + pwms = <&tpm2 2 5000000 0>; 48 + brightness-levels = <0 4 8 16 32 64 128 255>; 49 + default-brightness-level = <7>; 50 + power-supply = <&reg_12v0>; 51 + enable-gpios = <&expander2 2 GPIO_ACTIVE_HIGH>; 52 + status = "disabled"; 53 + }; 54 + 55 + display: display { 56 + /* 57 + * Display is not fixed, so compatible has to be added from 58 + * DT overlay 59 + */ 60 + power-supply = <&reg_3v3>; 61 + enable-gpios = <&expander2 1 GPIO_ACTIVE_HIGH>; 62 + backlight = <&backlight>; 63 + status = "disabled"; 64 + 65 + port { 66 + panel_in: endpoint { 67 + }; 68 + }; 69 + }; 70 + 71 + fan0: gpio-fan { 72 + compatible = "gpio-fan"; 73 + gpios = <&expander2 4 GPIO_ACTIVE_HIGH>; 74 + gpio-fan,speed-map = <0 0>, <10000 1>; 75 + fan-supply = <&reg_12v0>; 76 + #cooling-cells = <2>; 77 + }; 78 + 79 + gpio-keys { 80 + compatible = "gpio-keys"; 81 + autorepeat; 82 + 83 + switch-a { 84 + label = "switcha"; 85 + linux,code = <BTN_0>; 86 + gpios = <&expander0 6 GPIO_ACTIVE_LOW>; 87 + wakeup-source; 88 + }; 89 + 90 + switch-b { 91 + label = "switchb"; 92 + linux,code = <BTN_1>; 93 + gpios = <&expander0 7 GPIO_ACTIVE_LOW>; 94 + wakeup-source; 95 + }; 96 + }; 97 + 98 + gpio-leds { 99 + compatible = "gpio-leds"; 100 + 101 + led-1 { 102 + color = <LED_COLOR_ID_GREEN>; 103 + function = LED_FUNCTION_STATUS; 104 + gpios = <&expander2 6 GPIO_ACTIVE_HIGH>; 105 + linux,default-trigger = "default-on"; 106 + }; 107 + 108 + led-2 { 109 + color = <LED_COLOR_ID_AMBER>; 110 + function = LED_FUNCTION_HEARTBEAT; 111 + gpios = <&expander2 7 GPIO_ACTIVE_HIGH>; 112 + linux,default-trigger = "heartbeat"; 113 + }; 114 + }; 115 + 116 + iio-hwmon { 117 + compatible = "iio-hwmon"; 118 + io-channels = <&adc1 0>, <&adc1 1>, <&adc1 2>, <&adc1 3>; 119 + }; 120 + 121 + lvds_encoder: lvds-encoder { 122 + compatible = "ti,sn75lvds83", "lvds-encoder"; 123 + powerdown-gpios = <&expander2 3 GPIO_ACTIVE_LOW>; 124 + power-supply = <&reg_3v3>; 125 + status = "disabled"; 126 + 127 + ports { 128 + #address-cells = <1>; 129 + #size-cells = <0>; 130 + 131 + port@0 { 132 + reg = <0>; 133 + 134 + lvds_encoder_input: endpoint { 135 + }; 136 + }; 137 + 138 + port@1 { 139 + reg = <1>; 140 + 141 + lvds_encoder_output: endpoint { 142 + }; 143 + }; 144 + }; 145 + }; 146 + 147 + reg_3v3: regulator-3v3 { 148 + compatible = "regulator-fixed"; 149 + regulator-name = "V_3V3_MB"; 150 + regulator-min-microvolt = <3300000>; 151 + regulator-max-microvolt = <3300000>; 152 + }; 153 + 154 + reg_5v0: regulator-5v0 { 155 + compatible = "regulator-fixed"; 156 + regulator-name = "V_5V0_MB"; 157 + regulator-min-microvolt = <5000000>; 158 + regulator-max-microvolt = <5000000>; 159 + }; 160 + 161 + reg_12v0: regulator-12v0 { 162 + compatible = "regulator-fixed"; 163 + regulator-name = "V_12V"; 164 + regulator-min-microvolt = <12000000>; 165 + regulator-max-microvolt = <12000000>; 166 + gpio = <&expander1 7 GPIO_ACTIVE_HIGH>; 167 + enable-active-high; 168 + }; 169 + 170 + reg_mpcie_1v5: regulator-mpcie-1v5 { 171 + compatible = "regulator-fixed"; 172 + regulator-name = "V_1V5_MPCIE"; 173 + regulator-min-microvolt = <1500000>; 174 + regulator-max-microvolt = <1500000>; 175 + gpio = <&expander0 2 GPIO_ACTIVE_HIGH>; 176 + enable-active-high; 177 + regulator-always-on; 178 + }; 179 + 180 + reg_mpcie_3v3: regulator-mpcie-3v3 { 181 + compatible = "regulator-fixed"; 182 + regulator-name = "V_3V3_MPCIE"; 183 + regulator-min-microvolt = <3300000>; 184 + regulator-max-microvolt = <3300000>; 185 + gpio = <&expander0 3 GPIO_ACTIVE_HIGH>; 186 + enable-active-high; 187 + regulator-always-on; 188 + }; 189 + }; 190 + 191 + &adc1 { 192 + status = "okay"; 193 + }; 194 + 195 + &eqos { 196 + pinctrl-names = "default"; 197 + pinctrl-0 = <&pinctrl_eqos>; 198 + phy-mode = "rgmii-id"; 199 + phy-handle = <&ethphy_eqos>; 200 + status = "okay"; 201 + 202 + mdio { 203 + compatible = "snps,dwmac-mdio"; 204 + #address-cells = <1>; 205 + #size-cells = <0>; 206 + 207 + ethphy_eqos: ethernet-phy@0 { 208 + compatible = "ethernet-phy-ieee802.3-c22"; 209 + reg = <0>; 210 + pinctrl-names = "default"; 211 + pinctrl-0 = <&pinctrl_eqos_phy>; 212 + reset-gpios = <&expander1 0 GPIO_ACTIVE_LOW>; 213 + reset-assert-us = <500000>; 214 + reset-deassert-us = <50000>; 215 + interrupt-parent = <&gpio3>; 216 + interrupts = <26 IRQ_TYPE_LEVEL_LOW>; 217 + enet-phy-lane-no-swap; 218 + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 219 + ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 220 + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 221 + ti,dp83867-rxctrl-strap-quirk; 222 + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 223 + }; 224 + }; 225 + }; 226 + 227 + &fec { 228 + pinctrl-names = "default"; 229 + pinctrl-0 = <&pinctrl_fec>; 230 + phy-mode = "rgmii-id"; 231 + phy-handle = <&ethphy_fec>; 232 + fsl,magic-packet; 233 + status = "okay"; 234 + 235 + mdio { 236 + #address-cells = <1>; 237 + #size-cells = <0>; 238 + clock-frequency = <5000000>; 239 + 240 + ethphy_fec: ethernet-phy@0 { 241 + compatible = "ethernet-phy-ieee802.3-c22"; 242 + reg = <0>; 243 + pinctrl-names = "default"; 244 + pinctrl-0 = <&pinctrl_fec_phy>; 245 + reset-gpios = <&expander1 1 GPIO_ACTIVE_LOW>; 246 + reset-assert-us = <500000>; 247 + reset-deassert-us = <50000>; 248 + interrupt-parent = <&gpio3>; 249 + interrupts = <27 IRQ_TYPE_LEVEL_LOW>; 250 + enet-phy-lane-no-swap; 251 + ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 252 + ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 253 + ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; 254 + ti,dp83867-rxctrl-strap-quirk; 255 + ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>; 256 + }; 257 + }; 258 + }; 259 + 260 + &flexcan1 { 261 + pinctrl-names = "default"; 262 + pinctrl-0 = <&pinctrl_flexcan1>; 263 + xceiver-supply = <&reg_3v3>; 264 + status = "okay"; 265 + }; 266 + 267 + &gpio1 { 268 + gpio-line-names = 269 + /* 00 */ "", "", "", "PMIC_IRQ#", 270 + /* 04 */ "", "", "", "", 271 + /* 08 */ "", "", "USB_C_ALERT#", "BM2_LCD_INT#", 272 + /* 12 */ "PEX_INT#", "", "RTC_EVENT#", "", 273 + /* 16 */ "", "", "", "", 274 + /* 20 */ "", "", "", "", 275 + /* 24 */ "", "", "", "", 276 + /* 28 */ "", "", "", ""; 277 + }; 278 + 279 + &gpio2 { 280 + gpio-line-names = 281 + /* 00 */ "", "", "", "", 282 + /* 04 */ "", "", "", "", 283 + /* 08 */ "", "", "", "", 284 + /* 12 */ "", "", "", "", 285 + /* 16 */ "", "", "", "", 286 + /* 20 */ "", "", "", "", 287 + /* 24 */ "", "", "", "", 288 + /* 28 */ "", "", "", ""; 289 + }; 290 + 291 + &gpio3 { 292 + pinctrl-names = "default"; 293 + pinctrl-0 = <&pinctrl_jtag>; 294 + gpio-line-names = 295 + /* 00 */ "SD2_CD#", "", "", "", 296 + /* 04 */ "", "", "", "SD2_RST#", 297 + /* 08 */ "", "", "", "", 298 + /* 12 */ "", "", "", "", 299 + /* 16 */ "", "", "", "", 300 + /* 20 */ "", "", "", "", 301 + /* 24 */ "", "", "ENET1_INT#", "ENET2_INT#", 302 + /* 28 */ "", "", "", ""; 303 + }; 304 + 305 + &gpio4 { 306 + gpio-line-names = 307 + /* 00 */ "", "", "", "", 308 + /* 04 */ "", "", "", "", 309 + /* 08 */ "", "", "", "", 310 + /* 12 */ "", "", "", "", 311 + /* 16 */ "", "", "", "", 312 + /* 20 */ "", "", "", "", 313 + /* 24 */ "", "", "", "", 314 + /* 28 */ "", "", "", ""; 315 + }; 316 + 317 + &lpi2c3 { 318 + #address-cells = <1>; 319 + #size-cells = <0>; 320 + clock-frequency = <400000>; 321 + pinctrl-names = "default", "sleep"; 322 + pinctrl-0 = <&pinctrl_lpi2c3>; 323 + pinctrl-1 = <&pinctrl_lpi2c3>; 324 + status = "okay"; 325 + 326 + temperature-sensor@1c { 327 + compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 328 + reg = <0x1c>; 329 + }; 330 + 331 + ptn5110: usb-typec@50 { 332 + compatible = "nxp,ptn5110", "tcpci"; 333 + reg = <0x50>; 334 + pinctrl-names = "default"; 335 + pinctrl-0 = <&pinctrl_typec>; 336 + interrupt-parent = <&gpio1>; 337 + interrupts = <10 IRQ_TYPE_EDGE_FALLING>; 338 + 339 + connector { 340 + compatible = "usb-c-connector"; 341 + label = "X17"; 342 + power-role = "dual"; 343 + data-role = "dual"; 344 + try-power-role = "sink"; 345 + typec-power-opmode = "default"; 346 + pd-disable; 347 + self-powered; 348 + 349 + port { 350 + typec_con_hs: endpoint { 351 + remote-endpoint = <&typec_hs>; 352 + }; 353 + }; 354 + }; 355 + }; 356 + 357 + eeprom2: eeprom@54 { 358 + compatible = "nxp,se97b", "atmel,24c02"; 359 + reg = <0x54>; 360 + pagesize = <16>; 361 + vcc-supply = <&reg_3v3>; 362 + }; 363 + 364 + expander0: gpio@70 { 365 + compatible = "nxp,pca9538"; 366 + reg = <0x70>; 367 + pinctrl-names = "default"; 368 + pinctrl-0 = <&pinctrl_pexp_irq>; 369 + gpio-controller; 370 + #gpio-cells = <2>; 371 + interrupt-controller; 372 + #interrupt-cells = <2>; 373 + interrupt-parent = <&gpio1>; 374 + interrupts = <12 IRQ_TYPE_LEVEL_LOW>; 375 + vcc-supply = <&reg_3v3>; 376 + gpio-line-names = "TEMP_EVENT_MOD#", "MPCIE_WAKE#", 377 + "MPCIE_1V5_EN", "MPCIE_3V3_EN", 378 + "MPCIE_PERST#", "MPCIE_WDISABLE#", 379 + "BUTTON_A#", "BUTTON_B#"; 380 + 381 + temp-event-mod-hog { 382 + gpio-hog; 383 + gpios = <0 GPIO_ACTIVE_LOW>; 384 + input; 385 + line-name = "TEMP_EVENT_MOD#"; 386 + }; 387 + 388 + mpcie-wake-hog { 389 + gpio-hog; 390 + gpios = <1 GPIO_ACTIVE_LOW>; 391 + input; 392 + line-name = "MPCIE_WAKE#"; 393 + }; 394 + 395 + /* 396 + * Controls the mPCIE slot reset which is low active as 397 + * reset signal. The output-low states, the signal is 398 + * inactive, e.g. not in reset 399 + */ 400 + mpcie_rst_hog: mpcie-rst-hog { 401 + gpio-hog; 402 + gpios = <4 GPIO_ACTIVE_LOW>; 403 + output-low; 404 + line-name = "MPCIE_PERST#"; 405 + }; 406 + 407 + /* 408 + * Controls the mPCIE slot WDISABLE pin which is low active 409 + * as disable signal. The output-low states, the signal is 410 + * inactive, e.g. not disabled 411 + */ 412 + mpcie_wdisable_hog: mpcie-wdisable-hog { 413 + gpio-hog; 414 + gpios = <5 GPIO_ACTIVE_LOW>; 415 + output-low; 416 + line-name = "MPCIE_WDISABLE#"; 417 + }; 418 + }; 419 + 420 + expander1: gpio@71 { 421 + compatible = "nxp,pca9538"; 422 + reg = <0x71>; 423 + gpio-controller; 424 + #gpio-cells = <2>; 425 + vcc-supply = <&reg_3v3>; 426 + gpio-line-names = "ENET1_RESET#", "ENET2_RESET#", 427 + "USB_RESET#", "", 428 + "WLAN_PD#", "WLAN_W_DISABLE#", 429 + "WLAN_PERST#", "12V_EN"; 430 + 431 + /* 432 + * Controls the WiFi card PD pin which is low active 433 + * as power down signal. The output-low states, the signal 434 + * is inactive, e.g. not power down 435 + */ 436 + wlan-pd-hog { 437 + gpio-hog; 438 + gpios = <4 GPIO_ACTIVE_LOW>; 439 + output-low; 440 + line-name = "WLAN_PD#"; 441 + }; 442 + 443 + /* 444 + * Controls the WiFi card disable pin which is low active 445 + * as disable signal. The output-low states, the signal 446 + * is inactive, e.g. not disabled 447 + */ 448 + wlan-wdisable-hog { 449 + gpio-hog; 450 + gpios = <5 GPIO_ACTIVE_LOW>; 451 + output-low; 452 + line-name = "WLAN_W_DISABLE#"; 453 + }; 454 + 455 + /* 456 + * Controls the WiFi card reset pin which is low active 457 + * as reset signal. The output-low states, the signal 458 + * is inactive, e.g. not in reset 459 + */ 460 + wlan-perst-hog { 461 + gpio-hog; 462 + gpios = <6 GPIO_ACTIVE_LOW>; 463 + output-low; 464 + line-name = "WLAN_PERST#"; 465 + }; 466 + }; 467 + 468 + expander2: gpio@72 { 469 + compatible = "nxp,pca9538"; 470 + reg = <0x72>; 471 + gpio-controller; 472 + #gpio-cells = <2>; 473 + vcc-supply = <&reg_3v3>; 474 + gpio-line-names = "LCD_RESET#", "LCD_PWR_EN", 475 + "LCD_BLT_EN", "LVDS_SHDN#", 476 + "FAN_PWR_EN", "", 477 + "USER_LED1", "USER_LED2"; 478 + }; 479 + }; 480 + 481 + &lpuart1 { 482 + pinctrl-names = "default"; 483 + pinctrl-0 = <&pinctrl_uart1>; 484 + status = "okay"; 485 + }; 486 + 487 + &lpuart2 { 488 + pinctrl-names = "default"; 489 + pinctrl-0 = <&pinctrl_uart2>; 490 + linux,rs485-enabled-at-boot-time; 491 + status = "okay"; 492 + }; 493 + 494 + &pcf85063 { 495 + /* RTC_EVENT# from SoM is connected on mainboard */ 496 + pinctrl-names = "default"; 497 + pinctrl-0 = <&pinctrl_pcf85063>; 498 + interrupt-parent = <&gpio1>; 499 + interrupts = <14 IRQ_TYPE_EDGE_FALLING>; 500 + }; 501 + 502 + &se97_som { 503 + /* TEMP_EVENT# from SoM is connected on mainboard */ 504 + interrupt-parent = <&expander0>; 505 + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 506 + }; 507 + 508 + &tpm2 { 509 + pinctrl-names = "default"; 510 + pinctrl-0 = <&pinctrl_tpm2>; 511 + status = "okay"; 512 + }; 513 + 514 + &usbotg1 { 515 + dr_mode = "otg"; 516 + hnp-disable; 517 + srp-disable; 518 + adp-disable; 519 + usb-role-switch; 520 + disable-over-current; 521 + status = "okay"; 522 + 523 + port { 524 + typec_hs: endpoint { 525 + remote-endpoint = <&typec_con_hs>; 526 + }; 527 + }; 528 + }; 529 + 530 + &usbotg2 { 531 + dr_mode = "host"; 532 + #address-cells = <1>; 533 + #size-cells = <0>; 534 + disable-over-current; 535 + status = "okay"; 536 + 537 + hub_2_0: hub@1 { 538 + compatible = "usb424,2517"; 539 + reg = <1>; 540 + reset-gpios = <&expander1 2 GPIO_ACTIVE_LOW>; 541 + vdd-supply = <&reg_3v3>; 542 + }; 543 + }; 544 + 545 + &usdhc2 { 546 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 547 + pinctrl-0 = <&pinctrl_usdhc2_hs>, <&pinctrl_usdhc2_gpio>; 548 + pinctrl-1 = <&pinctrl_usdhc2_uhs>, <&pinctrl_usdhc2_gpio>; 549 + pinctrl-2 = <&pinctrl_usdhc2_uhs>, <&pinctrl_usdhc2_gpio>; 550 + cd-gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; 551 + vmmc-supply = <&reg_usdhc2_vmmc>; 552 + bus-width = <4>; 553 + no-sdio; 554 + no-mmc; 555 + disable-wp; 556 + status = "okay"; 557 + }; 558 + 559 + &iomuxc { 560 + pinctrl_eqos: eqosgrp { 561 + fsl,pins = /* PD | FSEL_2 | DSE X4 */ 562 + <MX91_PAD_ENET1_MDC__ENET1_MDC 0x51e>, 563 + /* SION | HYS | FSEL_2 | DSE X4 */ 564 + <MX91_PAD_ENET1_MDIO__ENET_QOS_MDIO 0x4000111e>, 565 + /* HYS | FSEL_0 | DSE no drive */ 566 + <MX91_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0 0x1000>, 567 + <MX91_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1 0x1000>, 568 + <MX91_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2 0x1000>, 569 + <MX91_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3 0x1000>, 570 + <MX91_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x1000>, 571 + /* HYS | PD | FSEL_0 | DSE no drive */ 572 + <MX91_PAD_ENET1_RXC__ENET_QOS_RGMII_RXC 0x1400>, 573 + /* PD | FSEL_2 | DSE X4 */ 574 + <MX91_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0 0x51e>, 575 + <MX91_PAD_ENET1_TD1__ENET1_RGMII_TD1 0x51e>, 576 + <MX91_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2 0x51e>, 577 + <MX91_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3 0x51e>, 578 + <MX91_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x51e>, 579 + /* PD | FSEL_3 | DSE X3 */ 580 + <MX91_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x58e>; 581 + }; 582 + 583 + pinctrl_eqos_phy: eqosphygrp { 584 + fsl,pins = /* HYS | FSEL_0 | DSE no drive */ 585 + <MX91_PAD_CCM_CLKO1__GPIO3_IO26 0x1000>; 586 + }; 587 + 588 + pinctrl_fec: fecgrp { 589 + fsl,pins = /* PD | FSEL_2 | DSE X4 */ 590 + <MX91_PAD_ENET2_MDC__ENET2_MDC 0x51e>, 591 + /* SION | HYS | FSEL_2 | DSE X4 */ 592 + <MX91_PAD_ENET2_MDIO__ENET2_MDIO 0x4000111e>, 593 + /* HYS | FSEL_0 | DSE no drive */ 594 + <MX91_PAD_ENET2_RD0__ENET2_RGMII_RD0 0x1000>, 595 + <MX91_PAD_ENET2_RD1__ENET2_RGMII_RD1 0x1000>, 596 + <MX91_PAD_ENET2_RD2__ENET2_RGMII_RD2 0x1000>, 597 + <MX91_PAD_ENET2_RD3__ENET2_RGMII_RD3 0x1000>, 598 + <MX91_PAD_ENET2_RX_CTL__ENET2_RGMII_RX_CTL 0x1000>, 599 + /* HYS | PD | FSEL_0 | DSE no drive */ 600 + <MX91_PAD_ENET2_RXC__ENET2_RGMII_RXC 0x1400>, 601 + /* PD | FSEL_2 | DSE X4 */ 602 + <MX91_PAD_ENET2_TD0__ENET2_RGMII_TD0 0x51e>, 603 + <MX91_PAD_ENET2_TD1__ENET2_RGMII_TD1 0x51e>, 604 + <MX91_PAD_ENET2_TD2__ENET2_RGMII_TD2 0x51e>, 605 + <MX91_PAD_ENET2_TD3__ENET2_RGMII_TD3 0x51e>, 606 + <MX91_PAD_ENET2_TX_CTL__ENET2_RGMII_TX_CTL 0x51e>, 607 + /* PD | FSEL_3 | DSE X3 */ 608 + <MX91_PAD_ENET2_TXC__ENET2_RGMII_TXC 0x58e>; 609 + }; 610 + 611 + pinctrl_fec_phy: fecphygrp { 612 + fsl,pins = /* HYS | FSEL_0 | DSE no drive */ 613 + <MX91_PAD_CCM_CLKO2__GPIO3_IO27 0x1000>; 614 + }; 615 + 616 + pinctrl_flexcan1: flexcan1grp { 617 + fsl,pins = /* HYS | PU | FSEL_0 | DSE no drive */ 618 + <MX91_PAD_PDM_BIT_STREAM0__CAN1_RX 0x1200>, 619 + /* PU | FSEL_3 | DSE X4 */ 620 + <MX91_PAD_PDM_CLK__CAN1_TX 0x039e>; 621 + }; 622 + 623 + pinctrl_jtag: jtaggrp { 624 + fsl,pins = <MX91_PAD_DAP_TCLK_SWCLK__JTAG_MUX_TCK 0x051e>, 625 + <MX91_PAD_DAP_TDI__JTAG_MUX_TDI 0x1200>, 626 + <MX91_PAD_DAP_TDO_TRACESWO__JTAG_MUX_TDO 0x031e>, 627 + <MX91_PAD_DAP_TMS_SWDIO__JTAG_MUX_TMS 0x1200>; 628 + }; 629 + 630 + pinctrl_lpi2c3: lpi2c3grp { 631 + fsl,pins = /* SION | HYS | OD | FSEL_3 | DSE X4 */ 632 + <MX91_PAD_GPIO_IO28__LPI2C3_SDA 0x4000199e>, 633 + <MX91_PAD_GPIO_IO29__LPI2C3_SCL 0x4000199e>; 634 + }; 635 + 636 + pinctrl_pcf85063: pcf85063grp { 637 + fsl,pins = <MX91_PAD_SAI1_RXD0__GPIO1_IO14 0x1000>; 638 + }; 639 + 640 + pinctrl_pexp_irq: pexpirqgrp { 641 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 642 + <MX91_PAD_SAI1_TXC__GPIO1_IO12 0x1000>; 643 + }; 644 + 645 + pinctrl_rgbdisp: rgbdispgrp { 646 + fsl,pins = <MX91_PAD_GPIO_IO00__MEDIAMIX_DISP_CLK 0x31e>, 647 + <MX91_PAD_GPIO_IO01__MEDIAMIX_DISP_DE 0x31e>, 648 + <MX91_PAD_GPIO_IO02__MEDIAMIX_DISP_VSYNC 0x31e>, 649 + <MX91_PAD_GPIO_IO03__MEDIAMIX_DISP_HSYNC 0x31e>, 650 + <MX91_PAD_GPIO_IO04__MEDIAMIX_DISP_DATA0 0x31e>, 651 + <MX91_PAD_GPIO_IO05__MEDIAMIX_DISP_DATA1 0x31e>, 652 + <MX91_PAD_GPIO_IO06__MEDIAMIX_DISP_DATA2 0x31e>, 653 + <MX91_PAD_GPIO_IO07__MEDIAMIX_DISP_DATA3 0x31e>, 654 + <MX91_PAD_GPIO_IO08__MEDIAMIX_DISP_DATA4 0x31e>, 655 + <MX91_PAD_GPIO_IO09__MEDIAMIX_DISP_DATA5 0x31e>, 656 + <MX91_PAD_GPIO_IO10__MEDIAMIX_DISP_DATA6 0x31e>, 657 + <MX91_PAD_GPIO_IO11__MEDIAMIX_DISP_DATA7 0x31e>, 658 + <MX91_PAD_GPIO_IO12__MEDIAMIX_DISP_DATA8 0x31e>, 659 + <MX91_PAD_GPIO_IO13__MEDIAMIX_DISP_DATA9 0x31e>, 660 + <MX91_PAD_GPIO_IO14__MEDIAMIX_DISP_DATA10 0x31e>, 661 + <MX91_PAD_GPIO_IO15__MEDIAMIX_DISP_DATA11 0x31e>, 662 + <MX91_PAD_GPIO_IO16__MEDIAMIX_DISP_DATA12 0x31e>, 663 + <MX91_PAD_GPIO_IO17__MEDIAMIX_DISP_DATA13 0x31e>, 664 + <MX91_PAD_GPIO_IO18__MEDIAMIX_DISP_DATA14 0x31e>, 665 + <MX91_PAD_GPIO_IO19__MEDIAMIX_DISP_DATA15 0x31e>, 666 + <MX91_PAD_GPIO_IO20__MEDIAMIX_DISP_DATA16 0x31e>, 667 + <MX91_PAD_GPIO_IO21__MEDIAMIX_DISP_DATA17 0x31e>, 668 + <MX91_PAD_GPIO_IO22__MEDIAMIX_DISP_DATA18 0x31e>, 669 + <MX91_PAD_GPIO_IO23__MEDIAMIX_DISP_DATA19 0x31e>, 670 + <MX91_PAD_GPIO_IO24__MEDIAMIX_DISP_DATA20 0x31e>, 671 + <MX91_PAD_GPIO_IO25__MEDIAMIX_DISP_DATA21 0x31e>, 672 + <MX91_PAD_GPIO_IO26__MEDIAMIX_DISP_DATA22 0x31e>, 673 + <MX91_PAD_GPIO_IO27__MEDIAMIX_DISP_DATA23 0x31e>; 674 + }; 675 + 676 + pinctrl_touch: touchgrp { 677 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 678 + <MX91_PAD_SAI1_TXFS__GPIO1_IO11 0x1000>; 679 + }; 680 + 681 + pinctrl_tpm2: tpm2grp { 682 + fsl,pins = <MX91_PAD_I2C2_SCL__TPM2_CH2 0x57e>; 683 + }; 684 + 685 + pinctrl_typec: typecgrp { 686 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 687 + <MX91_PAD_PDM_BIT_STREAM1__GPIO1_IO10 0x1000>; 688 + }; 689 + 690 + pinctrl_uart1: uart1grp { 691 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 692 + <MX91_PAD_UART1_RXD__LPUART1_RX 0x1000>, 693 + /* FSEL_2 | DSE X4 */ 694 + <MX91_PAD_UART1_TXD__LPUART1_TX 0x011e>; 695 + }; 696 + 697 + pinctrl_uart2: uart2grp { 698 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 699 + <MX91_PAD_UART2_RXD__LPUART2_RX 0x1000>, 700 + /* FSEL_2 | DSE X4 */ 701 + <MX91_PAD_UART2_TXD__LPUART2_TX 0x011e>, 702 + /* FSEL_2 | DSE X4 */ 703 + <MX91_PAD_SAI1_TXD0__LPUART2_RTS_B 0x011e>; 704 + }; 705 + 706 + pinctrl_usdhc2_gpio: usdhc2gpiogrp { 707 + fsl,pins = /* HYS | FSEL_0 | No DSE */ 708 + <MX91_PAD_SD2_CD_B__GPIO3_IO0 0x1000>; 709 + }; 710 + 711 + /* enable SION for data and cmd pad due to ERR052021 */ 712 + pinctrl_usdhc2_hs: usdhc2hsgrp { 713 + fsl,pins = /* PD | FSEL_3 | DSE X5 */ 714 + <MX91_PAD_SD2_CLK__USDHC2_CLK 0x05be>, 715 + /* HYS | PU | FSEL_3 | DSE X4 */ 716 + <MX91_PAD_SD2_CMD__USDHC2_CMD 0x4000139e>, 717 + /* HYS | PU | FSEL_3 | DSE X3 */ 718 + <MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x4000138e>, 719 + <MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x4000138e>, 720 + <MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x4000138e>, 721 + <MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x4000138e>, 722 + /* FSEL_2 | DSE X3 */ 723 + <MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x010e>; 724 + }; 725 + 726 + /* enable SION for data and cmd pad due to ERR052021 */ 727 + pinctrl_usdhc2_uhs: usdhc2uhsgrp { 728 + fsl,pins = /* PD | FSEL_3 | DSE X6 */ 729 + <MX91_PAD_SD2_CLK__USDHC2_CLK 0x05fe>, 730 + /* HYS | PU | FSEL_3 | DSE X4 */ 731 + <MX91_PAD_SD2_CMD__USDHC2_CMD 0x4000139e>, 732 + <MX91_PAD_SD2_DATA0__USDHC2_DATA0 0x4000139e>, 733 + <MX91_PAD_SD2_DATA1__USDHC2_DATA1 0x4000139e>, 734 + <MX91_PAD_SD2_DATA2__USDHC2_DATA2 0x4000139e>, 735 + <MX91_PAD_SD2_DATA3__USDHC2_DATA3 0x4000139e>, 736 + /* FSEL_2 | DSE X3 */ 737 + <MX91_PAD_SD2_VSELECT__USDHC2_VSELECT 0x010e>; 738 + }; 739 + };
+295
arch/arm64/boot/dts/freescale/imx91-tqma9131.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 2 + /* 3 + * Copyright (c) 2022-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 + * D-82229 Seefeld, Germany. 5 + * Author: Markus Niebel 6 + * Author: Alexander Stein 7 + */ 8 + 9 + #include "imx91.dtsi" 10 + 11 + /{ 12 + model = "TQ-Systems i.MX91 TQMa91xxCA / TQMa91xxLA SOM"; 13 + compatible = "tq,imx91-tqma9131", "fsl,imx91"; 14 + 15 + memory@80000000 { 16 + device_type = "memory"; 17 + /* our minimum RAM config will be 1024 MiB */ 18 + reg = <0x00000000 0x80000000 0 0x40000000>; 19 + }; 20 + 21 + reserved-memory { 22 + #address-cells = <2>; 23 + #size-cells = <2>; 24 + ranges; 25 + 26 + /* default CMA, must not exceed assembled memory */ 27 + linux,cma { 28 + compatible = "shared-dma-pool"; 29 + reusable; 30 + alloc-ranges = <0 0x80000000 0 0x40000000>; 31 + size = <0 0x10000000>; 32 + linux,cma-default; 33 + }; 34 + 35 + /* EdgeLock secure enclave */ 36 + ele_reserved: ele-reserved@a4120000 { 37 + compatible = "shared-dma-pool"; 38 + reg = <0 0xa4120000 0 0x100000>; 39 + no-map; 40 + }; 41 + }; 42 + 43 + /* SD2 RST# via PMIC SW_EN */ 44 + reg_usdhc2_vmmc: regulator-usdhc2 { 45 + compatible = "regulator-fixed"; 46 + pinctrl-names = "default"; 47 + pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>; 48 + regulator-name = "VSD_3V3"; 49 + regulator-min-microvolt = <3300000>; 50 + regulator-max-microvolt = <3300000>; 51 + vin-supply = <&buck4>; 52 + gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>; 53 + enable-active-high; 54 + }; 55 + }; 56 + 57 + &adc1 { 58 + vref-supply = <&buck5>; 59 + }; 60 + 61 + &flexspi1 { 62 + pinctrl-names = "default"; 63 + pinctrl-0 = <&pinctrl_flexspi1>; 64 + status = "okay"; 65 + 66 + flash0: flash@0 { 67 + compatible = "jedec,spi-nor"; 68 + reg = <0>; 69 + /* 70 + * no DQS, RXCLKSRC internal loop back, max 66 MHz 71 + * clk framework uses CLK_DIVIDER_ROUND_CLOSEST 72 + * selected value together with root from 73 + * IMX91_CLK_SYS_PLL_PFD1 @ 800.000.000 Hz helps to 74 + * respect the maximum value. 75 + */ 76 + spi-max-frequency = <62000000>; 77 + spi-tx-bus-width = <4>; 78 + spi-rx-bus-width = <4>; 79 + vcc-supply = <&buck5>; 80 + 81 + partitions { 82 + compatible = "fixed-partitions"; 83 + #address-cells = <1>; 84 + #size-cells = <1>; 85 + }; 86 + }; 87 + }; 88 + 89 + &lpi2c1 { 90 + clock-frequency = <400000>; 91 + pinctrl-names = "default", "sleep"; 92 + pinctrl-0 = <&pinctrl_lpi2c1>; 93 + pinctrl-1 = <&pinctrl_lpi2c1>; 94 + status = "okay"; 95 + 96 + se97_som: temperature-sensor@1b { 97 + compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 98 + reg = <0x1b>; 99 + }; 100 + 101 + pca9451a: pmic@25 { 102 + compatible = "nxp,pca9451a"; 103 + reg = <0x25>; 104 + pinctrl-names = "default"; 105 + pinctrl-0 = <&pinctrl_pca9451>; 106 + interrupt-parent = <&gpio1>; 107 + interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 108 + 109 + regulators { 110 + /* V_0V8_SOC - hw developer guide: 0.75 .. 0.9 */ 111 + buck1: BUCK1 { 112 + regulator-name = "BUCK1"; 113 + regulator-min-microvolt = <750000>; 114 + regulator-max-microvolt = <900000>; 115 + regulator-boot-on; 116 + regulator-always-on; 117 + regulator-ramp-delay = <3125>; 118 + }; 119 + 120 + /* V_DDRQ - 1.1 V for LPDDR4 */ 121 + buck2: BUCK2 { 122 + regulator-name = "BUCK2"; 123 + regulator-min-microvolt = <1100000>; 124 + regulator-max-microvolt = <1100000>; 125 + regulator-boot-on; 126 + regulator-always-on; 127 + regulator-ramp-delay = <3125>; 128 + }; 129 + 130 + /* V_3V3 - EEPROM, RTC, ... */ 131 + buck4: BUCK4 { 132 + regulator-name = "BUCK4"; 133 + regulator-min-microvolt = <3300000>; 134 + regulator-max-microvolt = <3300000>; 135 + regulator-boot-on; 136 + regulator-always-on; 137 + }; 138 + 139 + /* V_1V8 - SPI NOR, eMMC, RAM VDD1... */ 140 + buck5: BUCK5 { 141 + regulator-name = "BUCK5"; 142 + regulator-min-microvolt = <1800000>; 143 + regulator-max-microvolt = <1800000>; 144 + regulator-boot-on; 145 + regulator-always-on; 146 + }; 147 + 148 + /* V_1V1 - RAM VDD2*/ 149 + buck6: BUCK6 { 150 + regulator-name = "BUCK6"; 151 + regulator-min-microvolt = <1100000>; 152 + regulator-max-microvolt = <1100000>; 153 + regulator-boot-on; 154 + regulator-always-on; 155 + }; 156 + 157 + /* V_1V8_BBSM, fix 1.8 */ 158 + ldo1: LDO1 { 159 + regulator-name = "LDO1"; 160 + regulator-min-microvolt = <1800000>; 161 + regulator-max-microvolt = <1800000>; 162 + regulator-boot-on; 163 + regulator-always-on; 164 + }; 165 + 166 + /* V_0V8_ANA */ 167 + ldo4: LDO4 { 168 + regulator-name = "LDO4"; 169 + regulator-min-microvolt = <800000>; 170 + regulator-max-microvolt = <800000>; 171 + regulator-boot-on; 172 + regulator-always-on; 173 + }; 174 + 175 + /* V_SD2 - 3.3/1.8V USDHC2 io Voltage */ 176 + ldo5: LDO5 { 177 + regulator-name = "LDO5"; 178 + regulator-min-microvolt = <1800000>; 179 + regulator-max-microvolt = <3300000>; 180 + regulator-boot-on; 181 + regulator-always-on; 182 + }; 183 + }; 184 + }; 185 + 186 + pcf85063: rtc@51 { 187 + compatible = "nxp,pcf85063a"; 188 + reg = <0x51>; 189 + quartz-load-femtofarads = <7000>; 190 + }; 191 + 192 + eeprom0: eeprom@53 { 193 + compatible = "nxp,se97b", "atmel,24c02"; 194 + reg = <0x53>; 195 + pagesize = <16>; 196 + read-only; 197 + vcc-supply = <&buck4>; 198 + }; 199 + 200 + eeprom1: eeprom@57 { 201 + compatible = "atmel,24c64"; 202 + reg = <0x57>; 203 + pagesize = <32>; 204 + vcc-supply = <&buck4>; 205 + }; 206 + 207 + /* protectable identification memory (part of M24C64-D @57) */ 208 + eeprom@5f { 209 + compatible = "atmel,24c64d-wl"; 210 + reg = <0x5f>; 211 + vcc-supply = <&buck4>; 212 + }; 213 + 214 + accelerometer@6a { 215 + compatible = "st,ism330dhcx"; 216 + reg = <0x6a>; 217 + vdd-supply = <&buck4>; 218 + vddio-supply = <&buck4>; 219 + }; 220 + }; 221 + 222 + &usdhc1 { 223 + pinctrl-names = "default", "state_100mhz", "state_200mhz"; 224 + pinctrl-0 = <&pinctrl_usdhc1>; 225 + pinctrl-1 = <&pinctrl_usdhc1>; 226 + pinctrl-2 = <&pinctrl_usdhc1>; 227 + vmmc-supply = <&buck4>; 228 + vqmmc-supply = <&buck5>; 229 + bus-width = <8>; 230 + non-removable; 231 + no-sdio; 232 + no-sd; 233 + status = "okay"; 234 + }; 235 + 236 + &wdog3 { 237 + pinctrl-names = "default"; 238 + pinctrl-0 = <&pinctrl_wdog>; 239 + fsl,ext-reset-output; 240 + status = "okay"; 241 + }; 242 + 243 + &iomuxc { 244 + pinctrl_flexspi1: flexspi1grp { 245 + fsl,pins = /* FSEL 3 | DSE X6 */ 246 + <MX91_PAD_SD3_CMD__FLEXSPI1_A_SS0_B 0x01fe>, 247 + <MX91_PAD_SD3_CLK__FLEXSPI1_A_SCLK 0x01fe>, 248 + /* HYS | PU | FSEL 3 | DSE X6 */ 249 + <MX91_PAD_SD3_DATA0__FLEXSPI1_A_DATA0 0x13fe>, 250 + <MX91_PAD_SD3_DATA1__FLEXSPI1_A_DATA1 0x13fe>, 251 + /* HYS | FSEL 3 | DSE X6 (external PU) */ 252 + <MX91_PAD_SD3_DATA2__FLEXSPI1_A_DATA2 0x11fe>, 253 + <MX91_PAD_SD3_DATA3__FLEXSPI1_A_DATA3 0x11fe>; 254 + }; 255 + 256 + pinctrl_lpi2c1: lpi2c1grp { 257 + fsl,pins = /* SION | OD | FSEL 3 | DSE X4 */ 258 + <MX91_PAD_I2C1_SCL__LPI2C1_SCL 0x4000199e>, 259 + <MX91_PAD_I2C1_SDA__LPI2C1_SDA 0x4000199e>; 260 + }; 261 + 262 + pinctrl_pca9451: pca9451grp { 263 + fsl,pins = /* HYS | PU */ 264 + <MX91_PAD_I2C2_SDA__GPIO1_IO3 0x1200>; 265 + }; 266 + 267 + pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { 268 + fsl,pins = /* FSEL 2 | DSE X2 */ 269 + <MX91_PAD_SD2_RESET_B__GPIO3_IO7 0x106>; 270 + }; 271 + 272 + /* enable SION for data and cmd pad due to ERR052021 */ 273 + pinctrl_usdhc1: usdhc1grp { 274 + fsl,pins = /* PD | FSEL 3 | DSE X5 */ 275 + <MX91_PAD_SD1_CLK__USDHC1_CLK 0x5be>, 276 + /* HYS | FSEL 0 | no drive */ 277 + <MX91_PAD_SD1_STROBE__USDHC1_STROBE 0x1000>, 278 + /* HYS | FSEL 3 | X5 */ 279 + <MX91_PAD_SD1_CMD__USDHC1_CMD 0x400011be>, 280 + /* HYS | FSEL 3 | X4 */ 281 + <MX91_PAD_SD1_DATA0__USDHC1_DATA0 0x4000119e>, 282 + <MX91_PAD_SD1_DATA1__USDHC1_DATA1 0x4000119e>, 283 + <MX91_PAD_SD1_DATA2__USDHC1_DATA2 0x4000119e>, 284 + <MX91_PAD_SD1_DATA3__USDHC1_DATA3 0x4000119e>, 285 + <MX91_PAD_SD1_DATA4__USDHC1_DATA4 0x4000119e>, 286 + <MX91_PAD_SD1_DATA5__USDHC1_DATA5 0x4000119e>, 287 + <MX91_PAD_SD1_DATA6__USDHC1_DATA6 0x4000119e>, 288 + <MX91_PAD_SD1_DATA7__USDHC1_DATA7 0x4000119e>; 289 + }; 290 + 291 + pinctrl_wdog: wdoggrp { 292 + fsl,pins = /* PU | FSEL 1 | DSE X4 */ 293 + <MX91_PAD_WDOG_ANY__WDOG1_WDOG_ANY 0x31e>; 294 + }; 295 + };
+71
arch/arm64/boot/dts/freescale/imx91.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2025 NXP 4 + */ 5 + 6 + #include "imx91-pinfunc.h" 7 + #include "imx91_93_common.dtsi" 8 + 9 + &clk { 10 + compatible = "fsl,imx91-ccm"; 11 + }; 12 + 13 + &ddr_pmu { 14 + compatible = "fsl,imx91-ddr-pmu", "fsl,imx93-ddr-pmu"; 15 + }; 16 + 17 + &eqos { 18 + clocks = <&clk IMX91_CLK_ENET1_QOS_TSN_GATE>, 19 + <&clk IMX91_CLK_ENET1_QOS_TSN_GATE>, 20 + <&clk IMX91_CLK_ENET_TIMER>, 21 + <&clk IMX91_CLK_ENET1_QOS_TSN>, 22 + <&clk IMX91_CLK_ENET1_QOS_TSN_GATE>; 23 + assigned-clocks = <&clk IMX91_CLK_ENET_TIMER>, 24 + <&clk IMX91_CLK_ENET1_QOS_TSN>; 25 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 26 + <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>; 27 + assigned-clock-rates = <100000000>, <250000000>; 28 + }; 29 + 30 + &fec { 31 + clocks = <&clk IMX91_CLK_ENET2_REGULAR_GATE>, 32 + <&clk IMX91_CLK_ENET2_REGULAR_GATE>, 33 + <&clk IMX91_CLK_ENET_TIMER>, 34 + <&clk IMX91_CLK_ENET2_REGULAR>, 35 + <&clk IMX93_CLK_DUMMY>; 36 + assigned-clocks = <&clk IMX91_CLK_ENET_TIMER>, 37 + <&clk IMX91_CLK_ENET2_REGULAR>; 38 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 39 + <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>; 40 + assigned-clock-rates = <100000000>, <250000000>; 41 + }; 42 + 43 + &i3c1 { 44 + clocks = <&clk IMX93_CLK_BUS_AON>, 45 + <&clk IMX93_CLK_I3C1_GATE>, 46 + <&clk IMX93_CLK_DUMMY>; 47 + }; 48 + 49 + &i3c2 { 50 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 51 + <&clk IMX93_CLK_I3C2_GATE>, 52 + <&clk IMX93_CLK_DUMMY>; 53 + }; 54 + 55 + &iomuxc { 56 + compatible = "fsl,imx91-iomuxc"; 57 + }; 58 + 59 + &media_blk_ctrl { 60 + compatible = "fsl,imx91-media-blk-ctrl", "syscon"; 61 + clocks = <&clk IMX93_CLK_MEDIA_APB>, 62 + <&clk IMX93_CLK_MEDIA_AXI>, 63 + <&clk IMX93_CLK_NIC_MEDIA_GATE>, 64 + <&clk IMX93_CLK_MEDIA_DISP_PIX>, 65 + <&clk IMX93_CLK_CAM_PIX>, 66 + <&clk IMX93_CLK_LCDIF_GATE>, 67 + <&clk IMX93_CLK_ISI_GATE>, 68 + <&clk IMX93_CLK_MIPI_CSI_GATE>; 69 + clock-names = "apb", "axi", "nic", "disp", "cam", 70 + "lcdif", "isi", "csi"; 71 + };
+1187
arch/arm64/boot/dts/freescale/imx91_93_common.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 + /* 3 + * Copyright 2022,2025 NXP 4 + */ 5 + 6 + #include <dt-bindings/clock/imx93-clock.h> 7 + #include <dt-bindings/dma/fsl-edma.h> 8 + #include <dt-bindings/gpio/gpio.h> 9 + #include <dt-bindings/input/input.h> 10 + #include <dt-bindings/interrupt-controller/arm-gic.h> 11 + #include <dt-bindings/power/fsl,imx93-power.h> 12 + #include <dt-bindings/thermal/thermal.h> 13 + 14 + #include "imx93-pinfunc.h" 15 + 16 + / { 17 + interrupt-parent = <&gic>; 18 + #address-cells = <2>; 19 + #size-cells = <2>; 20 + 21 + cpus: cpus { 22 + #address-cells = <1>; 23 + #size-cells = <0>; 24 + 25 + idle-states { 26 + entry-method = "psci"; 27 + 28 + cpu_pd_wait: cpu-pd-wait { 29 + compatible = "arm,idle-state"; 30 + arm,psci-suspend-param = <0x0010033>; 31 + local-timer-stop; 32 + entry-latency-us = <10000>; 33 + exit-latency-us = <7000>; 34 + min-residency-us = <27000>; 35 + wakeup-latency-us = <15000>; 36 + }; 37 + }; 38 + 39 + A55_0: cpu@0 { 40 + device_type = "cpu"; 41 + compatible = "arm,cortex-a55"; 42 + reg = <0x0>; 43 + enable-method = "psci"; 44 + #cooling-cells = <2>; 45 + cpu-idle-states = <&cpu_pd_wait>; 46 + }; 47 + }; 48 + 49 + osc_32k: clock-osc-32k { 50 + compatible = "fixed-clock"; 51 + #clock-cells = <0>; 52 + clock-frequency = <32768>; 53 + clock-output-names = "osc_32k"; 54 + }; 55 + 56 + osc_24m: clock-osc-24m { 57 + compatible = "fixed-clock"; 58 + #clock-cells = <0>; 59 + clock-frequency = <24000000>; 60 + clock-output-names = "osc_24m"; 61 + }; 62 + 63 + clk_ext1: clock-ext1 { 64 + compatible = "fixed-clock"; 65 + #clock-cells = <0>; 66 + clock-frequency = <133000000>; 67 + clock-output-names = "clk_ext1"; 68 + }; 69 + 70 + pmu { 71 + compatible = "arm,cortex-a55-pmu"; 72 + interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; 73 + }; 74 + 75 + psci { 76 + compatible = "arm,psci-1.0"; 77 + method = "smc"; 78 + }; 79 + 80 + timer { 81 + compatible = "arm,armv8-timer"; 82 + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 83 + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 84 + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 85 + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>; 86 + clock-frequency = <24000000>; 87 + arm,no-tick-in-suspend; 88 + interrupt-parent = <&gic>; 89 + }; 90 + 91 + gic: interrupt-controller@48000000 { 92 + compatible = "arm,gic-v3"; 93 + reg = <0 0x48000000 0 0x10000>, 94 + <0 0x48040000 0 0xc0000>; 95 + #interrupt-cells = <3>; 96 + interrupt-controller; 97 + interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 98 + interrupt-parent = <&gic>; 99 + }; 100 + 101 + mqs1: mqs1 { 102 + compatible = "fsl,imx93-mqs"; 103 + gpr = <&aonmix_ns_gpr>; 104 + status = "disabled"; 105 + }; 106 + 107 + mqs2: mqs2 { 108 + compatible = "fsl,imx93-mqs"; 109 + gpr = <&wakeupmix_gpr>; 110 + status = "disabled"; 111 + }; 112 + 113 + usbphynop1: usbphynop1 { 114 + compatible = "usb-nop-xceiv"; 115 + #phy-cells = <0>; 116 + clocks = <&clk IMX93_CLK_USB_PHY_BURUNIN>; 117 + clock-names = "main_clk"; 118 + }; 119 + 120 + usbphynop2: usbphynop2 { 121 + compatible = "usb-nop-xceiv"; 122 + #phy-cells = <0>; 123 + clocks = <&clk IMX93_CLK_USB_PHY_BURUNIN>; 124 + clock-names = "main_clk"; 125 + }; 126 + 127 + soc@0 { 128 + compatible = "simple-bus"; 129 + #address-cells = <1>; 130 + #size-cells = <1>; 131 + ranges = <0x0 0x0 0x0 0x80000000>, 132 + <0x28000000 0x0 0x28000000 0x10000000>; 133 + 134 + aips1: bus@44000000 { 135 + compatible = "fsl,aips-bus", "simple-bus"; 136 + reg = <0x44000000 0x800000>; 137 + #address-cells = <1>; 138 + #size-cells = <1>; 139 + ranges; 140 + 141 + edma1: dma-controller@44000000 { 142 + compatible = "fsl,imx93-edma3"; 143 + reg = <0x44000000 0x200000>; 144 + #dma-cells = <3>; 145 + dma-channels = <31>; 146 + interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, // 0: Reserved 147 + <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, // 1: CANFD1 148 + <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, // 2: Reserved 149 + <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, // 3: GPIO1 CH0 150 + <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, // 4: GPIO1 CH1 151 + <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, // 5: I3C1 TO Bus 152 + <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, // 6: I3C1 From Bus 153 + <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, // 7: LPI2C1 M TX 154 + <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, // 8: LPI2C1 S TX 155 + <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, // 9: LPI2C2 M RX 156 + <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, // 10: LPI2C2 S RX 157 + <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, // 11: LPSPI1 TX 158 + <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, // 12: LPSPI1 RX 159 + <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, // 13: LPSPI2 TX 160 + <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, // 14: LPSPI2 RX 161 + <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, // 15: LPTMR1 162 + <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, // 16: LPUART1 TX 163 + <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, // 17: LPUART1 RX 164 + <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, // 18: LPUART2 TX 165 + <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, // 19: LPUART2 RX 166 + <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, // 20: S400 167 + <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, // 21: SAI TX 168 + <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, // 22: SAI RX 169 + <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, // 23: TPM1 CH0/CH2 170 + <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, // 24: TPM1 CH1/CH3 171 + <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, // 25: TPM1 Overflow 172 + <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, // 26: TMP2 CH0/CH2 173 + <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, // 27: TMP2 CH1/CH3 174 + <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, // 28: TMP2 Overflow 175 + <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, // 29: PDM 176 + <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, // 30: ADC1 177 + <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; // err 178 + clocks = <&clk IMX93_CLK_EDMA1_GATE>; 179 + clock-names = "dma"; 180 + }; 181 + 182 + aonmix_ns_gpr: syscon@44210000 { 183 + compatible = "fsl,imx93-aonmix-ns-syscfg", "syscon"; 184 + reg = <0x44210000 0x1000>; 185 + }; 186 + 187 + system_counter: timer@44290000 { 188 + compatible = "nxp,sysctr-timer"; 189 + reg = <0x44290000 0x30000>; 190 + interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 191 + clocks = <&osc_24m>; 192 + clock-names = "per"; 193 + nxp,no-divider; 194 + }; 195 + 196 + wdog1: watchdog@442d0000 { 197 + compatible = "fsl,imx93-wdt"; 198 + reg = <0x442d0000 0x10000>; 199 + interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 200 + clocks = <&clk IMX93_CLK_WDOG1_GATE>; 201 + timeout-sec = <40>; 202 + status = "disabled"; 203 + }; 204 + 205 + wdog2: watchdog@442e0000 { 206 + compatible = "fsl,imx93-wdt"; 207 + reg = <0x442e0000 0x10000>; 208 + interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 209 + clocks = <&clk IMX93_CLK_WDOG2_GATE>; 210 + timeout-sec = <40>; 211 + status = "disabled"; 212 + }; 213 + 214 + tpm1: pwm@44310000 { 215 + compatible = "fsl,imx7ulp-pwm"; 216 + reg = <0x44310000 0x1000>; 217 + clocks = <&clk IMX93_CLK_TPM1_GATE>; 218 + #pwm-cells = <3>; 219 + status = "disabled"; 220 + }; 221 + 222 + tpm2: pwm@44320000 { 223 + compatible = "fsl,imx7ulp-pwm"; 224 + reg = <0x44320000 0x10000>; 225 + clocks = <&clk IMX93_CLK_TPM2_GATE>; 226 + #pwm-cells = <3>; 227 + status = "disabled"; 228 + }; 229 + 230 + i3c1: i3c@44330000 { 231 + compatible = "silvaco,i3c-master-v1"; 232 + reg = <0x44330000 0x10000>; 233 + interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 234 + #address-cells = <3>; 235 + #size-cells = <0>; 236 + clocks = <&clk IMX93_CLK_BUS_AON>, 237 + <&clk IMX93_CLK_I3C1_GATE>, 238 + <&clk IMX93_CLK_I3C1_SLOW>; 239 + clock-names = "pclk", "fast_clk", "slow_clk"; 240 + status = "disabled"; 241 + }; 242 + 243 + lpi2c1: i2c@44340000 { 244 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 245 + reg = <0x44340000 0x10000>; 246 + #address-cells = <1>; 247 + #size-cells = <0>; 248 + interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 249 + clocks = <&clk IMX93_CLK_LPI2C1_GATE>, 250 + <&clk IMX93_CLK_BUS_AON>; 251 + clock-names = "per", "ipg"; 252 + dmas = <&edma1 7 0 0>, <&edma1 8 0 FSL_EDMA_RX>; 253 + dma-names = "tx", "rx"; 254 + status = "disabled"; 255 + }; 256 + 257 + lpi2c2: i2c@44350000 { 258 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 259 + reg = <0x44350000 0x10000>; 260 + #address-cells = <1>; 261 + #size-cells = <0>; 262 + interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 263 + clocks = <&clk IMX93_CLK_LPI2C2_GATE>, 264 + <&clk IMX93_CLK_BUS_AON>; 265 + clock-names = "per", "ipg"; 266 + dmas = <&edma1 9 0 0>, <&edma1 10 0 FSL_EDMA_RX>; 267 + dma-names = "tx", "rx"; 268 + status = "disabled"; 269 + }; 270 + 271 + lpspi1: spi@44360000 { 272 + #address-cells = <1>; 273 + #size-cells = <0>; 274 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 275 + reg = <0x44360000 0x10000>; 276 + interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 277 + clocks = <&clk IMX93_CLK_LPSPI1_GATE>, 278 + <&clk IMX93_CLK_BUS_AON>; 279 + clock-names = "per", "ipg"; 280 + dmas = <&edma1 11 0 0>, <&edma1 12 0 FSL_EDMA_RX>; 281 + dma-names = "tx", "rx"; 282 + status = "disabled"; 283 + }; 284 + 285 + lpspi2: spi@44370000 { 286 + #address-cells = <1>; 287 + #size-cells = <0>; 288 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 289 + reg = <0x44370000 0x10000>; 290 + interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 291 + clocks = <&clk IMX93_CLK_LPSPI2_GATE>, 292 + <&clk IMX93_CLK_BUS_AON>; 293 + clock-names = "per", "ipg"; 294 + dmas = <&edma1 13 0 0>, <&edma1 14 0 FSL_EDMA_RX>; 295 + dma-names = "tx", "rx"; 296 + status = "disabled"; 297 + }; 298 + 299 + lpuart1: serial@44380000 { 300 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 301 + reg = <0x44380000 0x1000>; 302 + interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 303 + clocks = <&clk IMX93_CLK_LPUART1_GATE>; 304 + clock-names = "ipg"; 305 + dmas = <&edma1 17 0 FSL_EDMA_RX>, <&edma1 16 0 0>; 306 + dma-names = "rx", "tx"; 307 + status = "disabled"; 308 + }; 309 + 310 + lpuart2: serial@44390000 { 311 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 312 + reg = <0x44390000 0x1000>; 313 + interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 314 + clocks = <&clk IMX93_CLK_LPUART2_GATE>; 315 + clock-names = "ipg"; 316 + dmas = <&edma1 19 0 FSL_EDMA_RX>, <&edma1 18 0 0>; 317 + dma-names = "rx", "tx"; 318 + status = "disabled"; 319 + }; 320 + 321 + flexcan1: can@443a0000 { 322 + compatible = "fsl,imx93-flexcan"; 323 + reg = <0x443a0000 0x10000>; 324 + interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 325 + clocks = <&clk IMX93_CLK_BUS_AON>, 326 + <&clk IMX93_CLK_CAN1_GATE>; 327 + clock-names = "ipg", "per"; 328 + assigned-clocks = <&clk IMX93_CLK_CAN1>; 329 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 330 + assigned-clock-rates = <40000000>; 331 + fsl,clk-source = /bits/ 8 <0>; 332 + fsl,stop-mode = <&aonmix_ns_gpr 0x14 0>; 333 + status = "disabled"; 334 + }; 335 + 336 + sai1: sai@443b0000 { 337 + compatible = "fsl,imx93-sai"; 338 + reg = <0x443b0000 0x10000>; 339 + interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 340 + clocks = <&clk IMX93_CLK_SAI1_IPG>, <&clk IMX93_CLK_DUMMY>, 341 + <&clk IMX93_CLK_SAI1_GATE>, <&clk IMX93_CLK_DUMMY>, 342 + <&clk IMX93_CLK_DUMMY>; 343 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 344 + dmas = <&edma1 22 0 FSL_EDMA_RX>, <&edma1 21 0 0>; 345 + dma-names = "rx", "tx"; 346 + #sound-dai-cells = <0>; 347 + status = "disabled"; 348 + }; 349 + 350 + iomuxc: pinctrl@443c0000 { 351 + compatible = "fsl,imx93-iomuxc"; 352 + reg = <0x443c0000 0x10000>; 353 + status = "okay"; 354 + }; 355 + 356 + bbnsm: bbnsm@44440000 { 357 + compatible = "nxp,imx93-bbnsm", "syscon", "simple-mfd"; 358 + reg = <0x44440000 0x10000>; 359 + 360 + bbnsm_rtc: rtc { 361 + compatible = "nxp,imx93-bbnsm-rtc"; 362 + interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 363 + }; 364 + 365 + bbnsm_pwrkey: pwrkey { 366 + compatible = "nxp,imx93-bbnsm-pwrkey"; 367 + interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 368 + linux,code = <KEY_POWER>; 369 + }; 370 + }; 371 + 372 + clk: clock-controller@44450000 { 373 + compatible = "fsl,imx93-ccm"; 374 + reg = <0x44450000 0x10000>; 375 + #clock-cells = <1>; 376 + clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>; 377 + clock-names = "osc_32k", "osc_24m", "clk_ext1"; 378 + assigned-clocks = <&clk IMX93_CLK_AUDIO_PLL>; 379 + assigned-clock-rates = <393216000>; 380 + status = "okay"; 381 + }; 382 + 383 + src: system-controller@44460000 { 384 + compatible = "fsl,imx93-src", "syscon"; 385 + reg = <0x44460000 0x10000>; 386 + #address-cells = <1>; 387 + #size-cells = <1>; 388 + ranges; 389 + 390 + mediamix: power-domain@44462400 { 391 + compatible = "fsl,imx93-src-slice"; 392 + reg = <0x44462400 0x400>, <0x44465800 0x400>; 393 + #power-domain-cells = <0>; 394 + clocks = <&clk IMX93_CLK_NIC_MEDIA_GATE>, 395 + <&clk IMX93_CLK_MEDIA_APB>; 396 + }; 397 + }; 398 + 399 + clock-controller@44480000 { 400 + compatible = "fsl,imx93-anatop"; 401 + reg = <0x44480000 0x2000>; 402 + #clock-cells = <1>; 403 + }; 404 + 405 + micfil: micfil@44520000 { 406 + compatible = "fsl,imx93-micfil"; 407 + reg = <0x44520000 0x10000>; 408 + interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>, 409 + <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>, 410 + <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>, 411 + <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>; 412 + clocks = <&clk IMX93_CLK_PDM_IPG>, 413 + <&clk IMX93_CLK_PDM_GATE>, 414 + <&clk IMX93_CLK_AUDIO_PLL>; 415 + clock-names = "ipg_clk", "ipg_clk_app", "pll8k"; 416 + dmas = <&edma1 29 0 5>; 417 + dma-names = "rx"; 418 + #sound-dai-cells = <0>; 419 + status = "disabled"; 420 + }; 421 + 422 + adc1: adc@44530000 { 423 + compatible = "nxp,imx93-adc"; 424 + reg = <0x44530000 0x10000>; 425 + interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>, 426 + <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>, 427 + <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>; 428 + clocks = <&clk IMX93_CLK_ADC1_GATE>; 429 + clock-names = "ipg"; 430 + #io-channel-cells = <1>; 431 + status = "disabled"; 432 + }; 433 + }; 434 + 435 + aips2: bus@42000000 { 436 + compatible = "fsl,aips-bus", "simple-bus"; 437 + reg = <0x42000000 0x800000>; 438 + #address-cells = <1>; 439 + #size-cells = <1>; 440 + ranges; 441 + 442 + edma2: dma-controller@42000000 { 443 + compatible = "fsl,imx93-edma4"; 444 + reg = <0x42000000 0x210000>; 445 + #dma-cells = <3>; 446 + dma-channels = <64>; 447 + interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 448 + <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 449 + <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 450 + <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 451 + <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 452 + <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 453 + <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 454 + <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 455 + <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 456 + <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 457 + <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 458 + <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 459 + <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 460 + <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 461 + <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 462 + <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 463 + <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 464 + <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 465 + <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 466 + <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 467 + <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 468 + <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 469 + <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 470 + <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 471 + <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 472 + <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 473 + <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 474 + <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 475 + <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 476 + <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 477 + <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 478 + <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 479 + <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 480 + <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 481 + <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 482 + <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 483 + <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 484 + <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 485 + <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 486 + <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 487 + <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 488 + <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 489 + <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 490 + <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 491 + <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 492 + <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 493 + <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>, 494 + <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>, 495 + <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 496 + <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 497 + <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 498 + <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 499 + <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 500 + <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 501 + <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 502 + <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 503 + <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>, 504 + <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>, 505 + <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 506 + <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 507 + <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 508 + <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 509 + <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 510 + <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 511 + <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 512 + clocks = <&clk IMX93_CLK_EDMA2_GATE>; 513 + clock-names = "dma"; 514 + }; 515 + 516 + wakeupmix_gpr: syscon@42420000 { 517 + compatible = "fsl,imx93-wakeupmix-syscfg", "syscon"; 518 + reg = <0x42420000 0x1000>; 519 + }; 520 + 521 + wdog3: watchdog@42490000 { 522 + compatible = "fsl,imx93-wdt"; 523 + reg = <0x42490000 0x10000>; 524 + interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 525 + clocks = <&clk IMX93_CLK_WDOG3_GATE>; 526 + timeout-sec = <40>; 527 + status = "disabled"; 528 + }; 529 + 530 + wdog4: watchdog@424a0000 { 531 + compatible = "fsl,imx93-wdt"; 532 + reg = <0x424a0000 0x10000>; 533 + interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 534 + clocks = <&clk IMX93_CLK_WDOG4_GATE>; 535 + timeout-sec = <40>; 536 + status = "disabled"; 537 + }; 538 + 539 + wdog5: watchdog@424b0000 { 540 + compatible = "fsl,imx93-wdt"; 541 + reg = <0x424b0000 0x10000>; 542 + interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 543 + clocks = <&clk IMX93_CLK_WDOG5_GATE>; 544 + timeout-sec = <40>; 545 + status = "disabled"; 546 + }; 547 + 548 + tpm3: pwm@424e0000 { 549 + compatible = "fsl,imx7ulp-pwm"; 550 + reg = <0x424e0000 0x1000>; 551 + clocks = <&clk IMX93_CLK_TPM3_GATE>; 552 + #pwm-cells = <3>; 553 + status = "disabled"; 554 + }; 555 + 556 + tpm4: pwm@424f0000 { 557 + compatible = "fsl,imx7ulp-pwm"; 558 + reg = <0x424f0000 0x10000>; 559 + clocks = <&clk IMX93_CLK_TPM4_GATE>; 560 + #pwm-cells = <3>; 561 + status = "disabled"; 562 + }; 563 + 564 + tpm5: pwm@42500000 { 565 + compatible = "fsl,imx7ulp-pwm"; 566 + reg = <0x42500000 0x10000>; 567 + clocks = <&clk IMX93_CLK_TPM5_GATE>; 568 + #pwm-cells = <3>; 569 + status = "disabled"; 570 + }; 571 + 572 + tpm6: pwm@42510000 { 573 + compatible = "fsl,imx7ulp-pwm"; 574 + reg = <0x42510000 0x10000>; 575 + clocks = <&clk IMX93_CLK_TPM6_GATE>; 576 + #pwm-cells = <3>; 577 + status = "disabled"; 578 + }; 579 + 580 + i3c2: i3c@42520000 { 581 + compatible = "silvaco,i3c-master-v1"; 582 + reg = <0x42520000 0x10000>; 583 + interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; 584 + #address-cells = <3>; 585 + #size-cells = <0>; 586 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 587 + <&clk IMX93_CLK_I3C2_GATE>, 588 + <&clk IMX93_CLK_I3C2_SLOW>; 589 + clock-names = "pclk", "fast_clk", "slow_clk"; 590 + status = "disabled"; 591 + }; 592 + 593 + lpi2c3: i2c@42530000 { 594 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 595 + reg = <0x42530000 0x10000>; 596 + #address-cells = <1>; 597 + #size-cells = <0>; 598 + interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 599 + clocks = <&clk IMX93_CLK_LPI2C3_GATE>, 600 + <&clk IMX93_CLK_BUS_WAKEUP>; 601 + clock-names = "per", "ipg"; 602 + dmas = <&edma2 8 0 0>, <&edma2 9 0 FSL_EDMA_RX>; 603 + dma-names = "tx", "rx"; 604 + status = "disabled"; 605 + }; 606 + 607 + lpi2c4: i2c@42540000 { 608 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 609 + reg = <0x42540000 0x10000>; 610 + #address-cells = <1>; 611 + #size-cells = <0>; 612 + interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 613 + clocks = <&clk IMX93_CLK_LPI2C4_GATE>, 614 + <&clk IMX93_CLK_BUS_WAKEUP>; 615 + clock-names = "per", "ipg"; 616 + dmas = <&edma2 10 0 0>, <&edma2 11 0 FSL_EDMA_RX>; 617 + dma-names = "tx", "rx"; 618 + status = "disabled"; 619 + }; 620 + 621 + lpspi3: spi@42550000 { 622 + #address-cells = <1>; 623 + #size-cells = <0>; 624 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 625 + reg = <0x42550000 0x10000>; 626 + interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 627 + clocks = <&clk IMX93_CLK_LPSPI3_GATE>, 628 + <&clk IMX93_CLK_BUS_WAKEUP>; 629 + clock-names = "per", "ipg"; 630 + dmas = <&edma2 12 0 0>, <&edma2 13 0 FSL_EDMA_RX>; 631 + dma-names = "tx", "rx"; 632 + status = "disabled"; 633 + }; 634 + 635 + lpspi4: spi@42560000 { 636 + #address-cells = <1>; 637 + #size-cells = <0>; 638 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 639 + reg = <0x42560000 0x10000>; 640 + interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 641 + clocks = <&clk IMX93_CLK_LPSPI4_GATE>, 642 + <&clk IMX93_CLK_BUS_WAKEUP>; 643 + clock-names = "per", "ipg"; 644 + dmas = <&edma2 14 0 0>, <&edma2 15 0 FSL_EDMA_RX>; 645 + dma-names = "tx", "rx"; 646 + status = "disabled"; 647 + }; 648 + 649 + lpuart3: serial@42570000 { 650 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 651 + reg = <0x42570000 0x1000>; 652 + interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 653 + clocks = <&clk IMX93_CLK_LPUART3_GATE>; 654 + clock-names = "ipg"; 655 + dmas = <&edma2 18 0 FSL_EDMA_RX>, <&edma2 17 0 0>; 656 + dma-names = "rx", "tx"; 657 + status = "disabled"; 658 + }; 659 + 660 + lpuart4: serial@42580000 { 661 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 662 + reg = <0x42580000 0x1000>; 663 + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 664 + clocks = <&clk IMX93_CLK_LPUART4_GATE>; 665 + clock-names = "ipg"; 666 + dmas = <&edma2 20 0 FSL_EDMA_RX>, <&edma2 19 0 0>; 667 + dma-names = "rx", "tx"; 668 + status = "disabled"; 669 + }; 670 + 671 + lpuart5: serial@42590000 { 672 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 673 + reg = <0x42590000 0x1000>; 674 + interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 675 + clocks = <&clk IMX93_CLK_LPUART5_GATE>; 676 + clock-names = "ipg"; 677 + dmas = <&edma2 22 0 FSL_EDMA_RX>, <&edma2 21 0 0>; 678 + dma-names = "rx", "tx"; 679 + status = "disabled"; 680 + }; 681 + 682 + lpuart6: serial@425a0000 { 683 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 684 + reg = <0x425a0000 0x1000>; 685 + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 686 + clocks = <&clk IMX93_CLK_LPUART6_GATE>; 687 + clock-names = "ipg"; 688 + dmas = <&edma2 24 0 FSL_EDMA_RX>, <&edma2 23 0 0>; 689 + dma-names = "rx", "tx"; 690 + status = "disabled"; 691 + }; 692 + 693 + flexcan2: can@425b0000 { 694 + compatible = "fsl,imx93-flexcan"; 695 + reg = <0x425b0000 0x10000>; 696 + interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 697 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 698 + <&clk IMX93_CLK_CAN2_GATE>; 699 + clock-names = "ipg", "per"; 700 + assigned-clocks = <&clk IMX93_CLK_CAN2>; 701 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 702 + assigned-clock-rates = <40000000>; 703 + fsl,clk-source = /bits/ 8 <0>; 704 + fsl,stop-mode = <&wakeupmix_gpr 0x0c 2>; 705 + status = "disabled"; 706 + }; 707 + 708 + flexspi1: spi@425e0000 { 709 + compatible = "nxp,imx8mm-fspi"; 710 + reg = <0x425e0000 0x10000>, <0x28000000 0x10000000>; 711 + reg-names = "fspi_base", "fspi_mmap"; 712 + #address-cells = <1>; 713 + #size-cells = <0>; 714 + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 715 + clocks = <&clk IMX93_CLK_FLEXSPI1_GATE>, 716 + <&clk IMX93_CLK_FLEXSPI1_GATE>; 717 + clock-names = "fspi_en", "fspi"; 718 + assigned-clocks = <&clk IMX93_CLK_FLEXSPI1>; 719 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 720 + status = "disabled"; 721 + }; 722 + 723 + sai2: sai@42650000 { 724 + compatible = "fsl,imx93-sai"; 725 + reg = <0x42650000 0x10000>; 726 + interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>; 727 + clocks = <&clk IMX93_CLK_SAI2_IPG>, <&clk IMX93_CLK_DUMMY>, 728 + <&clk IMX93_CLK_SAI2_GATE>, <&clk IMX93_CLK_DUMMY>, 729 + <&clk IMX93_CLK_DUMMY>; 730 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 731 + dmas = <&edma2 59 0 FSL_EDMA_RX>, <&edma2 58 0 0>; 732 + dma-names = "rx", "tx"; 733 + #sound-dai-cells = <0>; 734 + status = "disabled"; 735 + }; 736 + 737 + sai3: sai@42660000 { 738 + compatible = "fsl,imx93-sai"; 739 + reg = <0x42660000 0x10000>; 740 + interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>; 741 + clocks = <&clk IMX93_CLK_SAI3_IPG>, <&clk IMX93_CLK_DUMMY>, 742 + <&clk IMX93_CLK_SAI3_GATE>, <&clk IMX93_CLK_DUMMY>, 743 + <&clk IMX93_CLK_DUMMY>; 744 + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 745 + dmas = <&edma2 61 0 FSL_EDMA_RX>, <&edma2 60 0 0>; 746 + dma-names = "rx", "tx"; 747 + #sound-dai-cells = <0>; 748 + status = "disabled"; 749 + }; 750 + 751 + xcvr: xcvr@42680000 { 752 + compatible = "fsl,imx93-xcvr"; 753 + reg = <0x42680000 0x800>, 754 + <0x42680800 0x400>, 755 + <0x42680c00 0x080>, 756 + <0x42680e00 0x080>; 757 + reg-names = "ram", "regs", "rxfifo", "txfifo"; 758 + interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 759 + <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>; 760 + clocks = <&clk IMX93_CLK_SPDIF_IPG>, 761 + <&clk IMX93_CLK_SPDIF_GATE>, 762 + <&clk IMX93_CLK_DUMMY>, 763 + <&clk IMX93_CLK_AUD_XCVR_GATE>; 764 + clock-names = "ipg", "phy", "spba", "pll_ipg"; 765 + dmas = <&edma2 65 0 FSL_EDMA_RX>, <&edma2 66 0 0>; 766 + dma-names = "rx", "tx"; 767 + #sound-dai-cells = <0>; 768 + status = "disabled"; 769 + }; 770 + 771 + lpuart7: serial@42690000 { 772 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 773 + reg = <0x42690000 0x1000>; 774 + interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>; 775 + clocks = <&clk IMX93_CLK_LPUART7_GATE>; 776 + clock-names = "ipg"; 777 + dmas = <&edma2 88 0 FSL_EDMA_RX>, <&edma2 87 0 0>; 778 + dma-names = "rx", "tx"; 779 + status = "disabled"; 780 + }; 781 + 782 + lpuart8: serial@426a0000 { 783 + compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 784 + reg = <0x426a0000 0x1000>; 785 + interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>; 786 + clocks = <&clk IMX93_CLK_LPUART8_GATE>; 787 + clock-names = "ipg"; 788 + dmas = <&edma2 90 0 FSL_EDMA_RX>, <&edma2 89 0 0>; 789 + dma-names = "rx", "tx"; 790 + status = "disabled"; 791 + }; 792 + 793 + lpi2c5: i2c@426b0000 { 794 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 795 + reg = <0x426b0000 0x10000>; 796 + #address-cells = <1>; 797 + #size-cells = <0>; 798 + interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>; 799 + clocks = <&clk IMX93_CLK_LPI2C5_GATE>, 800 + <&clk IMX93_CLK_BUS_WAKEUP>; 801 + clock-names = "per", "ipg"; 802 + dmas = <&edma2 71 0 0>, <&edma2 72 0 FSL_EDMA_RX>; 803 + dma-names = "tx", "rx"; 804 + status = "disabled"; 805 + }; 806 + 807 + lpi2c6: i2c@426c0000 { 808 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 809 + reg = <0x426c0000 0x10000>; 810 + #address-cells = <1>; 811 + #size-cells = <0>; 812 + interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>; 813 + clocks = <&clk IMX93_CLK_LPI2C6_GATE>, 814 + <&clk IMX93_CLK_BUS_WAKEUP>; 815 + clock-names = "per", "ipg"; 816 + dmas = <&edma2 73 0 0>, <&edma2 74 0 FSL_EDMA_RX>; 817 + dma-names = "tx", "rx"; 818 + status = "disabled"; 819 + }; 820 + 821 + lpi2c7: i2c@426d0000 { 822 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 823 + reg = <0x426d0000 0x10000>; 824 + #address-cells = <1>; 825 + #size-cells = <0>; 826 + interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>; 827 + clocks = <&clk IMX93_CLK_LPI2C7_GATE>, 828 + <&clk IMX93_CLK_BUS_WAKEUP>; 829 + clock-names = "per", "ipg"; 830 + dmas = <&edma2 75 0 0>, <&edma2 76 0 FSL_EDMA_RX>; 831 + dma-names = "tx", "rx"; 832 + status = "disabled"; 833 + }; 834 + 835 + lpi2c8: i2c@426e0000 { 836 + compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 837 + reg = <0x426e0000 0x10000>; 838 + #address-cells = <1>; 839 + #size-cells = <0>; 840 + interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>; 841 + clocks = <&clk IMX93_CLK_LPI2C8_GATE>, 842 + <&clk IMX93_CLK_BUS_WAKEUP>; 843 + clock-names = "per", "ipg"; 844 + dmas = <&edma2 77 0 0>, <&edma2 78 0 FSL_EDMA_RX>; 845 + dma-names = "tx", "rx"; 846 + status = "disabled"; 847 + }; 848 + 849 + lpspi5: spi@426f0000 { 850 + #address-cells = <1>; 851 + #size-cells = <0>; 852 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 853 + reg = <0x426f0000 0x10000>; 854 + interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>; 855 + clocks = <&clk IMX93_CLK_LPSPI5_GATE>, 856 + <&clk IMX93_CLK_BUS_WAKEUP>; 857 + clock-names = "per", "ipg"; 858 + dmas = <&edma2 79 0 0>, <&edma2 80 0 FSL_EDMA_RX>; 859 + dma-names = "tx", "rx"; 860 + status = "disabled"; 861 + }; 862 + 863 + lpspi6: spi@42700000 { 864 + #address-cells = <1>; 865 + #size-cells = <0>; 866 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 867 + reg = <0x42700000 0x10000>; 868 + interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>; 869 + clocks = <&clk IMX93_CLK_LPSPI6_GATE>, 870 + <&clk IMX93_CLK_BUS_WAKEUP>; 871 + clock-names = "per", "ipg"; 872 + dmas = <&edma2 81 0 0>, <&edma2 82 0 FSL_EDMA_RX>; 873 + dma-names = "tx", "rx"; 874 + status = "disabled"; 875 + }; 876 + 877 + lpspi7: spi@42710000 { 878 + #address-cells = <1>; 879 + #size-cells = <0>; 880 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 881 + reg = <0x42710000 0x10000>; 882 + interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 883 + clocks = <&clk IMX93_CLK_LPSPI7_GATE>, 884 + <&clk IMX93_CLK_BUS_WAKEUP>; 885 + clock-names = "per", "ipg"; 886 + dmas = <&edma2 83 0 0>, <&edma2 84 0 FSL_EDMA_RX>; 887 + dma-names = "tx", "rx"; 888 + status = "disabled"; 889 + }; 890 + 891 + lpspi8: spi@42720000 { 892 + #address-cells = <1>; 893 + #size-cells = <0>; 894 + compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 895 + reg = <0x42720000 0x10000>; 896 + interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>; 897 + clocks = <&clk IMX93_CLK_LPSPI8_GATE>, 898 + <&clk IMX93_CLK_BUS_WAKEUP>; 899 + clock-names = "per", "ipg"; 900 + dmas = <&edma2 85 0 0>, <&edma2 86 0 FSL_EDMA_RX>; 901 + dma-names = "tx", "rx"; 902 + status = "disabled"; 903 + }; 904 + 905 + }; 906 + 907 + aips3: bus@42800000 { 908 + compatible = "fsl,aips-bus", "simple-bus"; 909 + reg = <0x42800000 0x800000>; 910 + #address-cells = <1>; 911 + #size-cells = <1>; 912 + ranges; 913 + 914 + usdhc1: mmc@42850000 { 915 + compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 916 + reg = <0x42850000 0x10000>; 917 + interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 918 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 919 + <&clk IMX93_CLK_WAKEUP_AXI>, 920 + <&clk IMX93_CLK_USDHC1_GATE>; 921 + clock-names = "ipg", "ahb", "per"; 922 + assigned-clocks = <&clk IMX93_CLK_USDHC1>; 923 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 924 + assigned-clock-rates = <400000000>; 925 + bus-width = <8>; 926 + fsl,tuning-start-tap = <1>; 927 + fsl,tuning-step = <2>; 928 + status = "disabled"; 929 + }; 930 + 931 + usdhc2: mmc@42860000 { 932 + compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 933 + reg = <0x42860000 0x10000>; 934 + interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 935 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 936 + <&clk IMX93_CLK_WAKEUP_AXI>, 937 + <&clk IMX93_CLK_USDHC2_GATE>; 938 + clock-names = "ipg", "ahb", "per"; 939 + assigned-clocks = <&clk IMX93_CLK_USDHC2>; 940 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 941 + assigned-clock-rates = <400000000>; 942 + bus-width = <4>; 943 + fsl,tuning-start-tap = <1>; 944 + fsl,tuning-step = <2>; 945 + status = "disabled"; 946 + }; 947 + 948 + fec: ethernet@42890000 { 949 + compatible = "fsl,imx93-fec", "fsl,imx8mq-fec", "fsl,imx6sx-fec"; 950 + reg = <0x42890000 0x10000>; 951 + interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>, 952 + <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>, 953 + <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 954 + <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>; 955 + clocks = <&clk IMX93_CLK_ENET1_GATE>, 956 + <&clk IMX93_CLK_ENET1_GATE>, 957 + <&clk IMX93_CLK_ENET_TIMER1>, 958 + <&clk IMX93_CLK_ENET_REF>, 959 + <&clk IMX93_CLK_ENET_REF_PHY>; 960 + clock-names = "ipg", "ahb", "ptp", 961 + "enet_clk_ref", "enet_out"; 962 + assigned-clocks = <&clk IMX93_CLK_ENET_TIMER1>, 963 + <&clk IMX93_CLK_ENET_REF>, 964 + <&clk IMX93_CLK_ENET_REF_PHY>; 965 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 966 + <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>, 967 + <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 968 + assigned-clock-rates = <100000000>, <250000000>, <50000000>; 969 + fsl,num-tx-queues = <3>; 970 + fsl,num-rx-queues = <3>; 971 + fsl,stop-mode = <&wakeupmix_gpr 0x0c 1>; 972 + nvmem-cells = <&eth_mac1>; 973 + nvmem-cell-names = "mac-address"; 974 + status = "disabled"; 975 + }; 976 + 977 + eqos: ethernet@428a0000 { 978 + compatible = "nxp,imx93-dwmac-eqos", "snps,dwmac-5.10a"; 979 + reg = <0x428a0000 0x10000>; 980 + interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 981 + <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 982 + interrupt-names = "macirq", "eth_wake_irq"; 983 + clocks = <&clk IMX93_CLK_ENET_QOS_GATE>, 984 + <&clk IMX93_CLK_ENET_QOS_GATE>, 985 + <&clk IMX93_CLK_ENET_TIMER2>, 986 + <&clk IMX93_CLK_ENET>, 987 + <&clk IMX93_CLK_ENET_QOS_GATE>; 988 + clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem"; 989 + assigned-clocks = <&clk IMX93_CLK_ENET_TIMER2>, 990 + <&clk IMX93_CLK_ENET>; 991 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 992 + <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>; 993 + assigned-clock-rates = <100000000>, <250000000>; 994 + intf_mode = <&wakeupmix_gpr 0x28>; 995 + snps,clk-csr = <6>; 996 + nvmem-cells = <&eth_mac2>; 997 + nvmem-cell-names = "mac-address"; 998 + status = "disabled"; 999 + }; 1000 + 1001 + usdhc3: mmc@428b0000 { 1002 + compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 1003 + reg = <0x428b0000 0x10000>; 1004 + interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 1005 + clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 1006 + <&clk IMX93_CLK_WAKEUP_AXI>, 1007 + <&clk IMX93_CLK_USDHC3_GATE>; 1008 + clock-names = "ipg", "ahb", "per"; 1009 + assigned-clocks = <&clk IMX93_CLK_USDHC3>; 1010 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 1011 + assigned-clock-rates = <400000000>; 1012 + bus-width = <4>; 1013 + fsl,tuning-start-tap = <1>; 1014 + fsl,tuning-step = <2>; 1015 + status = "disabled"; 1016 + }; 1017 + }; 1018 + 1019 + gpio2: gpio@43810000 { 1020 + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1021 + reg = <0x43810000 0x1000>; 1022 + gpio-controller; 1023 + #gpio-cells = <2>; 1024 + interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, 1025 + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; 1026 + interrupt-controller; 1027 + #interrupt-cells = <2>; 1028 + clocks = <&clk IMX93_CLK_GPIO2_GATE>, 1029 + <&clk IMX93_CLK_GPIO2_GATE>; 1030 + clock-names = "gpio", "port"; 1031 + gpio-ranges = <&iomuxc 0 4 30>; 1032 + ngpios = <30>; 1033 + }; 1034 + 1035 + gpio3: gpio@43820000 { 1036 + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1037 + reg = <0x43820000 0x1000>; 1038 + gpio-controller; 1039 + #gpio-cells = <2>; 1040 + interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, 1041 + <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 1042 + interrupt-controller; 1043 + #interrupt-cells = <2>; 1044 + clocks = <&clk IMX93_CLK_GPIO3_GATE>, 1045 + <&clk IMX93_CLK_GPIO3_GATE>; 1046 + clock-names = "gpio", "port"; 1047 + gpio-ranges = <&iomuxc 0 84 8>, <&iomuxc 8 66 18>, 1048 + <&iomuxc 26 34 2>, <&iomuxc 28 0 4>; 1049 + ngpios = <32>; 1050 + }; 1051 + 1052 + gpio4: gpio@43830000 { 1053 + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1054 + reg = <0x43830000 0x1000>; 1055 + gpio-controller; 1056 + #gpio-cells = <2>; 1057 + interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 1058 + <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 1059 + interrupt-controller; 1060 + #interrupt-cells = <2>; 1061 + clocks = <&clk IMX93_CLK_GPIO4_GATE>, 1062 + <&clk IMX93_CLK_GPIO4_GATE>; 1063 + clock-names = "gpio", "port"; 1064 + gpio-ranges = <&iomuxc 0 38 28>, <&iomuxc 28 36 2>; 1065 + ngpios = <30>; 1066 + }; 1067 + 1068 + gpio1: gpio@47400000 { 1069 + compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1070 + reg = <0x47400000 0x1000>; 1071 + gpio-controller; 1072 + #gpio-cells = <2>; 1073 + interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>, 1074 + <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 1075 + interrupt-controller; 1076 + #interrupt-cells = <2>; 1077 + clocks = <&clk IMX93_CLK_GPIO1_GATE>, 1078 + <&clk IMX93_CLK_GPIO1_GATE>; 1079 + clock-names = "gpio", "port"; 1080 + gpio-ranges = <&iomuxc 0 92 16>; 1081 + ngpios = <16>; 1082 + }; 1083 + 1084 + ocotp: efuse@47510000 { 1085 + compatible = "fsl,imx93-ocotp", "syscon"; 1086 + reg = <0x47510000 0x10000>; 1087 + #address-cells = <1>; 1088 + #size-cells = <1>; 1089 + 1090 + eth_mac1: mac-address@4ec { 1091 + reg = <0x4ec 0x6>; 1092 + }; 1093 + 1094 + eth_mac2: mac-address@4f2 { 1095 + reg = <0x4f2 0x6>; 1096 + }; 1097 + 1098 + }; 1099 + 1100 + s4muap: mailbox@47520000 { 1101 + compatible = "fsl,imx93-mu-s4"; 1102 + reg = <0x47520000 0x10000>; 1103 + interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 1104 + <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 1105 + interrupt-names = "tx", "rx"; 1106 + #mbox-cells = <2>; 1107 + }; 1108 + 1109 + media_blk_ctrl: system-controller@4ac10000 { 1110 + compatible = "fsl,imx93-media-blk-ctrl", "syscon"; 1111 + reg = <0x4ac10000 0x10000>; 1112 + power-domains = <&mediamix>; 1113 + clocks = <&clk IMX93_CLK_MEDIA_APB>, 1114 + <&clk IMX93_CLK_MEDIA_AXI>, 1115 + <&clk IMX93_CLK_NIC_MEDIA_GATE>, 1116 + <&clk IMX93_CLK_MEDIA_DISP_PIX>, 1117 + <&clk IMX93_CLK_CAM_PIX>, 1118 + <&clk IMX93_CLK_PXP_GATE>, 1119 + <&clk IMX93_CLK_LCDIF_GATE>, 1120 + <&clk IMX93_CLK_ISI_GATE>, 1121 + <&clk IMX93_CLK_MIPI_CSI_GATE>, 1122 + <&clk IMX93_CLK_MIPI_DSI_GATE>; 1123 + clock-names = "apb", "axi", "nic", "disp", "cam", 1124 + "pxp", "lcdif", "isi", "csi", "dsi"; 1125 + #power-domain-cells = <1>; 1126 + status = "disabled"; 1127 + }; 1128 + 1129 + usbotg1: usb@4c100000 { 1130 + compatible = "fsl,imx93-usb", "fsl,imx7d-usb", "fsl,imx27-usb"; 1131 + reg = <0x4c100000 0x200>; 1132 + interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>; 1133 + clocks = <&clk IMX93_CLK_USB_CONTROLLER_GATE>, 1134 + <&clk IMX93_CLK_HSIO_32K_GATE>; 1135 + clock-names = "usb_ctrl_root", "usb_wakeup"; 1136 + assigned-clocks = <&clk IMX93_CLK_HSIO>; 1137 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 1138 + assigned-clock-rates = <133000000>; 1139 + phys = <&usbphynop1>; 1140 + fsl,usbmisc = <&usbmisc1 0>; 1141 + status = "disabled"; 1142 + }; 1143 + 1144 + usbmisc1: usbmisc@4c100200 { 1145 + compatible = "fsl,imx8mm-usbmisc", "fsl,imx7d-usbmisc", 1146 + "fsl,imx6q-usbmisc"; 1147 + reg = <0x4c100200 0x200>; 1148 + #index-cells = <1>; 1149 + }; 1150 + 1151 + usbotg2: usb@4c200000 { 1152 + compatible = "fsl,imx93-usb", "fsl,imx7d-usb", "fsl,imx27-usb"; 1153 + reg = <0x4c200000 0x200>; 1154 + interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 1155 + clocks = <&clk IMX93_CLK_USB_CONTROLLER_GATE>, 1156 + <&clk IMX93_CLK_HSIO_32K_GATE>; 1157 + clock-names = "usb_ctrl_root", "usb_wakeup"; 1158 + assigned-clocks = <&clk IMX93_CLK_HSIO>; 1159 + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 1160 + assigned-clock-rates = <133000000>; 1161 + phys = <&usbphynop2>; 1162 + fsl,usbmisc = <&usbmisc2 0>; 1163 + status = "disabled"; 1164 + }; 1165 + 1166 + usbmisc2: usbmisc@4c200200 { 1167 + compatible = "fsl,imx8mm-usbmisc", "fsl,imx7d-usbmisc", 1168 + "fsl,imx6q-usbmisc"; 1169 + reg = <0x4c200200 0x200>; 1170 + #index-cells = <1>; 1171 + }; 1172 + 1173 + memory-controller@4e300000 { 1174 + compatible = "nxp,imx9-memory-controller"; 1175 + reg = <0x4e300000 0x800>, <0x4e301000 0x1000>; 1176 + reg-names = "ctrl", "inject"; 1177 + interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 1178 + little-endian; 1179 + }; 1180 + 1181 + ddr_pmu: ddr-pmu@4e300dc0 { 1182 + compatible = "fsl,imx93-ddr-pmu"; 1183 + reg = <0x4e300dc0 0x200>; 1184 + interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1185 + }; 1186 + }; 1187 + };
+19 -1
arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts
··· 12 12 model = "NXP i.MX93 11X11 EVK board"; 13 13 compatible = "fsl,imx93-11x11-evk", "fsl,imx93"; 14 14 15 + aliases { 16 + ethernet0 = &fec; 17 + ethernet1 = &eqos; 18 + gpio0 = &gpio1; 19 + gpio1 = &gpio2; 20 + gpio2 = &gpio3; 21 + i2c0 = &lpi2c1; 22 + i2c1 = &lpi2c2; 23 + i2c2 = &lpi2c3; 24 + mmc0 = &usdhc1; 25 + mmc1 = &usdhc2; 26 + rtc0 = &bbnsm_rtc; 27 + serial0 = &lpuart1; 28 + serial1 = &lpuart2; 29 + serial2 = &lpuart3; 30 + serial3 = &lpuart4; 31 + serial4 = &lpuart5; 32 + }; 33 + 15 34 chosen { 16 35 stdout-path = &lpuart1; 17 36 }; ··· 291 272 292 273 ethphy2: ethernet-phy@2 { 293 274 reg = <2>; 294 - eee-broken-1000t; 295 275 reset-gpios = <&pcal6524 16 GPIO_ACTIVE_LOW>; 296 276 reset-assert-us = <10000>; 297 277 reset-deassert-us = <80000>;
+17 -2
arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
··· 12 12 model = "NXP i.MX93 14X14 EVK board"; 13 13 compatible = "fsl,imx93-14x14-evk", "fsl,imx93"; 14 14 15 + aliases { 16 + ethernet0 = &fec; 17 + ethernet1 = &eqos; 18 + gpio0 = &gpio1; 19 + gpio1 = &gpio2; 20 + gpio2 = &gpio3; 21 + i2c0 = &lpi2c1; 22 + i2c1 = &lpi2c2; 23 + i2c2 = &lpi2c3; 24 + mmc0 = &usdhc1; 25 + mmc1 = &usdhc2; 26 + rtc0 = &bbnsm_rtc; 27 + serial0 = &lpuart1; 28 + }; 29 + 15 30 chosen { 16 31 stdout-path = &lpuart1; 17 32 }; ··· 291 276 regulator-ramp-delay = <3125>; 292 277 }; 293 278 294 - buck4: BUCK4{ 279 + buck4: BUCK4 { 295 280 regulator-name = "BUCK4"; 296 281 regulator-min-microvolt = <1620000>; 297 282 regulator-max-microvolt = <3400000>; ··· 299 284 regulator-always-on; 300 285 }; 301 286 302 - buck5: BUCK5{ 287 + buck5: BUCK5 { 303 288 regulator-name = "BUCK5"; 304 289 regulator-min-microvolt = <1620000>; 305 290 regulator-max-microvolt = <3400000>;
+18
arch/arm64/boot/dts/freescale/imx93-9x9-qsb.dts
··· 17 17 compatible = "linux,bt-sco"; 18 18 }; 19 19 20 + aliases { 21 + ethernet0 = &fec; 22 + ethernet1 = &eqos; 23 + gpio0 = &gpio1; 24 + gpio1 = &gpio2; 25 + gpio2 = &gpio3; 26 + i2c0 = &lpi2c1; 27 + i2c1 = &lpi2c2; 28 + mmc0 = &usdhc1; 29 + mmc1 = &usdhc2; 30 + rtc0 = &bbnsm_rtc; 31 + serial0 = &lpuart1; 32 + serial1 = &lpuart2; 33 + serial2 = &lpuart3; 34 + serial3 = &lpuart4; 35 + serial4 = &lpuart5; 36 + }; 37 + 20 38 chosen { 21 39 stdout-path = &lpuart1; 22 40 };
+42 -11
arch/arm64/boot/dts/freescale/imx93-kontron-bl-osm-s.dts
··· 14 14 aliases { 15 15 ethernet0 = &fec; 16 16 ethernet1 = &eqos; 17 + gpio0 = &gpio1; 18 + gpio1 = &gpio2; 19 + i2c0 = &lpi2c1; 20 + i2c1 = &lpi2c2; 21 + mmc0 = &usdhc1; 22 + mmc1 = &usdhc2; 23 + serial0 = &lpuart1; 24 + serial1 = &lpuart2; 25 + serial2 = &lpuart3; 26 + serial3 = &lpuart4; 27 + serial4 = &lpuart5; 28 + serial5 = &lpuart6; 29 + serial6 = &lpuart7; 30 + spi0 = &lpspi1; 31 + spi1 = &lpspi2; 32 + spi2 = &lpspi3; 33 + spi3 = &lpspi4; 34 + spi4 = &lpspi5; 35 + spi5 = &lpspi6; 36 + spi6 = &lpspi7; 37 + spi7 = &lpspi8; 17 38 }; 18 39 19 40 leds { ··· 54 33 55 34 reg_vcc_panel: regulator-vcc-panel { 56 35 compatible = "regulator-fixed"; 57 - gpio = <&gpio4 3 GPIO_ACTIVE_HIGH>; 36 + pinctrl-names = "default"; 37 + pinctrl-0 = <&pinctrl_reg_vcc_panel>; 38 + gpio = <&gpio2 21 GPIO_ACTIVE_HIGH>; 58 39 enable-active-high; 59 40 regulator-max-microvolt = <3300000>; 60 41 regulator-min-microvolt = <3300000>; ··· 158 135 }; 159 136 160 137 &usbotg1 { 138 + adp-disable; 139 + hnp-disable; 140 + srp-disable; 141 + disable-over-current; 142 + dr_mode = "otg"; 143 + usb-role-switch; 144 + status = "okay"; 145 + }; 146 + 147 + &usbotg2 { 161 148 #address-cells = <1>; 162 149 #size-cells = <0>; 163 150 disable-over-current; ··· 180 147 }; 181 148 }; 182 149 183 - &usbotg2 { 184 - adp-disable; 185 - hnp-disable; 186 - srp-disable; 187 - disable-over-current; 188 - dr_mode = "otg"; 189 - usb-role-switch; 190 - status = "okay"; 191 - }; 192 - 193 150 &usdhc2 { 194 151 vmmc-supply = <&reg_vdd_3v3>; 195 152 status = "okay"; 153 + }; 154 + 155 + &iomuxc { 156 + pinctrl_reg_vcc_panel: regvccpanelgrp { 157 + fsl,pins = < 158 + MX93_PAD_GPIO_IO21__GPIO2_IO21 0x31e /* PWM_2 */ 159 + >; 160 + }; 196 161 };
+9
arch/arm64/boot/dts/freescale/imx93-kontron-osm-s.dtsi
··· 205 205 rv3028: rtc@52 { 206 206 compatible = "microcrystal,rv3028"; 207 207 reg = <0x52>; 208 + pinctrl-names = "default"; 209 + pinctrl-0 = <&pinctrl_rtc>; 210 + interrupts-extended = <&gpio3 19 IRQ_TYPE_LEVEL_LOW>; 208 211 }; 209 212 }; 210 213 ··· 468 465 pinctrl_reg_vdd_carrier: regvddcarriergrp { 469 466 fsl,pins = < 470 467 MX93_PAD_CCM_CLKO4__GPIO4_IO29 0x31e /* CARRIER_PWR_EN */ 468 + >; 469 + }; 470 + 471 + pinctrl_rtc: rtcgrp { 472 + fsl,pins = < 473 + MX93_PAD_SD2_VSELECT__GPIO3_IO19 0x31e 471 474 >; 472 475 }; 473 476
+35
arch/arm64/boot/dts/freescale/imx93-phyboard-nash.dts
··· 19 19 20 20 aliases { 21 21 ethernet1 = &eqos; 22 + gpio0 = &gpio1; 23 + gpio1 = &gpio2; 24 + gpio2 = &gpio3; 25 + gpio3 = &gpio4; 26 + i2c0 = &lpi2c1; 27 + i2c1 = &lpi2c2; 28 + mmc0 = &usdhc1; 29 + mmc1 = &usdhc2; 22 30 rtc0 = &i2c_rtc; 23 31 rtc1 = &bbnsm_rtc; 32 + serial0 = &lpuart1; 33 + serial1 = &lpuart2; 34 + serial2 = &lpuart3; 35 + serial3 = &lpuart4; 36 + serial4 = &lpuart5; 37 + serial5 = &lpuart6; 38 + serial6 = &lpuart7; 39 + spi0 = &lpspi1; 40 + spi1 = &lpspi2; 41 + spi2 = &lpspi3; 42 + spi3 = &lpspi4; 43 + spi4 = &lpspi5; 44 + spi5 = &lpspi6; 24 45 }; 25 46 26 47 chosen { 27 48 stdout-path = &lpuart1; 49 + }; 50 + 51 + curr_sens: current-sense { 52 + compatible = "current-sense-amplifier"; 53 + #io-channel-cells = <0>; 54 + io-channels = <&adc1 1>; 55 + sense-gain-div = <2>; 56 + sense-gain-mult = <50>; 57 + sense-resistor-micro-ohms = <35000>; 28 58 }; 29 59 30 60 flexcan1_tc: can-phy0 { ··· 64 34 pinctrl-names = "default"; 65 35 pinctrl-0 = <&pinctrl_flexcan1_tc>; 66 36 standby-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>; 37 + }; 38 + 39 + iio-hwmon { 40 + compatible = "iio-hwmon"; 41 + io-channels = <&curr_sens 0>; 67 42 }; 68 43 69 44 reg_usdhc2_vmmc: regulator-usdhc2 {
+9
arch/arm64/boot/dts/freescale/imx93-phyboard-segin.dts
··· 19 19 20 20 aliases { 21 21 ethernet1 = &eqos; 22 + gpio0 = &gpio1; 23 + gpio1 = &gpio2; 24 + gpio2 = &gpio3; 25 + gpio3 = &gpio4; 26 + i2c0 = &lpi2c1; 27 + i2c1 = &lpi2c2; 28 + mmc0 = &usdhc1; 29 + mmc1 = &usdhc2; 22 30 rtc0 = &i2c_rtc; 23 31 rtc1 = &bbnsm_rtc; 32 + serial0 = &lpuart1; 24 33 }; 25 34 26 35 chosen {
+8 -4
arch/arm64/boot/dts/freescale/imx93-phycore-som.dtsi
··· 67 67 pinctrl-0 = <&pinctrl_fec>; 68 68 phy-mode = "rmii"; 69 69 phy-handle = <&ethphy1>; 70 - fsl,magic-packet; 71 70 assigned-clocks = <&clk IMX93_CLK_ENET_TIMER1>, 72 71 <&clk IMX93_CLK_ENET_REF>, 73 72 <&clk IMX93_CLK_ENET_REF_PHY>; ··· 84 85 ethphy1: ethernet-phy@1 { 85 86 compatible = "ethernet-phy-ieee802.3-c22"; 86 87 reg = <1>; 88 + reset-gpios = <&gpio4 23 GPIO_ACTIVE_HIGH>; 89 + reset-assert-us = <30>; 87 90 }; 88 91 }; 89 92 }; ··· 207 206 fsl,pins = < 208 207 MX93_PAD_ENET2_MDC__ENET1_MDC 0x50e 209 208 MX93_PAD_ENET2_MDIO__ENET1_MDIO 0x502 210 - MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0 0x57e 211 - MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1 0x57e 212 - MX93_PAD_ENET2_RXC__ENET1_RX_ER 0x5fe 209 + /* the three pins below are connected to PHYs straps, 210 + * that is what the pull-up/down setting is for. 211 + */ 212 + MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0 0x37e 213 + MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1 0x37e 213 214 MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL 0x57e 214 215 MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0 0x50e 215 216 MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1 0x50e 216 217 MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL 0x50e 217 218 MX93_PAD_ENET2_TD2__ENET1_TX_CLK 0x4000050e 219 + MX93_PAD_ENET2_RXC__GPIO4_IO23 0x51e 218 220 >; 219 221 }; 220 222
+11
arch/arm64/boot/dts/freescale/imx93-tqma9352-mba91xxca.dts
··· 27 27 eeprom0 = &eeprom0; 28 28 ethernet0 = &eqos; 29 29 ethernet1 = &fec; 30 + gpio0 = &gpio1; 31 + gpio1 = &gpio2; 32 + gpio2 = &gpio3; 33 + gpio3 = &gpio4; 34 + i2c0 = &lpi2c1; 35 + i2c1 = &lpi2c2; 36 + i2c2 = &lpi2c3; 37 + mmc0 = &usdhc1; 38 + mmc1 = &usdhc2; 30 39 rtc0 = &pcf85063; 31 40 rtc1 = &bbnsm_rtc; 41 + serial0 = &lpuart1; 42 + serial1 = &lpuart2; 32 43 }; 33 44 34 45 backlight: backlight {
+25
arch/arm64/boot/dts/freescale/imx93-tqma9352-mba93xxca.dts
··· 28 28 eeprom0 = &eeprom0; 29 29 ethernet0 = &eqos; 30 30 ethernet1 = &fec; 31 + gpio0 = &gpio1; 32 + gpio1 = &gpio2; 33 + gpio2 = &gpio3; 34 + gpio3 = &gpio4; 35 + i2c0 = &lpi2c1; 36 + i2c1 = &lpi2c2; 37 + i2c2 = &lpi2c3; 38 + i2c3 = &lpi2c4; 39 + i2c4 = &lpi2c5; 40 + mmc0 = &usdhc1; 41 + mmc1 = &usdhc2; 31 42 rtc0 = &pcf85063; 32 43 rtc1 = &bbnsm_rtc; 44 + serial0 = &lpuart1; 45 + serial1 = &lpuart2; 46 + serial2 = &lpuart3; 47 + serial3 = &lpuart4; 48 + serial4 = &lpuart5; 49 + serial5 = &lpuart6; 50 + serial6 = &lpuart7; 51 + serial7 = &lpuart8; 52 + spi0 = &lpspi1; 53 + spi1 = &lpspi2; 54 + spi2 = &lpspi3; 55 + spi3 = &lpspi4; 56 + spi4 = &lpspi5; 57 + spi5 = &lpspi6; 33 58 }; 34 59 35 60 backlight_lvds: backlight {
+25
arch/arm64/boot/dts/freescale/imx93-tqma9352-mba93xxla.dts
··· 28 28 eeprom0 = &eeprom0; 29 29 ethernet0 = &eqos; 30 30 ethernet1 = &fec; 31 + gpio0 = &gpio1; 32 + gpio1 = &gpio2; 33 + gpio2 = &gpio3; 34 + gpio3 = &gpio4; 35 + i2c0 = &lpi2c1; 36 + i2c1 = &lpi2c2; 37 + i2c2 = &lpi2c3; 38 + i2c3 = &lpi2c4; 39 + i2c4 = &lpi2c5; 40 + mmc0 = &usdhc1; 41 + mmc1 = &usdhc2; 31 42 rtc0 = &pcf85063; 32 43 rtc1 = &bbnsm_rtc; 44 + serial0 = &lpuart1; 45 + serial1 = &lpuart2; 46 + serial2 = &lpuart3; 47 + serial3 = &lpuart4; 48 + serial4 = &lpuart5; 49 + serial5 = &lpuart6; 50 + serial6 = &lpuart7; 51 + serial7 = &lpuart8; 52 + spi0 = &lpspi1; 53 + spi1 = &lpspi2; 54 + spi2 = &lpspi3; 55 + spi3 = &lpspi4; 56 + spi4 = &lpspi5; 57 + spi5 = &lpspi6; 33 58 }; 34 59 35 60 backlight_lvds: backlight {
+17
arch/arm64/boot/dts/freescale/imx93-var-som-symphony.dts
··· 17 17 aliases { 18 18 ethernet0 = &eqos; 19 19 ethernet1 = &fec; 20 + gpio0 = &gpio1; 21 + gpio1 = &gpio2; 22 + gpio2 = &gpio3; 23 + i2c0 = &lpi2c1; 24 + i2c1 = &lpi2c2; 25 + i2c2 = &lpi2c3; 26 + i2c3 = &lpi2c4; 27 + i2c4 = &lpi2c5; 28 + mmc0 = &usdhc1; 29 + mmc1 = &usdhc2; 30 + serial0 = &lpuart1; 31 + serial1 = &lpuart2; 32 + serial2 = &lpuart3; 33 + serial3 = &lpuart4; 34 + serial4 = &lpuart5; 35 + serial5 = &lpuart6; 20 36 }; 37 + 21 38 22 39 chosen { 23 40 stdout-path = &lpuart1;
+108 -1304
arch/arm64/boot/dts/freescale/imx93.dtsi
··· 1 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 2 /* 3 - * Copyright 2022 NXP 3 + * Copyright 2022,2025 NXP 4 4 */ 5 5 6 - #include <dt-bindings/clock/imx93-clock.h> 7 - #include <dt-bindings/dma/fsl-edma.h> 8 - #include <dt-bindings/gpio/gpio.h> 9 - #include <dt-bindings/input/input.h> 10 - #include <dt-bindings/interrupt-controller/arm-gic.h> 11 - #include <dt-bindings/power/fsl,imx93-power.h> 12 - #include <dt-bindings/thermal/thermal.h> 6 + #include "imx91_93_common.dtsi" 13 7 14 - #include "imx93-pinfunc.h" 15 - 16 - / { 17 - interrupt-parent = <&gic>; 18 - #address-cells = <2>; 19 - #size-cells = <2>; 20 - 21 - aliases { 22 - gpio0 = &gpio1; 23 - gpio1 = &gpio2; 24 - gpio2 = &gpio3; 25 - gpio3 = &gpio4; 26 - i2c0 = &lpi2c1; 27 - i2c1 = &lpi2c2; 28 - i2c2 = &lpi2c3; 29 - i2c3 = &lpi2c4; 30 - i2c4 = &lpi2c5; 31 - i2c5 = &lpi2c6; 32 - i2c6 = &lpi2c7; 33 - i2c7 = &lpi2c8; 34 - mmc0 = &usdhc1; 35 - mmc1 = &usdhc2; 36 - mmc2 = &usdhc3; 37 - serial0 = &lpuart1; 38 - serial1 = &lpuart2; 39 - serial2 = &lpuart3; 40 - serial3 = &lpuart4; 41 - serial4 = &lpuart5; 42 - serial5 = &lpuart6; 43 - serial6 = &lpuart7; 44 - serial7 = &lpuart8; 45 - spi0 = &lpspi1; 46 - spi1 = &lpspi2; 47 - spi2 = &lpspi3; 48 - spi3 = &lpspi4; 49 - spi4 = &lpspi5; 50 - spi5 = &lpspi6; 51 - spi6 = &lpspi7; 52 - spi7 = &lpspi8; 53 - }; 54 - 55 - cpus { 56 - #address-cells = <1>; 57 - #size-cells = <0>; 58 - 59 - idle-states { 60 - entry-method = "psci"; 61 - 62 - cpu_pd_wait: cpu-pd-wait { 63 - compatible = "arm,idle-state"; 64 - arm,psci-suspend-param = <0x0010033>; 65 - local-timer-stop; 66 - entry-latency-us = <10000>; 67 - exit-latency-us = <7000>; 68 - min-residency-us = <27000>; 69 - wakeup-latency-us = <15000>; 70 - }; 71 - }; 72 - 73 - A55_0: cpu@0 { 74 - device_type = "cpu"; 75 - compatible = "arm,cortex-a55"; 76 - reg = <0x0>; 77 - enable-method = "psci"; 78 - #cooling-cells = <2>; 79 - cpu-idle-states = <&cpu_pd_wait>; 80 - i-cache-size = <32768>; 81 - i-cache-line-size = <64>; 82 - i-cache-sets = <128>; 83 - d-cache-size = <32768>; 84 - d-cache-line-size = <64>; 85 - d-cache-sets = <128>; 86 - next-level-cache = <&l2_cache_l0>; 87 - }; 88 - 89 - A55_1: cpu@100 { 90 - device_type = "cpu"; 91 - compatible = "arm,cortex-a55"; 92 - reg = <0x100>; 93 - enable-method = "psci"; 94 - #cooling-cells = <2>; 95 - cpu-idle-states = <&cpu_pd_wait>; 96 - i-cache-size = <32768>; 97 - i-cache-line-size = <64>; 98 - i-cache-sets = <128>; 99 - d-cache-size = <32768>; 100 - d-cache-line-size = <64>; 101 - d-cache-sets = <128>; 102 - next-level-cache = <&l2_cache_l1>; 103 - }; 104 - 105 - l2_cache_l0: l2-cache-l0 { 106 - compatible = "cache"; 107 - cache-size = <65536>; 108 - cache-line-size = <64>; 109 - cache-sets = <256>; 110 - cache-level = <2>; 111 - cache-unified; 112 - next-level-cache = <&l3_cache>; 113 - }; 114 - 115 - l2_cache_l1: l2-cache-l1 { 116 - compatible = "cache"; 117 - cache-size = <65536>; 118 - cache-line-size = <64>; 119 - cache-sets = <256>; 120 - cache-level = <2>; 121 - cache-unified; 122 - next-level-cache = <&l3_cache>; 123 - }; 124 - 125 - l3_cache: l3-cache { 126 - compatible = "cache"; 127 - cache-size = <262144>; 128 - cache-line-size = <64>; 129 - cache-sets = <256>; 130 - cache-level = <3>; 131 - cache-unified; 132 - }; 133 - }; 134 - 135 - osc_32k: clock-osc-32k { 136 - compatible = "fixed-clock"; 137 - #clock-cells = <0>; 138 - clock-frequency = <32768>; 139 - clock-output-names = "osc_32k"; 140 - }; 141 - 142 - osc_24m: clock-osc-24m { 143 - compatible = "fixed-clock"; 144 - #clock-cells = <0>; 145 - clock-frequency = <24000000>; 146 - clock-output-names = "osc_24m"; 147 - }; 148 - 149 - clk_ext1: clock-ext1 { 150 - compatible = "fixed-clock"; 151 - #clock-cells = <0>; 152 - clock-frequency = <133000000>; 153 - clock-output-names = "clk_ext1"; 154 - }; 155 - 156 - pmu { 157 - compatible = "arm,cortex-a55-pmu"; 158 - interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; 159 - }; 160 - 161 - psci { 162 - compatible = "arm,psci-1.0"; 163 - method = "smc"; 164 - }; 165 - 166 - timer { 167 - compatible = "arm,armv8-timer"; 168 - interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 169 - <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 170 - <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 171 - <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>; 172 - clock-frequency = <24000000>; 173 - arm,no-tick-in-suspend; 174 - interrupt-parent = <&gic>; 175 - }; 176 - 177 - gic: interrupt-controller@48000000 { 178 - compatible = "arm,gic-v3"; 179 - reg = <0 0x48000000 0 0x10000>, 180 - <0 0x48040000 0 0xc0000>; 181 - #interrupt-cells = <3>; 182 - interrupt-controller; 183 - interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 184 - interrupt-parent = <&gic>; 8 + /{ 9 + cm33: remoteproc-cm33 { 10 + compatible = "fsl,imx93-cm33"; 11 + clocks = <&clk IMX93_CLK_CM33_GATE>; 12 + status = "disabled"; 185 13 }; 186 14 187 15 thermal-zones { ··· 43 215 }; 44 216 }; 45 217 }; 218 + }; 46 219 47 - cm33: remoteproc-cm33 { 48 - compatible = "fsl,imx93-cm33"; 49 - clocks = <&clk IMX93_CLK_CM33_GATE>; 220 + &aips1 { 221 + mu1: mailbox@44230000 { 222 + compatible = "fsl,imx93-mu", "fsl,imx8ulp-mu"; 223 + reg = <0x44230000 0x10000>; 224 + interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 225 + clocks = <&clk IMX93_CLK_MU1_B_GATE>; 226 + #mbox-cells = <2>; 50 227 status = "disabled"; 51 228 }; 52 229 53 - mqs1: mqs1 { 54 - compatible = "fsl,imx93-mqs"; 55 - gpr = <&aonmix_ns_gpr>; 230 + tmu: tmu@44482000 { 231 + compatible = "fsl,qoriq-tmu"; 232 + reg = <0x44482000 0x1000>; 233 + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 234 + clocks = <&clk IMX93_CLK_TMC_GATE>; 235 + #thermal-sensor-cells = <1>; 236 + little-endian; 237 + fsl,tmu-range = <0x800000da 0x800000e9 238 + 0x80000102 0x8000012a 239 + 0x80000166 0x800001a7 240 + 0x800001b6>; 241 + fsl,tmu-calibration = <0x00000000 0x0000000e 242 + 0x00000001 0x00000029 243 + 0x00000002 0x00000056 244 + 0x00000003 0x000000a2 245 + 0x00000004 0x00000116 246 + 0x00000005 0x00000195 247 + 0x00000006 0x000001b2>; 248 + }; 249 + }; 250 + 251 + &aips2 { 252 + mu2: mailbox@42440000 { 253 + compatible = "fsl,imx93-mu", "fsl,imx8ulp-mu"; 254 + reg = <0x42440000 0x10000>; 255 + interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 256 + clocks = <&clk IMX93_CLK_MU2_B_GATE>; 257 + #mbox-cells = <2>; 56 258 status = "disabled"; 57 259 }; 260 + }; 58 261 59 - mqs2: mqs2 { 60 - compatible = "fsl,imx93-mqs"; 61 - gpr = <&wakeupmix_gpr>; 62 - status = "disabled"; 262 + &cpus { 263 + A55_0: cpu@0 { 264 + device_type = "cpu"; 265 + compatible = "arm,cortex-a55"; 266 + reg = <0x0>; 267 + enable-method = "psci"; 268 + #cooling-cells = <2>; 269 + cpu-idle-states = <&cpu_pd_wait>; 270 + i-cache-size = <32768>; 271 + i-cache-line-size = <64>; 272 + i-cache-sets = <128>; 273 + d-cache-size = <32768>; 274 + d-cache-line-size = <64>; 275 + d-cache-sets = <128>; 276 + next-level-cache = <&l2_cache_l0>; 63 277 }; 64 278 65 - usbphynop1: usbphynop1 { 66 - compatible = "usb-nop-xceiv"; 67 - #phy-cells = <0>; 68 - clocks = <&clk IMX93_CLK_USB_PHY_BURUNIN>; 69 - clock-names = "main_clk"; 279 + A55_1: cpu@100 { 280 + device_type = "cpu"; 281 + compatible = "arm,cortex-a55"; 282 + reg = <0x100>; 283 + enable-method = "psci"; 284 + #cooling-cells = <2>; 285 + cpu-idle-states = <&cpu_pd_wait>; 286 + i-cache-size = <32768>; 287 + i-cache-line-size = <64>; 288 + i-cache-sets = <128>; 289 + d-cache-size = <32768>; 290 + d-cache-line-size = <64>; 291 + d-cache-sets = <128>; 292 + next-level-cache = <&l2_cache_l1>; 70 293 }; 71 294 72 - usbphynop2: usbphynop2 { 73 - compatible = "usb-nop-xceiv"; 74 - #phy-cells = <0>; 75 - clocks = <&clk IMX93_CLK_USB_PHY_BURUNIN>; 76 - clock-names = "main_clk"; 295 + l2_cache_l0: l2-cache-l0 { 296 + compatible = "cache"; 297 + cache-size = <65536>; 298 + cache-line-size = <64>; 299 + cache-sets = <256>; 300 + cache-level = <2>; 301 + cache-unified; 302 + next-level-cache = <&l3_cache>; 77 303 }; 78 304 79 - soc@0 { 80 - compatible = "simple-bus"; 81 - #address-cells = <1>; 82 - #size-cells = <1>; 83 - ranges = <0x0 0x0 0x0 0x80000000>, 84 - <0x28000000 0x0 0x28000000 0x10000000>; 85 - 86 - aips1: bus@44000000 { 87 - compatible = "fsl,aips-bus", "simple-bus"; 88 - reg = <0x44000000 0x800000>; 89 - #address-cells = <1>; 90 - #size-cells = <1>; 91 - ranges; 92 - 93 - edma1: dma-controller@44000000 { 94 - compatible = "fsl,imx93-edma3"; 95 - reg = <0x44000000 0x200000>; 96 - #dma-cells = <3>; 97 - dma-channels = <31>; 98 - interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, // 0: Reserved 99 - <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>, // 1: CANFD1 100 - <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>, // 2: Reserved 101 - <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, // 3: GPIO1 CH0 102 - <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>, // 4: GPIO1 CH1 103 - <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, // 5: I3C1 TO Bus 104 - <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, // 6: I3C1 From Bus 105 - <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, // 7: LPI2C1 M TX 106 - <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, // 8: LPI2C1 S TX 107 - <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, // 9: LPI2C2 M RX 108 - <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, // 10: LPI2C2 S RX 109 - <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, // 11: LPSPI1 TX 110 - <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, // 12: LPSPI1 RX 111 - <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, // 13: LPSPI2 TX 112 - <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, // 14: LPSPI2 RX 113 - <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, // 15: LPTMR1 114 - <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, // 16: LPUART1 TX 115 - <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, // 17: LPUART1 RX 116 - <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, // 18: LPUART2 TX 117 - <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, // 19: LPUART2 RX 118 - <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, // 20: S400 119 - <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, // 21: SAI TX 120 - <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, // 22: SAI RX 121 - <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, // 23: TPM1 CH0/CH2 122 - <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, // 24: TPM1 CH1/CH3 123 - <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, // 25: TPM1 Overflow 124 - <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, // 26: TMP2 CH0/CH2 125 - <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, // 27: TMP2 CH1/CH3 126 - <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, // 28: TMP2 Overflow 127 - <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>, // 29: PDM 128 - <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, // 30: ADC1 129 - <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; // err 130 - clocks = <&clk IMX93_CLK_EDMA1_GATE>; 131 - clock-names = "dma"; 132 - }; 133 - 134 - aonmix_ns_gpr: syscon@44210000 { 135 - compatible = "fsl,imx93-aonmix-ns-syscfg", "syscon"; 136 - reg = <0x44210000 0x1000>; 137 - }; 138 - 139 - mu1: mailbox@44230000 { 140 - compatible = "fsl,imx93-mu", "fsl,imx8ulp-mu"; 141 - reg = <0x44230000 0x10000>; 142 - interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 143 - clocks = <&clk IMX93_CLK_MU1_B_GATE>; 144 - #mbox-cells = <2>; 145 - status = "disabled"; 146 - }; 147 - 148 - system_counter: timer@44290000 { 149 - compatible = "nxp,sysctr-timer"; 150 - reg = <0x44290000 0x30000>; 151 - interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 152 - clocks = <&osc_24m>; 153 - clock-names = "per"; 154 - nxp,no-divider; 155 - }; 156 - 157 - wdog1: watchdog@442d0000 { 158 - compatible = "fsl,imx93-wdt"; 159 - reg = <0x442d0000 0x10000>; 160 - interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 161 - clocks = <&clk IMX93_CLK_WDOG1_GATE>; 162 - timeout-sec = <40>; 163 - status = "disabled"; 164 - }; 165 - 166 - wdog2: watchdog@442e0000 { 167 - compatible = "fsl,imx93-wdt"; 168 - reg = <0x442e0000 0x10000>; 169 - interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 170 - clocks = <&clk IMX93_CLK_WDOG2_GATE>; 171 - timeout-sec = <40>; 172 - status = "disabled"; 173 - }; 174 - 175 - tpm1: pwm@44310000 { 176 - compatible = "fsl,imx7ulp-pwm"; 177 - reg = <0x44310000 0x1000>; 178 - clocks = <&clk IMX93_CLK_TPM1_GATE>; 179 - #pwm-cells = <3>; 180 - status = "disabled"; 181 - }; 182 - 183 - tpm2: pwm@44320000 { 184 - compatible = "fsl,imx7ulp-pwm"; 185 - reg = <0x44320000 0x10000>; 186 - clocks = <&clk IMX93_CLK_TPM2_GATE>; 187 - #pwm-cells = <3>; 188 - status = "disabled"; 189 - }; 190 - 191 - i3c1: i3c@44330000 { 192 - compatible = "silvaco,i3c-master-v1"; 193 - reg = <0x44330000 0x10000>; 194 - interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 195 - #address-cells = <3>; 196 - #size-cells = <0>; 197 - clocks = <&clk IMX93_CLK_BUS_AON>, 198 - <&clk IMX93_CLK_I3C1_GATE>, 199 - <&clk IMX93_CLK_I3C1_SLOW>; 200 - clock-names = "pclk", "fast_clk", "slow_clk"; 201 - status = "disabled"; 202 - }; 203 - 204 - lpi2c1: i2c@44340000 { 205 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 206 - reg = <0x44340000 0x10000>; 207 - #address-cells = <1>; 208 - #size-cells = <0>; 209 - interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 210 - clocks = <&clk IMX93_CLK_LPI2C1_GATE>, 211 - <&clk IMX93_CLK_BUS_AON>; 212 - clock-names = "per", "ipg"; 213 - dmas = <&edma1 7 0 0>, <&edma1 8 0 FSL_EDMA_RX>; 214 - dma-names = "tx", "rx"; 215 - status = "disabled"; 216 - }; 217 - 218 - lpi2c2: i2c@44350000 { 219 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 220 - reg = <0x44350000 0x10000>; 221 - #address-cells = <1>; 222 - #size-cells = <0>; 223 - interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 224 - clocks = <&clk IMX93_CLK_LPI2C2_GATE>, 225 - <&clk IMX93_CLK_BUS_AON>; 226 - clock-names = "per", "ipg"; 227 - dmas = <&edma1 9 0 0>, <&edma1 10 0 FSL_EDMA_RX>; 228 - dma-names = "tx", "rx"; 229 - status = "disabled"; 230 - }; 231 - 232 - lpspi1: spi@44360000 { 233 - #address-cells = <1>; 234 - #size-cells = <0>; 235 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 236 - reg = <0x44360000 0x10000>; 237 - interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 238 - clocks = <&clk IMX93_CLK_LPSPI1_GATE>, 239 - <&clk IMX93_CLK_BUS_AON>; 240 - clock-names = "per", "ipg"; 241 - dmas = <&edma1 11 0 0>, <&edma1 12 0 FSL_EDMA_RX>; 242 - dma-names = "tx", "rx"; 243 - status = "disabled"; 244 - }; 245 - 246 - lpspi2: spi@44370000 { 247 - #address-cells = <1>; 248 - #size-cells = <0>; 249 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 250 - reg = <0x44370000 0x10000>; 251 - interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 252 - clocks = <&clk IMX93_CLK_LPSPI2_GATE>, 253 - <&clk IMX93_CLK_BUS_AON>; 254 - clock-names = "per", "ipg"; 255 - dmas = <&edma1 13 0 0>, <&edma1 14 0 FSL_EDMA_RX>; 256 - dma-names = "tx", "rx"; 257 - status = "disabled"; 258 - }; 259 - 260 - lpuart1: serial@44380000 { 261 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 262 - reg = <0x44380000 0x1000>; 263 - interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 264 - clocks = <&clk IMX93_CLK_LPUART1_GATE>; 265 - clock-names = "ipg"; 266 - dmas = <&edma1 17 0 FSL_EDMA_RX>, <&edma1 16 0 0>; 267 - dma-names = "rx", "tx"; 268 - status = "disabled"; 269 - }; 270 - 271 - lpuart2: serial@44390000 { 272 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 273 - reg = <0x44390000 0x1000>; 274 - interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 275 - clocks = <&clk IMX93_CLK_LPUART2_GATE>; 276 - clock-names = "ipg"; 277 - dmas = <&edma1 19 0 FSL_EDMA_RX>, <&edma1 18 0 0>; 278 - dma-names = "rx", "tx"; 279 - status = "disabled"; 280 - }; 281 - 282 - flexcan1: can@443a0000 { 283 - compatible = "fsl,imx93-flexcan"; 284 - reg = <0x443a0000 0x10000>; 285 - interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 286 - clocks = <&clk IMX93_CLK_BUS_AON>, 287 - <&clk IMX93_CLK_CAN1_GATE>; 288 - clock-names = "ipg", "per"; 289 - assigned-clocks = <&clk IMX93_CLK_CAN1>; 290 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 291 - assigned-clock-rates = <40000000>; 292 - fsl,clk-source = /bits/ 8 <0>; 293 - fsl,stop-mode = <&aonmix_ns_gpr 0x14 0>; 294 - status = "disabled"; 295 - }; 296 - 297 - sai1: sai@443b0000 { 298 - compatible = "fsl,imx93-sai"; 299 - reg = <0x443b0000 0x10000>; 300 - interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 301 - clocks = <&clk IMX93_CLK_SAI1_IPG>, <&clk IMX93_CLK_DUMMY>, 302 - <&clk IMX93_CLK_SAI1_GATE>, <&clk IMX93_CLK_DUMMY>, 303 - <&clk IMX93_CLK_DUMMY>; 304 - clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 305 - dmas = <&edma1 22 0 FSL_EDMA_RX>, <&edma1 21 0 0>; 306 - dma-names = "rx", "tx"; 307 - #sound-dai-cells = <0>; 308 - status = "disabled"; 309 - }; 310 - 311 - iomuxc: pinctrl@443c0000 { 312 - compatible = "fsl,imx93-iomuxc"; 313 - reg = <0x443c0000 0x10000>; 314 - status = "okay"; 315 - }; 316 - 317 - bbnsm: bbnsm@44440000 { 318 - compatible = "nxp,imx93-bbnsm", "syscon", "simple-mfd"; 319 - reg = <0x44440000 0x10000>; 320 - 321 - bbnsm_rtc: rtc { 322 - compatible = "nxp,imx93-bbnsm-rtc"; 323 - interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 324 - }; 325 - 326 - bbnsm_pwrkey: pwrkey { 327 - compatible = "nxp,imx93-bbnsm-pwrkey"; 328 - interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 329 - linux,code = <KEY_POWER>; 330 - }; 331 - }; 332 - 333 - clk: clock-controller@44450000 { 334 - compatible = "fsl,imx93-ccm"; 335 - reg = <0x44450000 0x10000>; 336 - #clock-cells = <1>; 337 - clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>; 338 - clock-names = "osc_32k", "osc_24m", "clk_ext1"; 339 - assigned-clocks = <&clk IMX93_CLK_AUDIO_PLL>; 340 - assigned-clock-rates = <393216000>; 341 - status = "okay"; 342 - }; 343 - 344 - src: system-controller@44460000 { 345 - compatible = "fsl,imx93-src", "syscon"; 346 - reg = <0x44460000 0x10000>; 347 - #address-cells = <1>; 348 - #size-cells = <1>; 349 - ranges; 350 - 351 - mlmix: power-domain@44461800 { 352 - compatible = "fsl,imx93-src-slice"; 353 - reg = <0x44461800 0x400>, <0x44464800 0x400>; 354 - #power-domain-cells = <0>; 355 - clocks = <&clk IMX93_CLK_ML_APB>, 356 - <&clk IMX93_CLK_ML>; 357 - }; 358 - 359 - mediamix: power-domain@44462400 { 360 - compatible = "fsl,imx93-src-slice"; 361 - reg = <0x44462400 0x400>, <0x44465800 0x400>; 362 - #power-domain-cells = <0>; 363 - clocks = <&clk IMX93_CLK_NIC_MEDIA_GATE>, 364 - <&clk IMX93_CLK_MEDIA_APB>; 365 - }; 366 - }; 367 - 368 - clock-controller@44480000 { 369 - compatible = "fsl,imx93-anatop"; 370 - reg = <0x44480000 0x2000>; 371 - #clock-cells = <1>; 372 - }; 373 - 374 - tmu: tmu@44482000 { 375 - compatible = "fsl,qoriq-tmu"; 376 - reg = <0x44482000 0x1000>; 377 - interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 378 - clocks = <&clk IMX93_CLK_TMC_GATE>; 379 - little-endian; 380 - fsl,tmu-range = <0x800000da 0x800000e9 381 - 0x80000102 0x8000012a 382 - 0x80000166 0x800001a7 383 - 0x800001b6>; 384 - fsl,tmu-calibration = <0x00000000 0x0000000e 385 - 0x00000001 0x00000029 386 - 0x00000002 0x00000056 387 - 0x00000003 0x000000a2 388 - 0x00000004 0x00000116 389 - 0x00000005 0x00000195 390 - 0x00000006 0x000001b2>; 391 - #thermal-sensor-cells = <1>; 392 - }; 393 - 394 - micfil: micfil@44520000 { 395 - compatible = "fsl,imx93-micfil"; 396 - reg = <0x44520000 0x10000>; 397 - interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>, 398 - <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>, 399 - <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>, 400 - <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>; 401 - clocks = <&clk IMX93_CLK_PDM_IPG>, 402 - <&clk IMX93_CLK_PDM_GATE>, 403 - <&clk IMX93_CLK_AUDIO_PLL>; 404 - clock-names = "ipg_clk", "ipg_clk_app", "pll8k"; 405 - dmas = <&edma1 29 0 5>; 406 - dma-names = "rx"; 407 - #sound-dai-cells = <0>; 408 - status = "disabled"; 409 - }; 410 - 411 - adc1: adc@44530000 { 412 - compatible = "nxp,imx93-adc"; 413 - reg = <0x44530000 0x10000>; 414 - interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>, 415 - <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>, 416 - <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>; 417 - clocks = <&clk IMX93_CLK_ADC1_GATE>; 418 - clock-names = "ipg"; 419 - #io-channel-cells = <1>; 420 - status = "disabled"; 421 - }; 422 - }; 423 - 424 - aips2: bus@42000000 { 425 - compatible = "fsl,aips-bus", "simple-bus"; 426 - reg = <0x42000000 0x800000>; 427 - #address-cells = <1>; 428 - #size-cells = <1>; 429 - ranges; 430 - 431 - edma2: dma-controller@42000000 { 432 - compatible = "fsl,imx93-edma4"; 433 - reg = <0x42000000 0x210000>; 434 - #dma-cells = <3>; 435 - dma-channels = <64>; 436 - interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 437 - <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 438 - <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 439 - <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>, 440 - <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 441 - <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 442 - <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 443 - <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 444 - <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 445 - <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>, 446 - <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 447 - <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 448 - <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 449 - <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 450 - <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 451 - <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>, 452 - <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 453 - <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 454 - <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 455 - <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>, 456 - <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 457 - <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>, 458 - <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 459 - <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>, 460 - <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 461 - <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 462 - <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 463 - <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 464 - <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 465 - <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 466 - <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 467 - <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>, 468 - <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 469 - <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>, 470 - <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 471 - <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>, 472 - <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 473 - <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>, 474 - <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 475 - <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>, 476 - <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 477 - <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>, 478 - <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 479 - <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>, 480 - <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 481 - <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>, 482 - <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>, 483 - <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>, 484 - <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 485 - <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 486 - <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 487 - <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 488 - <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 489 - <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 490 - <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 491 - <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 492 - <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>, 493 - <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>, 494 - <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 495 - <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 496 - <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 497 - <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 498 - <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 499 - <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 500 - <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 501 - clocks = <&clk IMX93_CLK_EDMA2_GATE>; 502 - clock-names = "dma"; 503 - }; 504 - 505 - wakeupmix_gpr: syscon@42420000 { 506 - compatible = "fsl,imx93-wakeupmix-syscfg", "syscon"; 507 - reg = <0x42420000 0x1000>; 508 - }; 509 - 510 - mu2: mailbox@42440000 { 511 - compatible = "fsl,imx93-mu", "fsl,imx8ulp-mu"; 512 - reg = <0x42440000 0x10000>; 513 - interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 514 - clocks = <&clk IMX93_CLK_MU2_B_GATE>; 515 - #mbox-cells = <2>; 516 - status = "disabled"; 517 - }; 518 - 519 - wdog3: watchdog@42490000 { 520 - compatible = "fsl,imx93-wdt"; 521 - reg = <0x42490000 0x10000>; 522 - interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 523 - clocks = <&clk IMX93_CLK_WDOG3_GATE>; 524 - timeout-sec = <40>; 525 - status = "disabled"; 526 - }; 527 - 528 - wdog4: watchdog@424a0000 { 529 - compatible = "fsl,imx93-wdt"; 530 - reg = <0x424a0000 0x10000>; 531 - interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 532 - clocks = <&clk IMX93_CLK_WDOG4_GATE>; 533 - timeout-sec = <40>; 534 - status = "disabled"; 535 - }; 536 - 537 - wdog5: watchdog@424b0000 { 538 - compatible = "fsl,imx93-wdt"; 539 - reg = <0x424b0000 0x10000>; 540 - interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 541 - clocks = <&clk IMX93_CLK_WDOG5_GATE>; 542 - timeout-sec = <40>; 543 - status = "disabled"; 544 - }; 545 - 546 - tpm3: pwm@424e0000 { 547 - compatible = "fsl,imx7ulp-pwm"; 548 - reg = <0x424e0000 0x1000>; 549 - clocks = <&clk IMX93_CLK_TPM3_GATE>; 550 - #pwm-cells = <3>; 551 - status = "disabled"; 552 - }; 553 - 554 - tpm4: pwm@424f0000 { 555 - compatible = "fsl,imx7ulp-pwm"; 556 - reg = <0x424f0000 0x10000>; 557 - clocks = <&clk IMX93_CLK_TPM4_GATE>; 558 - #pwm-cells = <3>; 559 - status = "disabled"; 560 - }; 561 - 562 - tpm5: pwm@42500000 { 563 - compatible = "fsl,imx7ulp-pwm"; 564 - reg = <0x42500000 0x10000>; 565 - clocks = <&clk IMX93_CLK_TPM5_GATE>; 566 - #pwm-cells = <3>; 567 - status = "disabled"; 568 - }; 569 - 570 - tpm6: pwm@42510000 { 571 - compatible = "fsl,imx7ulp-pwm"; 572 - reg = <0x42510000 0x10000>; 573 - clocks = <&clk IMX93_CLK_TPM6_GATE>; 574 - #pwm-cells = <3>; 575 - status = "disabled"; 576 - }; 577 - 578 - i3c2: i3c@42520000 { 579 - compatible = "silvaco,i3c-master-v1"; 580 - reg = <0x42520000 0x10000>; 581 - interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; 582 - #address-cells = <3>; 583 - #size-cells = <0>; 584 - clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 585 - <&clk IMX93_CLK_I3C2_GATE>, 586 - <&clk IMX93_CLK_I3C2_SLOW>; 587 - clock-names = "pclk", "fast_clk", "slow_clk"; 588 - status = "disabled"; 589 - }; 590 - 591 - lpi2c3: i2c@42530000 { 592 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 593 - reg = <0x42530000 0x10000>; 594 - #address-cells = <1>; 595 - #size-cells = <0>; 596 - interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 597 - clocks = <&clk IMX93_CLK_LPI2C3_GATE>, 598 - <&clk IMX93_CLK_BUS_WAKEUP>; 599 - clock-names = "per", "ipg"; 600 - dmas = <&edma2 8 0 0>, <&edma2 9 0 FSL_EDMA_RX>; 601 - dma-names = "tx", "rx"; 602 - status = "disabled"; 603 - }; 604 - 605 - lpi2c4: i2c@42540000 { 606 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 607 - reg = <0x42540000 0x10000>; 608 - #address-cells = <1>; 609 - #size-cells = <0>; 610 - interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 611 - clocks = <&clk IMX93_CLK_LPI2C4_GATE>, 612 - <&clk IMX93_CLK_BUS_WAKEUP>; 613 - clock-names = "per", "ipg"; 614 - dmas = <&edma2 10 0 0>, <&edma2 11 0 FSL_EDMA_RX>; 615 - dma-names = "tx", "rx"; 616 - status = "disabled"; 617 - }; 618 - 619 - lpspi3: spi@42550000 { 620 - #address-cells = <1>; 621 - #size-cells = <0>; 622 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 623 - reg = <0x42550000 0x10000>; 624 - interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 625 - clocks = <&clk IMX93_CLK_LPSPI3_GATE>, 626 - <&clk IMX93_CLK_BUS_WAKEUP>; 627 - clock-names = "per", "ipg"; 628 - dmas = <&edma2 12 0 0>, <&edma2 13 0 FSL_EDMA_RX>; 629 - dma-names = "tx", "rx"; 630 - status = "disabled"; 631 - }; 632 - 633 - lpspi4: spi@42560000 { 634 - #address-cells = <1>; 635 - #size-cells = <0>; 636 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 637 - reg = <0x42560000 0x10000>; 638 - interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 639 - clocks = <&clk IMX93_CLK_LPSPI4_GATE>, 640 - <&clk IMX93_CLK_BUS_WAKEUP>; 641 - clock-names = "per", "ipg"; 642 - dmas = <&edma2 14 0 0>, <&edma2 15 0 FSL_EDMA_RX>; 643 - dma-names = "tx", "rx"; 644 - status = "disabled"; 645 - }; 646 - 647 - lpuart3: serial@42570000 { 648 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 649 - reg = <0x42570000 0x1000>; 650 - interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 651 - clocks = <&clk IMX93_CLK_LPUART3_GATE>; 652 - clock-names = "ipg"; 653 - dmas = <&edma2 18 0 FSL_EDMA_RX>, <&edma2 17 0 0>; 654 - dma-names = "rx", "tx"; 655 - status = "disabled"; 656 - }; 657 - 658 - lpuart4: serial@42580000 { 659 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 660 - reg = <0x42580000 0x1000>; 661 - interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 662 - clocks = <&clk IMX93_CLK_LPUART4_GATE>; 663 - clock-names = "ipg"; 664 - dmas = <&edma2 20 0 FSL_EDMA_RX>, <&edma2 19 0 0>; 665 - dma-names = "rx", "tx"; 666 - status = "disabled"; 667 - }; 668 - 669 - lpuart5: serial@42590000 { 670 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 671 - reg = <0x42590000 0x1000>; 672 - interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 673 - clocks = <&clk IMX93_CLK_LPUART5_GATE>; 674 - clock-names = "ipg"; 675 - dmas = <&edma2 22 0 FSL_EDMA_RX>, <&edma2 21 0 0>; 676 - dma-names = "rx", "tx"; 677 - status = "disabled"; 678 - }; 679 - 680 - lpuart6: serial@425a0000 { 681 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 682 - reg = <0x425a0000 0x1000>; 683 - interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 684 - clocks = <&clk IMX93_CLK_LPUART6_GATE>; 685 - clock-names = "ipg"; 686 - dmas = <&edma2 24 0 FSL_EDMA_RX>, <&edma2 23 0 0>; 687 - dma-names = "rx", "tx"; 688 - status = "disabled"; 689 - }; 690 - 691 - flexcan2: can@425b0000 { 692 - compatible = "fsl,imx93-flexcan"; 693 - reg = <0x425b0000 0x10000>; 694 - interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 695 - clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 696 - <&clk IMX93_CLK_CAN2_GATE>; 697 - clock-names = "ipg", "per"; 698 - assigned-clocks = <&clk IMX93_CLK_CAN2>; 699 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 700 - assigned-clock-rates = <40000000>; 701 - fsl,clk-source = /bits/ 8 <0>; 702 - fsl,stop-mode = <&wakeupmix_gpr 0x0c 2>; 703 - status = "disabled"; 704 - }; 705 - 706 - flexspi1: spi@425e0000 { 707 - compatible = "nxp,imx8mm-fspi"; 708 - reg = <0x425e0000 0x10000>, <0x28000000 0x10000000>; 709 - reg-names = "fspi_base", "fspi_mmap"; 710 - #address-cells = <1>; 711 - #size-cells = <0>; 712 - interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 713 - clocks = <&clk IMX93_CLK_FLEXSPI1_GATE>, 714 - <&clk IMX93_CLK_FLEXSPI1_GATE>; 715 - clock-names = "fspi_en", "fspi"; 716 - assigned-clocks = <&clk IMX93_CLK_FLEXSPI1>; 717 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 718 - status = "disabled"; 719 - }; 720 - 721 - sai2: sai@42650000 { 722 - compatible = "fsl,imx93-sai"; 723 - reg = <0x42650000 0x10000>; 724 - interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>; 725 - clocks = <&clk IMX93_CLK_SAI2_IPG>, <&clk IMX93_CLK_DUMMY>, 726 - <&clk IMX93_CLK_SAI2_GATE>, <&clk IMX93_CLK_DUMMY>, 727 - <&clk IMX93_CLK_DUMMY>; 728 - clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 729 - dmas = <&edma2 59 0 FSL_EDMA_RX>, <&edma2 58 0 0>; 730 - dma-names = "rx", "tx"; 731 - #sound-dai-cells = <0>; 732 - status = "disabled"; 733 - }; 734 - 735 - sai3: sai@42660000 { 736 - compatible = "fsl,imx93-sai"; 737 - reg = <0x42660000 0x10000>; 738 - interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>; 739 - clocks = <&clk IMX93_CLK_SAI3_IPG>, <&clk IMX93_CLK_DUMMY>, 740 - <&clk IMX93_CLK_SAI3_GATE>, <&clk IMX93_CLK_DUMMY>, 741 - <&clk IMX93_CLK_DUMMY>; 742 - clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3"; 743 - dmas = <&edma2 61 0 FSL_EDMA_RX>, <&edma2 60 0 0>; 744 - dma-names = "rx", "tx"; 745 - #sound-dai-cells = <0>; 746 - status = "disabled"; 747 - }; 748 - 749 - xcvr: xcvr@42680000 { 750 - compatible = "fsl,imx93-xcvr"; 751 - reg = <0x42680000 0x800>, 752 - <0x42680800 0x400>, 753 - <0x42680c00 0x080>, 754 - <0x42680e00 0x080>; 755 - reg-names = "ram", "regs", "rxfifo", "txfifo"; 756 - interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 757 - <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>; 758 - clocks = <&clk IMX93_CLK_SPDIF_IPG>, 759 - <&clk IMX93_CLK_SPDIF_GATE>, 760 - <&clk IMX93_CLK_DUMMY>, 761 - <&clk IMX93_CLK_AUD_XCVR_GATE>; 762 - clock-names = "ipg", "phy", "spba", "pll_ipg"; 763 - dmas = <&edma2 65 0 FSL_EDMA_RX>, <&edma2 66 0 0>; 764 - dma-names = "rx", "tx"; 765 - #sound-dai-cells = <0>; 766 - status = "disabled"; 767 - }; 768 - 769 - lpuart7: serial@42690000 { 770 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 771 - reg = <0x42690000 0x1000>; 772 - interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>; 773 - clocks = <&clk IMX93_CLK_LPUART7_GATE>; 774 - clock-names = "ipg"; 775 - dmas = <&edma2 88 0 FSL_EDMA_RX>, <&edma2 87 0 0>; 776 - dma-names = "rx", "tx"; 777 - status = "disabled"; 778 - }; 779 - 780 - lpuart8: serial@426a0000 { 781 - compatible = "fsl,imx93-lpuart", "fsl,imx8ulp-lpuart", "fsl,imx7ulp-lpuart"; 782 - reg = <0x426a0000 0x1000>; 783 - interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>; 784 - clocks = <&clk IMX93_CLK_LPUART8_GATE>; 785 - clock-names = "ipg"; 786 - dmas = <&edma2 90 0 FSL_EDMA_RX>, <&edma2 89 0 0>; 787 - dma-names = "rx", "tx"; 788 - status = "disabled"; 789 - }; 790 - 791 - lpi2c5: i2c@426b0000 { 792 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 793 - reg = <0x426b0000 0x10000>; 794 - #address-cells = <1>; 795 - #size-cells = <0>; 796 - interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>; 797 - clocks = <&clk IMX93_CLK_LPI2C5_GATE>, 798 - <&clk IMX93_CLK_BUS_WAKEUP>; 799 - clock-names = "per", "ipg"; 800 - dmas = <&edma2 71 0 0>, <&edma2 72 0 FSL_EDMA_RX>; 801 - dma-names = "tx", "rx"; 802 - status = "disabled"; 803 - }; 804 - 805 - lpi2c6: i2c@426c0000 { 806 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 807 - reg = <0x426c0000 0x10000>; 808 - #address-cells = <1>; 809 - #size-cells = <0>; 810 - interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>; 811 - clocks = <&clk IMX93_CLK_LPI2C6_GATE>, 812 - <&clk IMX93_CLK_BUS_WAKEUP>; 813 - clock-names = "per", "ipg"; 814 - dmas = <&edma2 73 0 0>, <&edma2 74 0 FSL_EDMA_RX>; 815 - dma-names = "tx", "rx"; 816 - status = "disabled"; 817 - }; 818 - 819 - lpi2c7: i2c@426d0000 { 820 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 821 - reg = <0x426d0000 0x10000>; 822 - #address-cells = <1>; 823 - #size-cells = <0>; 824 - interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>; 825 - clocks = <&clk IMX93_CLK_LPI2C7_GATE>, 826 - <&clk IMX93_CLK_BUS_WAKEUP>; 827 - clock-names = "per", "ipg"; 828 - dmas = <&edma2 75 0 0>, <&edma2 76 0 FSL_EDMA_RX>; 829 - dma-names = "tx", "rx"; 830 - status = "disabled"; 831 - }; 832 - 833 - lpi2c8: i2c@426e0000 { 834 - compatible = "fsl,imx93-lpi2c", "fsl,imx7ulp-lpi2c"; 835 - reg = <0x426e0000 0x10000>; 836 - #address-cells = <1>; 837 - #size-cells = <0>; 838 - interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>; 839 - clocks = <&clk IMX93_CLK_LPI2C8_GATE>, 840 - <&clk IMX93_CLK_BUS_WAKEUP>; 841 - clock-names = "per", "ipg"; 842 - dmas = <&edma2 77 0 0>, <&edma2 78 0 FSL_EDMA_RX>; 843 - dma-names = "tx", "rx"; 844 - status = "disabled"; 845 - }; 846 - 847 - lpspi5: spi@426f0000 { 848 - #address-cells = <1>; 849 - #size-cells = <0>; 850 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 851 - reg = <0x426f0000 0x10000>; 852 - interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>; 853 - clocks = <&clk IMX93_CLK_LPSPI5_GATE>, 854 - <&clk IMX93_CLK_BUS_WAKEUP>; 855 - clock-names = "per", "ipg"; 856 - dmas = <&edma2 79 0 0>, <&edma2 80 0 FSL_EDMA_RX>; 857 - dma-names = "tx", "rx"; 858 - status = "disabled"; 859 - }; 860 - 861 - lpspi6: spi@42700000 { 862 - #address-cells = <1>; 863 - #size-cells = <0>; 864 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 865 - reg = <0x42700000 0x10000>; 866 - interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>; 867 - clocks = <&clk IMX93_CLK_LPSPI6_GATE>, 868 - <&clk IMX93_CLK_BUS_WAKEUP>; 869 - clock-names = "per", "ipg"; 870 - dmas = <&edma2 81 0 0>, <&edma2 82 0 FSL_EDMA_RX>; 871 - dma-names = "tx", "rx"; 872 - status = "disabled"; 873 - }; 874 - 875 - lpspi7: spi@42710000 { 876 - #address-cells = <1>; 877 - #size-cells = <0>; 878 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 879 - reg = <0x42710000 0x10000>; 880 - interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 881 - clocks = <&clk IMX93_CLK_LPSPI7_GATE>, 882 - <&clk IMX93_CLK_BUS_WAKEUP>; 883 - clock-names = "per", "ipg"; 884 - dmas = <&edma2 83 0 0>, <&edma2 84 0 FSL_EDMA_RX>; 885 - dma-names = "tx", "rx"; 886 - status = "disabled"; 887 - }; 888 - 889 - lpspi8: spi@42720000 { 890 - #address-cells = <1>; 891 - #size-cells = <0>; 892 - compatible = "fsl,imx93-spi", "fsl,imx7ulp-spi"; 893 - reg = <0x42720000 0x10000>; 894 - interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>; 895 - clocks = <&clk IMX93_CLK_LPSPI8_GATE>, 896 - <&clk IMX93_CLK_BUS_WAKEUP>; 897 - clock-names = "per", "ipg"; 898 - dmas = <&edma2 85 0 0>, <&edma2 86 0 FSL_EDMA_RX>; 899 - dma-names = "tx", "rx"; 900 - status = "disabled"; 901 - }; 902 - 903 - }; 904 - 905 - aips3: bus@42800000 { 906 - compatible = "fsl,aips-bus", "simple-bus"; 907 - reg = <0x42800000 0x800000>; 908 - #address-cells = <1>; 909 - #size-cells = <1>; 910 - ranges; 911 - 912 - usdhc1: mmc@42850000 { 913 - compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 914 - reg = <0x42850000 0x10000>; 915 - interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 916 - clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 917 - <&clk IMX93_CLK_WAKEUP_AXI>, 918 - <&clk IMX93_CLK_USDHC1_GATE>; 919 - clock-names = "ipg", "ahb", "per"; 920 - assigned-clocks = <&clk IMX93_CLK_USDHC1>; 921 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 922 - assigned-clock-rates = <400000000>; 923 - bus-width = <8>; 924 - fsl,tuning-start-tap = <1>; 925 - fsl,tuning-step = <2>; 926 - status = "disabled"; 927 - }; 928 - 929 - usdhc2: mmc@42860000 { 930 - compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 931 - reg = <0x42860000 0x10000>; 932 - interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 933 - clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 934 - <&clk IMX93_CLK_WAKEUP_AXI>, 935 - <&clk IMX93_CLK_USDHC2_GATE>; 936 - clock-names = "ipg", "ahb", "per"; 937 - assigned-clocks = <&clk IMX93_CLK_USDHC2>; 938 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 939 - assigned-clock-rates = <400000000>; 940 - bus-width = <4>; 941 - fsl,tuning-start-tap = <1>; 942 - fsl,tuning-step = <2>; 943 - status = "disabled"; 944 - }; 945 - 946 - fec: ethernet@42890000 { 947 - compatible = "fsl,imx93-fec", "fsl,imx8mq-fec", "fsl,imx6sx-fec"; 948 - reg = <0x42890000 0x10000>; 949 - interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>, 950 - <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>, 951 - <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>, 952 - <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>; 953 - clocks = <&clk IMX93_CLK_ENET1_GATE>, 954 - <&clk IMX93_CLK_ENET1_GATE>, 955 - <&clk IMX93_CLK_ENET_TIMER1>, 956 - <&clk IMX93_CLK_ENET_REF>, 957 - <&clk IMX93_CLK_ENET_REF_PHY>; 958 - clock-names = "ipg", "ahb", "ptp", 959 - "enet_clk_ref", "enet_out"; 960 - assigned-clocks = <&clk IMX93_CLK_ENET_TIMER1>, 961 - <&clk IMX93_CLK_ENET_REF>, 962 - <&clk IMX93_CLK_ENET_REF_PHY>; 963 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 964 - <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>, 965 - <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 966 - assigned-clock-rates = <100000000>, <250000000>, <50000000>; 967 - fsl,num-tx-queues = <3>; 968 - fsl,num-rx-queues = <3>; 969 - fsl,stop-mode = <&wakeupmix_gpr 0x0c 1>; 970 - nvmem-cells = <&eth_mac1>; 971 - nvmem-cell-names = "mac-address"; 972 - status = "disabled"; 973 - }; 974 - 975 - eqos: ethernet@428a0000 { 976 - compatible = "nxp,imx93-dwmac-eqos", "snps,dwmac-5.10a"; 977 - reg = <0x428a0000 0x10000>; 978 - interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 979 - <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 980 - interrupt-names = "macirq", "eth_wake_irq"; 981 - clocks = <&clk IMX93_CLK_ENET_QOS_GATE>, 982 - <&clk IMX93_CLK_ENET_QOS_GATE>, 983 - <&clk IMX93_CLK_ENET_TIMER2>, 984 - <&clk IMX93_CLK_ENET>, 985 - <&clk IMX93_CLK_ENET_QOS_GATE>; 986 - clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem"; 987 - assigned-clocks = <&clk IMX93_CLK_ENET_TIMER2>, 988 - <&clk IMX93_CLK_ENET>; 989 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, 990 - <&clk IMX93_CLK_SYS_PLL_PFD0_DIV2>; 991 - assigned-clock-rates = <100000000>, <250000000>; 992 - intf_mode = <&wakeupmix_gpr 0x28>; 993 - snps,clk-csr = <6>; 994 - nvmem-cells = <&eth_mac2>; 995 - nvmem-cell-names = "mac-address"; 996 - status = "disabled"; 997 - }; 998 - 999 - usdhc3: mmc@428b0000 { 1000 - compatible = "fsl,imx93-usdhc", "fsl,imx8mm-usdhc"; 1001 - reg = <0x428b0000 0x10000>; 1002 - interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 1003 - clocks = <&clk IMX93_CLK_BUS_WAKEUP>, 1004 - <&clk IMX93_CLK_WAKEUP_AXI>, 1005 - <&clk IMX93_CLK_USDHC3_GATE>; 1006 - clock-names = "ipg", "ahb", "per"; 1007 - assigned-clocks = <&clk IMX93_CLK_USDHC3>; 1008 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>; 1009 - assigned-clock-rates = <400000000>; 1010 - bus-width = <4>; 1011 - fsl,tuning-start-tap = <1>; 1012 - fsl,tuning-step = <2>; 1013 - status = "disabled"; 1014 - }; 1015 - }; 1016 - 1017 - gpio2: gpio@43810000 { 1018 - compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1019 - reg = <0x43810000 0x1000>; 1020 - gpio-controller; 1021 - #gpio-cells = <2>; 1022 - interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, 1023 - <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; 1024 - interrupt-controller; 1025 - #interrupt-cells = <2>; 1026 - clocks = <&clk IMX93_CLK_GPIO2_GATE>, 1027 - <&clk IMX93_CLK_GPIO2_GATE>; 1028 - clock-names = "gpio", "port"; 1029 - gpio-ranges = <&iomuxc 0 4 30>; 1030 - ngpios = <30>; 1031 - }; 1032 - 1033 - gpio3: gpio@43820000 { 1034 - compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1035 - reg = <0x43820000 0x1000>; 1036 - gpio-controller; 1037 - #gpio-cells = <2>; 1038 - interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, 1039 - <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 1040 - interrupt-controller; 1041 - #interrupt-cells = <2>; 1042 - clocks = <&clk IMX93_CLK_GPIO3_GATE>, 1043 - <&clk IMX93_CLK_GPIO3_GATE>; 1044 - clock-names = "gpio", "port"; 1045 - gpio-ranges = <&iomuxc 0 84 8>, <&iomuxc 8 66 18>, 1046 - <&iomuxc 26 34 2>, <&iomuxc 28 0 4>; 1047 - ngpios = <32>; 1048 - }; 1049 - 1050 - gpio4: gpio@43830000 { 1051 - compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1052 - reg = <0x43830000 0x1000>; 1053 - gpio-controller; 1054 - #gpio-cells = <2>; 1055 - interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>, 1056 - <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 1057 - interrupt-controller; 1058 - #interrupt-cells = <2>; 1059 - clocks = <&clk IMX93_CLK_GPIO4_GATE>, 1060 - <&clk IMX93_CLK_GPIO4_GATE>; 1061 - clock-names = "gpio", "port"; 1062 - gpio-ranges = <&iomuxc 0 38 28>, <&iomuxc 28 36 2>; 1063 - ngpios = <30>; 1064 - }; 1065 - 1066 - gpio1: gpio@47400000 { 1067 - compatible = "fsl,imx93-gpio", "fsl,imx8ulp-gpio"; 1068 - reg = <0x47400000 0x1000>; 1069 - gpio-controller; 1070 - #gpio-cells = <2>; 1071 - interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>, 1072 - <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 1073 - interrupt-controller; 1074 - #interrupt-cells = <2>; 1075 - clocks = <&clk IMX93_CLK_GPIO1_GATE>, 1076 - <&clk IMX93_CLK_GPIO1_GATE>; 1077 - clock-names = "gpio", "port"; 1078 - gpio-ranges = <&iomuxc 0 92 16>; 1079 - ngpios = <16>; 1080 - }; 1081 - 1082 - ocotp: efuse@47510000 { 1083 - compatible = "fsl,imx93-ocotp", "syscon"; 1084 - reg = <0x47510000 0x10000>; 1085 - #address-cells = <1>; 1086 - #size-cells = <1>; 1087 - 1088 - eth_mac1: mac-address@4ec { 1089 - reg = <0x4ec 0x6>; 1090 - }; 1091 - 1092 - eth_mac2: mac-address@4f2 { 1093 - reg = <0x4f2 0x6>; 1094 - }; 1095 - 1096 - }; 1097 - 1098 - s4muap: mailbox@47520000 { 1099 - compatible = "fsl,imx93-mu-s4"; 1100 - reg = <0x47520000 0x10000>; 1101 - interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 1102 - <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 1103 - interrupt-names = "tx", "rx"; 1104 - #mbox-cells = <2>; 1105 - }; 1106 - 1107 - media_blk_ctrl: system-controller@4ac10000 { 1108 - compatible = "fsl,imx93-media-blk-ctrl", "syscon"; 1109 - reg = <0x4ac10000 0x10000>; 1110 - power-domains = <&mediamix>; 1111 - clocks = <&clk IMX93_CLK_MEDIA_APB>, 1112 - <&clk IMX93_CLK_MEDIA_AXI>, 1113 - <&clk IMX93_CLK_NIC_MEDIA_GATE>, 1114 - <&clk IMX93_CLK_MEDIA_DISP_PIX>, 1115 - <&clk IMX93_CLK_CAM_PIX>, 1116 - <&clk IMX93_CLK_PXP_GATE>, 1117 - <&clk IMX93_CLK_LCDIF_GATE>, 1118 - <&clk IMX93_CLK_ISI_GATE>, 1119 - <&clk IMX93_CLK_MIPI_CSI_GATE>, 1120 - <&clk IMX93_CLK_MIPI_DSI_GATE>; 1121 - clock-names = "apb", "axi", "nic", "disp", "cam", 1122 - "pxp", "lcdif", "isi", "csi", "dsi"; 1123 - #power-domain-cells = <1>; 1124 - status = "disabled"; 1125 - }; 1126 - 1127 - usbotg1: usb@4c100000 { 1128 - compatible = "fsl,imx93-usb", "fsl,imx7d-usb", "fsl,imx27-usb"; 1129 - reg = <0x4c100000 0x200>; 1130 - interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>; 1131 - clocks = <&clk IMX93_CLK_USB_CONTROLLER_GATE>, 1132 - <&clk IMX93_CLK_HSIO_32K_GATE>; 1133 - clock-names = "usb_ctrl_root", "usb_wakeup"; 1134 - assigned-clocks = <&clk IMX93_CLK_HSIO>; 1135 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 1136 - assigned-clock-rates = <133000000>; 1137 - phys = <&usbphynop1>; 1138 - fsl,usbmisc = <&usbmisc1 0>; 1139 - status = "disabled"; 1140 - }; 1141 - 1142 - usbmisc1: usbmisc@4c100200 { 1143 - compatible = "fsl,imx8mm-usbmisc", "fsl,imx7d-usbmisc", 1144 - "fsl,imx6q-usbmisc"; 1145 - reg = <0x4c100200 0x200>; 1146 - #index-cells = <1>; 1147 - }; 1148 - 1149 - usbotg2: usb@4c200000 { 1150 - compatible = "fsl,imx93-usb", "fsl,imx7d-usb", "fsl,imx27-usb"; 1151 - reg = <0x4c200000 0x200>; 1152 - interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 1153 - clocks = <&clk IMX93_CLK_USB_CONTROLLER_GATE>, 1154 - <&clk IMX93_CLK_HSIO_32K_GATE>; 1155 - clock-names = "usb_ctrl_root", "usb_wakeup"; 1156 - assigned-clocks = <&clk IMX93_CLK_HSIO>; 1157 - assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; 1158 - assigned-clock-rates = <133000000>; 1159 - phys = <&usbphynop2>; 1160 - fsl,usbmisc = <&usbmisc2 0>; 1161 - status = "disabled"; 1162 - }; 1163 - 1164 - usbmisc2: usbmisc@4c200200 { 1165 - compatible = "fsl,imx8mm-usbmisc", "fsl,imx7d-usbmisc", 1166 - "fsl,imx6q-usbmisc"; 1167 - reg = <0x4c200200 0x200>; 1168 - #index-cells = <1>; 1169 - }; 1170 - 1171 - memory-controller@4e300000 { 1172 - compatible = "nxp,imx9-memory-controller"; 1173 - reg = <0x4e300000 0x800>, <0x4e301000 0x1000>; 1174 - reg-names = "ctrl", "inject"; 1175 - interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 1176 - little-endian; 1177 - }; 1178 - 1179 - ddr-pmu@4e300dc0 { 1180 - compatible = "fsl,imx93-ddr-pmu"; 1181 - reg = <0x4e300dc0 0x200>; 1182 - interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 1183 - }; 305 + l2_cache_l1: l2-cache-l1 { 306 + compatible = "cache"; 307 + cache-size = <65536>; 308 + cache-line-size = <64>; 309 + cache-sets = <256>; 310 + cache-level = <2>; 311 + cache-unified; 312 + next-level-cache = <&l3_cache>; 313 + }; 314 + 315 + l3_cache: l3-cache { 316 + compatible = "cache"; 317 + cache-size = <262144>; 318 + cache-line-size = <64>; 319 + cache-sets = <256>; 320 + cache-level = <3>; 321 + cache-unified; 322 + }; 323 + }; 324 + 325 + &src { 326 + mlmix: power-domain@44461800 { 327 + compatible = "fsl,imx93-src-slice"; 328 + reg = <0x44461800 0x400>, <0x44464800 0x400>; 329 + clocks = <&clk IMX93_CLK_ML_APB>, 330 + <&clk IMX93_CLK_ML>; 331 + #power-domain-cells = <0>; 1184 332 }; 1185 333 };
+4 -2
arch/arm64/boot/dts/freescale/imx94.dtsi
··· 212 212 <&a55_irqsteer 88>, <&a55_irqsteer 89>, 213 213 <&a55_irqsteer 90>, <&a55_irqsteer 91>, 214 214 <&a55_irqsteer 92>, <&a55_irqsteer 93>, 215 - <&a55_irqsteer 94>, <&a55_irqsteer 95>; 215 + <&a55_irqsteer 94>, <&a55_irqsteer 95>, 216 + <&gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 216 217 }; 217 218 218 219 mu10: mailbox@42430000 { ··· 620 619 <&a55_irqsteer 216>, <&a55_irqsteer 217>, 621 620 <&a55_irqsteer 218>, <&a55_irqsteer 219>, 622 621 <&a55_irqsteer 220>, <&a55_irqsteer 221>, 623 - <&a55_irqsteer 222>, <&a55_irqsteer 223>; 622 + <&a55_irqsteer 222>, <&a55_irqsteer 223>, 623 + <&gic GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>; 624 624 }; 625 625 }; 626 626
+24 -6
arch/arm64/boot/dts/freescale/imx95-15x15-evk.dts
··· 28 28 aliases { 29 29 ethernet0 = &enetc_port0; 30 30 ethernet1 = &enetc_port1; 31 + gpio0 = &gpio1; 32 + gpio1 = &gpio2; 33 + gpio2 = &gpio3; 34 + gpio3 = &gpio4; 35 + gpio4 = &gpio5; 36 + i2c0 = &lpi2c1; 37 + i2c1 = &lpi2c2; 38 + i2c2 = &lpi2c3; 39 + i2c3 = &lpi2c4; 40 + i2c4 = &lpi2c5; 41 + i2c5 = &lpi2c6; 42 + i2c6 = &lpi2c7; 43 + i2c7 = &lpi2c8; 44 + mmc0 = &usdhc1; 45 + mmc1 = &usdhc2; 46 + mmc2 = &usdhc3; 31 47 serial0 = &lpuart1; 48 + serial4 = &lpuart5; 32 49 }; 33 50 34 51 bt_sco_codec: bt-sco-codec { ··· 881 864 882 865 pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 883 866 fsl,pins = < 884 - IMX95_PAD_SD2_CLK__USDHC2_CLK 0x15fe 885 - IMX95_PAD_SD2_CMD__USDHC2_CMD 0x13fe 886 - IMX95_PAD_SD2_DATA0__USDHC2_DATA0 0x13fe 887 - IMX95_PAD_SD2_DATA1__USDHC2_DATA1 0x13fe 888 - IMX95_PAD_SD2_DATA2__USDHC2_DATA2 0x13fe 889 - IMX95_PAD_SD2_DATA3__USDHC2_DATA3 0x13fe 867 + IMX95_PAD_SD2_CLK__USDHC2_CLK 0x158e 868 + IMX95_PAD_SD2_CMD__USDHC2_CMD 0x138e 869 + IMX95_PAD_SD2_DATA0__USDHC2_DATA0 0x138e 870 + IMX95_PAD_SD2_DATA1__USDHC2_DATA1 0x138e 871 + IMX95_PAD_SD2_DATA2__USDHC2_DATA2 0x138e 872 + IMX95_PAD_SD2_DATA3__USDHC2_DATA3 0x138e 890 873 IMX95_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e 891 874 >; 892 875 }; ··· 1099 1082 fsl,phy-pcs-tx-swing-full-percent = <100>; 1100 1083 fsl,phy-tx-preemp-amp-tune-microamp = <600>; 1101 1084 fsl,phy-tx-vboost-level-microvolt = <1156>; 1085 + fsl,phy-tx-vref-tune-percent = <100>; 1102 1086 status = "okay"; 1103 1087 1104 1088 port {
+97 -2
arch/arm64/boot/dts/freescale/imx95-19x19-evk.dts
··· 40 40 mmc0 = &usdhc1; 41 41 mmc1 = &usdhc2; 42 42 serial0 = &lpuart1; 43 + serial4 = &lpuart5; 43 44 }; 44 45 45 46 bt_sco_codec: audio-codec-bt-sco { ··· 136 135 regulator-max-microvolt = <3300000>; 137 136 gpio = <&i2c7_pcal6524 20 GPIO_ACTIVE_HIGH>; 138 137 enable-active-high; 138 + /* 139 + * M.2 device only can be enabled(W_DISABLE1#) after all Power 140 + * Rails reach their minimum operating voltage (PCI Express M.2 141 + * Specification r5.1 3.1.4 Power-up Timing). 142 + * Set a delay equal to the max value of Tsettle here. 143 + */ 144 + startup-delay-us = <5000>; 139 145 }; 140 146 141 147 reg_pcie0: regulator-pcie { ··· 224 216 model = "wm8962-audio"; 225 217 audio-cpu = <&sai3>; 226 218 audio-codec = <&wm8962>; 227 - hp-det-gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>; 219 + hp-det-gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>; 228 220 audio-routing = "Headphone Jack", "HPOUTL", 229 221 "Headphone Jack", "HPOUTR", 230 222 "Ext Spk", "SPKOUTL", ··· 309 301 gpio-controller; 310 302 reg = <0x20>; 311 303 vcc-supply = <&reg_3p3v>; 304 + }; 305 + 306 + pca9632: pca9632@62 { 307 + compatible = "nxp,pca9632"; 308 + reg = <0x62>; 309 + #address-cells = <1>; 310 + #size-cells = <0>; 311 + 312 + led_baclklight: led@0 { 313 + reg = <0>; 314 + label = "backlight"; 315 + linux,default-trigger = "none"; 316 + }; 312 317 }; 313 318 }; 314 319 ··· 643 622 fsl,phy-pcs-tx-swing-full-percent = <100>; 644 623 fsl,phy-tx-preemp-amp-tune-microamp = <600>; 645 624 fsl,phy-tx-vboost-level-microvolt = <1156>; 625 + fsl,phy-tx-vref-tune-percent = <100>; 646 626 orientation-switch; 647 627 status = "okay"; 648 628 ··· 693 671 }; 694 672 695 673 &scmi_iomuxc { 696 - pinctrl_emdio: emdiogrp{ 674 + pinctrl_emdio: emdiogrp { 697 675 fsl,pins = < 698 676 IMX95_PAD_ENET1_MDC__NETCMIX_TOP_NETC_MDC 0x50e 699 677 IMX95_PAD_ENET1_MDIO__NETCMIX_TOP_NETC_MDIO 0x90e ··· 1056 1034 map3 { 1057 1035 trip = <&atrip4>; 1058 1036 cooling-device = <&fan0 2 3>; 1037 + }; 1038 + }; 1039 + }; 1040 + 1041 + pf09-thermal { 1042 + polling-delay = <2000>; 1043 + polling-delay-passive = <250>; 1044 + thermal-sensors = <&scmi_sensor 2>; 1045 + 1046 + trips { 1047 + pf09_alert: trip0 { 1048 + hysteresis = <2000>; 1049 + temperature = <140000>; 1050 + type = "passive"; 1051 + }; 1052 + 1053 + pf09_crit: trip1 { 1054 + hysteresis = <2000>; 1055 + temperature = <155000>; 1056 + type = "critical"; 1057 + }; 1058 + }; 1059 + }; 1060 + 1061 + pf53arm-thermal { 1062 + polling-delay = <2000>; 1063 + polling-delay-passive = <250>; 1064 + thermal-sensors = <&scmi_sensor 4>; 1065 + 1066 + cooling-maps { 1067 + map0 { 1068 + trip = <&pf5301_alert>; 1069 + cooling-device = 1070 + <&A55_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1071 + <&A55_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1072 + <&A55_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1073 + <&A55_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1074 + <&A55_4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1075 + <&A55_5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1076 + }; 1077 + }; 1078 + 1079 + trips { 1080 + pf5301_alert: trip0 { 1081 + hysteresis = <2000>; 1082 + temperature = <140000>; 1083 + type = "passive"; 1084 + }; 1085 + 1086 + pf5301_crit: trip1 { 1087 + hysteresis = <2000>; 1088 + temperature = <155000>; 1089 + type = "critical"; 1090 + }; 1091 + }; 1092 + }; 1093 + 1094 + pf53soc-thermal { 1095 + polling-delay = <2000>; 1096 + polling-delay-passive = <250>; 1097 + thermal-sensors = <&scmi_sensor 3>; 1098 + 1099 + trips { 1100 + pf5302_alert: trip0 { 1101 + hysteresis = <2000>; 1102 + temperature = <140000>; 1103 + type = "passive"; 1104 + }; 1105 + 1106 + pf5302_crit: trip1 { 1107 + hysteresis = <2000>; 1108 + temperature = <155000>; 1109 + type = "critical"; 1059 1110 }; 1060 1111 }; 1061 1112 };
+185 -22
arch/arm64/boot/dts/freescale/imx95.dtsi
··· 260 260 sai1_mclk: clock-sai-mclk1 { 261 261 compatible = "fixed-clock"; 262 262 #clock-cells = <0>; 263 - clock-frequency= <0>; 263 + clock-frequency = <0>; 264 264 clock-output-names = "sai1_mclk"; 265 265 }; 266 266 267 267 sai2_mclk: clock-sai-mclk2 { 268 268 compatible = "fixed-clock"; 269 269 #clock-cells = <0>; 270 - clock-frequency= <0>; 270 + clock-frequency = <0>; 271 271 clock-output-names = "sai2_mclk"; 272 272 }; 273 273 274 274 sai3_mclk: clock-sai-mclk3 { 275 275 compatible = "fixed-clock"; 276 276 #clock-cells = <0>; 277 - clock-frequency= <0>; 277 + clock-frequency = <0>; 278 278 clock-output-names = "sai3_mclk"; 279 279 }; 280 280 281 281 sai4_mclk: clock-sai-mclk4 { 282 282 compatible = "fixed-clock"; 283 283 #clock-cells = <0>; 284 - clock-frequency= <0>; 284 + clock-frequency = <0>; 285 285 clock-output-names = "sai4_mclk"; 286 286 }; 287 287 288 288 sai5_mclk: clock-sai-mclk5 { 289 289 compatible = "fixed-clock"; 290 290 #clock-cells = <0>; 291 - clock-frequency= <0>; 291 + clock-frequency = <0>; 292 292 clock-output-names = "sai5_mclk"; 293 293 }; 294 294 ··· 351 351 reg = <0x19>; 352 352 }; 353 353 354 + scmi_lmm: protocol@80 { 355 + reg = <0x80>; 356 + }; 357 + 354 358 scmi_bbm: protocol@81 { 355 359 reg = <0x81>; 360 + }; 361 + 362 + scmi_cpu: protocol@82 { 363 + reg = <0x82>; 356 364 }; 357 365 358 366 scmi_misc: protocol@84 { ··· 491 483 #address-cells = <2>; 492 484 #size-cells = <2>; 493 485 ranges; 486 + 487 + etm0: etm@40840000 { 488 + compatible = "arm,coresight-etm4x", "arm,primecell"; 489 + reg = <0x0 0x40840000 0x0 0x10000>; 490 + arm,primecell-periphid = <0xbb95d>; 491 + cpu = <&A55_0>; 492 + clocks = <&scmi_clk IMX95_CLK_A55PERIPH>; 493 + clock-names = "apb_pclk"; 494 + status = "disabled"; 495 + 496 + out-ports { 497 + port { 498 + etm0_out_port: endpoint { 499 + remote-endpoint = <&ca_funnel_in_port0>; 500 + }; 501 + }; 502 + }; 503 + }; 504 + 505 + funnel0: funnel { 506 + /* 507 + * non-configurable funnel don't show up on the AMBA 508 + * bus. As such no need to add "arm,primecell". 509 + */ 510 + compatible = "arm,coresight-static-funnel"; 511 + status = "disabled"; 512 + 513 + in-ports { 514 + port { 515 + ca_funnel_in_port0: endpoint { 516 + remote-endpoint = <&etm0_out_port>; 517 + }; 518 + }; 519 + }; 520 + 521 + out-ports { 522 + port { 523 + ca_funnel_out_port0: endpoint { 524 + remote-endpoint = <&hugo_funnel_in_port0>; 525 + }; 526 + }; 527 + }; 528 + }; 529 + 530 + funnel1: funnel-sys { 531 + compatible = "arm,coresight-static-funnel"; 532 + status = "disabled"; 533 + 534 + in-ports { 535 + port { 536 + hugo_funnel_in_port0: endpoint { 537 + remote-endpoint = <&ca_funnel_out_port0>; 538 + }; 539 + }; 540 + }; 541 + 542 + out-ports { 543 + port { 544 + hugo_funnel_out_port0: endpoint { 545 + remote-endpoint = <&etf_in_port>; 546 + }; 547 + }; 548 + }; 549 + }; 550 + 551 + etf: etf@41030000 { 552 + compatible = "arm,coresight-tmc", "arm,primecell"; 553 + reg = <0x0 0x41030000 0x0 0x1000>; 554 + clocks = <&scmi_clk IMX95_CLK_A55PERIPH>; 555 + clock-names = "apb_pclk"; 556 + status = "disabled"; 557 + 558 + in-ports { 559 + port { 560 + etf_in_port: endpoint { 561 + remote-endpoint = <&hugo_funnel_out_port0>; 562 + }; 563 + }; 564 + }; 565 + 566 + out-ports { 567 + port { 568 + etf_out_port: endpoint { 569 + remote-endpoint = <&etr_in_port>; 570 + }; 571 + }; 572 + }; 573 + }; 574 + 575 + etr: etr@41040000 { 576 + compatible = "arm,coresight-tmc", "arm,primecell"; 577 + reg = <0x0 0x41040000 0x0 0x1000>; 578 + clocks = <&scmi_clk IMX95_CLK_A55PERIPH>; 579 + clock-names = "apb_pclk"; 580 + status = "disabled"; 581 + 582 + in-ports { 583 + port { 584 + etr_in_port: endpoint { 585 + remote-endpoint = <&etf_out_port>; 586 + }; 587 + }; 588 + }; 589 + }; 494 590 495 591 aips2: bus@42000000 { 496 592 compatible = "fsl,aips-bus", "simple-bus"; ··· 1025 913 interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 1026 914 clocks = <&scmi_clk IMX95_CLK_LPUART7>; 1027 915 clock-names = "ipg"; 1028 - dmas = <&edma2 26 0 FSL_EDMA_RX>, <&edma2 25 0 0>; 916 + dmas = <&edma2 88 0 FSL_EDMA_RX>, <&edma2 87 0 0>; 1029 917 dma-names = "rx", "tx"; 1030 918 status = "disabled"; 1031 919 }; ··· 1037 925 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 1038 926 clocks = <&scmi_clk IMX95_CLK_LPUART8>; 1039 927 clock-names = "ipg"; 1040 - dmas = <&edma2 28 0 FSL_EDMA_RX>, <&edma2 27 0 0>; 928 + dmas = <&edma2 90 0 FSL_EDMA_RX>, <&edma2 89 0 0>; 1041 929 dma-names = "rx", "tx"; 1042 930 status = "disabled"; 1043 931 }; ··· 1212 1100 assigned-clock-rates = <400000000>; 1213 1101 bus-width = <8>; 1214 1102 fsl,tuning-start-tap = <1>; 1215 - fsl,tuning-step= <2>; 1103 + fsl,tuning-step = <2>; 1216 1104 status = "disabled"; 1217 1105 }; 1218 1106 ··· 1229 1117 assigned-clock-rates = <400000000>; 1230 1118 bus-width = <4>; 1231 1119 fsl,tuning-start-tap = <1>; 1232 - fsl,tuning-step= <2>; 1120 + fsl,tuning-step = <2>; 1233 1121 status = "disabled"; 1234 1122 }; 1235 1123 ··· 1246 1134 assigned-clock-rates = <400000000>; 1247 1135 bus-width = <4>; 1248 1136 fsl,tuning-start-tap = <1>; 1249 - fsl,tuning-step= <2>; 1137 + fsl,tuning-step = <2>; 1250 1138 status = "disabled"; 1251 1139 }; 1252 1140 }; ··· 1370 1258 clocks = <&scmi_clk IMX95_CLK_BUSAON>; 1371 1259 #mbox-cells = <2>; 1372 1260 status = "disabled"; 1261 + }; 1262 + 1263 + system_counter: timer@44290000 { 1264 + compatible = "nxp,imx95-sysctr-timer"; 1265 + reg = <0x44290000 0x30000>; 1266 + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 1267 + clocks = <&osc_24m>; 1268 + clock-names = "per"; 1269 + nxp,no-divider; 1373 1270 }; 1374 1271 1375 1272 tpm1: pwm@44310000 { ··· 1604 1483 }; 1605 1484 }; 1606 1485 1486 + mailbox@47300000 { 1487 + compatible = "fsl,imx95-mu-v2x"; 1488 + reg = <0x0 0x47300000 0x0 0x10000>; 1489 + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 1490 + #mbox-cells = <2>; 1491 + }; 1492 + 1607 1493 mailbox@47320000 { 1608 1494 compatible = "fsl,imx95-mu-v2x"; 1609 1495 reg = <0x0 0x47320000 0x0 0x10000>; 1610 1496 interrupts = <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>; 1497 + #mbox-cells = <2>; 1498 + }; 1499 + 1500 + mailbox@47330000 { 1501 + compatible = "fsl,imx95-mu-v2x"; 1502 + reg = <0x0 0x47330000 0x0 0x10000>; 1503 + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 1504 + #mbox-cells = <2>; 1505 + }; 1506 + 1507 + mailbox@47340000 { 1508 + compatible = "fsl,imx95-mu-v2x"; 1509 + reg = <0x0 0x47340000 0x0 0x10000>; 1510 + interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>; 1611 1511 #mbox-cells = <2>; 1612 1512 }; 1613 1513 ··· 1655 1513 gpio-ranges = <&scmi_iomuxc 0 112 16>; 1656 1514 ngpios = <16>; 1657 1515 status = "disabled"; 1516 + }; 1517 + 1518 + ocotp: efuse@47510000 { 1519 + compatible = "fsl,imx95-ocotp", "syscon"; 1520 + reg = <0x0 0x47510000 0x0 0x10000>; 1521 + #address-cells = <1>; 1522 + #size-cells = <1>; 1523 + 1524 + eth_mac0: mac-address@0 { 1525 + reg = <0x0514 0x6>; 1526 + }; 1527 + 1528 + eth_mac1: mac-address@1 { 1529 + reg = <0x1514 0x6>; 1530 + }; 1531 + 1532 + eth_mac2: mac-address@2 { 1533 + reg = <0x2514 0x6>; 1534 + }; 1658 1535 }; 1659 1536 1660 1537 elemu0: mailbox@47520000 { ··· 1846 1685 <&scmi_clk IMX95_CLK_HSIOPCIEAUX>, 1847 1686 <&hsio_blk_ctl 0>; 1848 1687 clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "ref"; 1849 - assigned-clocks =<&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1850 - <&scmi_clk IMX95_CLK_HSIOPLL>, 1851 - <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1688 + assigned-clocks = <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1689 + <&scmi_clk IMX95_CLK_HSIOPLL>, 1690 + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1852 1691 assigned-clock-rates = <3600000000>, <100000000>, <10000000>; 1853 1692 assigned-clock-parents = <0>, <0>, 1854 1693 <&scmi_clk IMX95_CLK_SYSPLL1_PFD1_DIV2>; ··· 1880 1719 <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1881 1720 <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1882 1721 clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux"; 1883 - assigned-clocks =<&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1884 - <&scmi_clk IMX95_CLK_HSIOPLL>, 1885 - <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1722 + assigned-clocks = <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1723 + <&scmi_clk IMX95_CLK_HSIOPLL>, 1724 + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1886 1725 assigned-clock-rates = <3600000000>, <100000000>, <10000000>; 1887 1726 assigned-clock-parents = <0>, <0>, 1888 1727 <&scmi_clk IMX95_CLK_SYSPLL1_PFD1_DIV2>; 1728 + msi-map = <0x0 &its 0x98 0x1>; 1889 1729 power-domains = <&scmi_devpd IMX95_PD_HSIO_TOP>; 1890 1730 status = "disabled"; 1891 1731 }; ··· 1921 1759 <&scmi_clk IMX95_CLK_HSIOPCIEAUX>, 1922 1760 <&hsio_blk_ctl 0>; 1923 1761 clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux", "ref"; 1924 - assigned-clocks =<&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1925 - <&scmi_clk IMX95_CLK_HSIOPLL>, 1926 - <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1762 + assigned-clocks = <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1763 + <&scmi_clk IMX95_CLK_HSIOPLL>, 1764 + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1927 1765 assigned-clock-rates = <3600000000>, <100000000>, <10000000>; 1928 1766 assigned-clock-parents = <0>, <0>, 1929 1767 <&scmi_clk IMX95_CLK_SYSPLL1_PFD1_DIV2>; ··· 1957 1795 <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1958 1796 <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1959 1797 clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_aux"; 1960 - assigned-clocks =<&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1961 - <&scmi_clk IMX95_CLK_HSIOPLL>, 1962 - <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1798 + assigned-clocks = <&scmi_clk IMX95_CLK_HSIOPLL_VCO>, 1799 + <&scmi_clk IMX95_CLK_HSIOPLL>, 1800 + <&scmi_clk IMX95_CLK_HSIOPCIEAUX>; 1963 1801 assigned-clock-rates = <3600000000>, <100000000>, <10000000>; 1964 1802 assigned-clock-parents = <0>, <0>, 1965 1803 <&scmi_clk IMX95_CLK_SYSPLL1_PFD1_DIV2>; ··· 2110 1948 }; 2111 1949 2112 1950 netc_timer: ethernet@18,0 { 1951 + compatible = "pci1131,ee02"; 2113 1952 reg = <0x00c000 0 0 0 0>; 2114 1953 status = "disabled"; 2115 1954 };
+126
arch/arm64/boot/dts/freescale/s32g2.dtsi
··· 325 325 }; 326 326 }; 327 327 328 + ocotp: nvmem@400a4000 { 329 + compatible = "nxp,s32g2-ocotp"; 330 + reg = <0x400a4000 0x400>; 331 + #address-cells = <1>; 332 + #size-cells = <1>; 333 + }; 334 + 335 + swt0: watchdog@40100000 { 336 + compatible = "nxp,s32g2-swt"; 337 + reg = <0x40100000 0x1000>; 338 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 339 + clock-names = "counter", "module", "register"; 340 + status = "disabled"; 341 + }; 342 + 343 + swt1: watchdog@40104000 { 344 + compatible = "nxp,s32g2-swt"; 345 + reg = <0x40104000 0x1000>; 346 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 347 + clock-names = "counter", "module", "register"; 348 + status = "disabled"; 349 + }; 350 + 351 + swt2: watchdog@40108000 { 352 + compatible = "nxp,s32g2-swt"; 353 + reg = <0x40108000 0x1000>; 354 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 355 + clock-names = "counter", "module", "register"; 356 + status = "disabled"; 357 + }; 358 + 359 + swt3: watchdog@4010c000 { 360 + compatible = "nxp,s32g2-swt"; 361 + reg = <0x4010c000 0x1000>; 362 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 363 + clock-names = "counter", "module", "register"; 364 + status = "disabled"; 365 + }; 366 + 367 + stm0: timer@4011c000 { 368 + compatible = "nxp,s32g2-stm"; 369 + reg = <0x4011c000 0x3000>; 370 + interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 371 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 372 + clock-names = "counter", "module", "register"; 373 + status = "disabled"; 374 + }; 375 + 376 + stm1: timer@40120000 { 377 + compatible = "nxp,s32g2-stm"; 378 + reg = <0x40120000 0x3000>; 379 + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 380 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 381 + clock-names = "counter", "module", "register"; 382 + status = "disabled"; 383 + }; 384 + 385 + stm2: timer@40124000 { 386 + compatible = "nxp,s32g2-stm"; 387 + reg = <0x40124000 0x3000>; 388 + interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 389 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 390 + clock-names = "counter", "module", "register"; 391 + status = "disabled"; 392 + }; 393 + 394 + stm3: timer@40128000 { 395 + compatible = "nxp,s32g2-stm"; 396 + reg = <0x40128000 0x3000>; 397 + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 398 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 399 + clock-names = "counter", "module", "register"; 400 + status = "disabled"; 401 + }; 402 + 328 403 edma0: dma-controller@40144000 { 329 404 compatible = "nxp,s32g2-edma"; 330 405 reg = <0x40144000 0x24000>, ··· 551 476 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 552 477 clocks = <&clks 40>; 553 478 clock-names = "ipg"; 479 + status = "disabled"; 480 + }; 481 + 482 + swt4: watchdog@40200000 { 483 + compatible = "nxp,s32g2-swt"; 484 + reg = <0x40200000 0x1000>; 485 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 486 + clock-names = "counter", "module", "register"; 487 + status = "disabled"; 488 + }; 489 + 490 + swt5: watchdog@40204000 { 491 + compatible = "nxp,s32g2-swt"; 492 + reg = <0x40204000 0x1000>; 493 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 494 + clock-names = "counter", "module", "register"; 495 + status = "disabled"; 496 + }; 497 + 498 + swt6: watchdog@40208000 { 499 + compatible = "nxp,s32g2-swt"; 500 + reg = <0x40208000 0x1000>; 501 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 502 + clock-names = "counter", "module", "register"; 503 + status = "disabled"; 504 + }; 505 + 506 + stm4: timer@4021c000 { 507 + compatible = "nxp,s32g2-stm"; 508 + reg = <0x4021c000 0x3000>; 509 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 510 + clock-names = "counter", "module", "register"; 511 + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 512 + status = "disabled"; 513 + }; 514 + 515 + stm5: timer@40220000 { 516 + compatible = "nxp,s32g2-stm"; 517 + reg = <0x40220000 0x3000>; 518 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 519 + clock-names = "counter", "module", "register"; 520 + interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 521 + status = "disabled"; 522 + }; 523 + 524 + stm6: timer@40224000 { 525 + compatible = "nxp,s32g2-stm"; 526 + reg = <0x40224000 0x3000>; 527 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 528 + clock-names = "counter", "module", "register"; 529 + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 554 530 status = "disabled"; 555 531 }; 556 532
+20
arch/arm64/boot/dts/freescale/s32g274a-rdb2.dts
··· 40 40 status = "okay"; 41 41 }; 42 42 43 + &stm0 { 44 + status = "okay"; 45 + }; 46 + 47 + &stm1 { 48 + status = "okay"; 49 + }; 50 + 51 + &stm2 { 52 + status = "okay"; 53 + }; 54 + 55 + &stm3 { 56 + status = "okay"; 57 + }; 58 + 59 + &swt0 { 60 + status = "okay"; 61 + }; 62 + 43 63 &usdhc0 { 44 64 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 45 65 pinctrl-0 = <&pinctrl_usdhc0>;
+202
arch/arm64/boot/dts/freescale/s32g3.dtsi
··· 383 383 }; 384 384 }; 385 385 386 + ocotp: nvmem@400a4000 { 387 + compatible = "nxp,s32g3-ocotp", "nxp,s32g2-ocotp"; 388 + reg = <0x400a4000 0x400>; 389 + #address-cells = <1>; 390 + #size-cells = <1>; 391 + }; 392 + 393 + swt0: watchdog@40100000 { 394 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 395 + reg = <0x40100000 0x1000>; 396 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 397 + clock-names = "counter", "module", "register"; 398 + status = "disabled"; 399 + }; 400 + 401 + swt1: watchdog@40104000 { 402 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 403 + reg = <0x40104000 0x1000>; 404 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 405 + clock-names = "counter", "module", "register"; 406 + status = "disabled"; 407 + }; 408 + 409 + swt2: watchdog@40108000 { 410 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 411 + reg = <0x40108000 0x1000>; 412 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 413 + clock-names = "counter", "module", "register"; 414 + status = "disabled"; 415 + }; 416 + 417 + swt3: watchdog@4010c000 { 418 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 419 + reg = <0x4010c000 0x1000>; 420 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 421 + clock-names = "counter", "module", "register"; 422 + status = "disabled"; 423 + }; 424 + 425 + stm0: timer@4011c000 { 426 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 427 + reg = <0x4011c000 0x3000>; 428 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 429 + clock-names = "counter", "module", "register"; 430 + interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 431 + status = "disabled"; 432 + }; 433 + 434 + stm1: timer@40120000 { 435 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 436 + reg = <0x40120000 0x3000>; 437 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 438 + clock-names = "counter", "module", "register"; 439 + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 440 + status = "disabled"; 441 + }; 442 + 443 + stm2: timer@40124000 { 444 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 445 + reg = <0x40124000 0x3000>; 446 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 447 + clock-names = "counter", "module", "register"; 448 + interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 449 + status = "disabled"; 450 + }; 451 + 452 + stm3: timer@40128000 { 453 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 454 + reg = <0x40128000 0x3000>; 455 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 456 + clock-names = "counter", "module", "register"; 457 + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 458 + status = "disabled"; 459 + }; 460 + 386 461 edma0: dma-controller@40144000 { 387 462 compatible = "nxp,s32g3-edma", "nxp,s32g2-edma"; 388 463 reg = <0x40144000 0x24000>, ··· 617 542 status = "disabled"; 618 543 }; 619 544 545 + swt4: watchdog@40200000 { 546 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 547 + reg = <0x40200000 0x1000>; 548 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 549 + clock-names = "counter", "module", "register"; 550 + status = "disabled"; 551 + }; 552 + 553 + swt5: watchdog@40204000 { 554 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 555 + reg = <0x40204000 0x1000>; 556 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 557 + clock-names = "counter", "module", "register"; 558 + status = "disabled"; 559 + }; 560 + 561 + swt6: watchdog@40208000 { 562 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 563 + reg = <0x40208000 0x1000>; 564 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 565 + clock-names = "counter", "module", "register"; 566 + status = "disabled"; 567 + }; 568 + 569 + swt7: watchdog@4020C000 { 570 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 571 + reg = <0x4020C000 0x1000>; 572 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 573 + clock-names = "counter", "module", "register"; 574 + status = "disabled"; 575 + }; 576 + 577 + stm4: timer@4021c000 { 578 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 579 + reg = <0x4021c000 0x3000>; 580 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 581 + clock-names = "counter", "module", "register"; 582 + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 583 + status = "disabled"; 584 + }; 585 + 586 + stm5: timer@40220000 { 587 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 588 + reg = <0x40220000 0x3000>; 589 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 590 + clock-names = "counter", "module", "register"; 591 + interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 592 + status = "disabled"; 593 + }; 594 + 595 + stm6: timer@40224000 { 596 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 597 + reg = <0x40224000 0x3000>; 598 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 599 + clock-names = "counter", "module", "register"; 600 + interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 601 + status = "disabled"; 602 + }; 603 + 620 604 edma1: dma-controller@40244000 { 621 605 compatible = "nxp,s32g3-edma", "nxp,s32g2-edma"; 622 606 reg = <0x40244000 0x24000>, ··· 801 667 <&clks 31>, 802 668 <&clks 33>; 803 669 clock-names = "ipg", "ahb", "per"; 670 + status = "disabled"; 671 + }; 672 + 673 + swt8: watchdog@40500000 { 674 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 675 + reg = <40500000 0x1000>; 676 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 677 + clock-names = "counter", "module", "register"; 678 + status = "disabled"; 679 + }; 680 + 681 + swt9: watchdog@40504000 { 682 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 683 + reg = <0x40504000 0x1000>; 684 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 685 + clock-names = "counter", "module", "register"; 686 + status = "disabled"; 687 + }; 688 + 689 + swt10: watchdog@40508000 { 690 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 691 + reg = <0x40508000 0x1000>; 692 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 693 + clock-names = "counter", "module", "register"; 694 + status = "disabled"; 695 + }; 696 + 697 + swt11: watchdog@4050c000 { 698 + compatible = "nxp,s32g3-swt", "nxp,s32g2-swt"; 699 + reg = <0x4050c000 0x1000>; 700 + clocks = <&clks 0x3a>, <&clks 0x3b>, <&clks 0x3b>; 701 + clock-names = "counter", "module", "register"; 702 + status = "disabled"; 703 + }; 704 + 705 + stm8: timer@40520000 { 706 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 707 + reg = <0x40520000 0x3000>; 708 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 709 + clock-names = "counter", "module", "register"; 710 + interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>; 711 + status = "disabled"; 712 + }; 713 + 714 + stm9: timer@40524000 { 715 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 716 + reg = <0x40524000 0x3000>; 717 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 718 + clock-names = "counter", "module", "register"; 719 + interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>; 720 + status = "disabled"; 721 + }; 722 + 723 + stm10: timer@40528000 { 724 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 725 + reg = <0x40528000 0x3000>; 726 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 727 + clock-names = "counter", "module", "register"; 728 + interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; 729 + status = "disabled"; 730 + }; 731 + 732 + stm11: timer@4052c000 { 733 + compatible = "nxp,s32g3-stm", "nxp,s32g2-stm"; 734 + reg = <0x4052c000 0x3000>; 735 + clocks = <&clks 0x3b>, <&clks 0x3c>, <&clks 0x3c>; 736 + clock-names = "counter", "module", "register"; 737 + interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>; 804 738 status = "disabled"; 805 739 }; 806 740
+36
arch/arm64/boot/dts/freescale/s32g399a-rdb3.dts
··· 40 40 status = "okay"; 41 41 }; 42 42 43 + &stm0 { 44 + status = "okay"; 45 + }; 46 + 47 + &stm1 { 48 + status = "okay"; 49 + }; 50 + 51 + &stm2 { 52 + status = "okay"; 53 + }; 54 + 55 + &stm3 { 56 + status = "okay"; 57 + }; 58 + 59 + &stm4 { 60 + status = "okay"; 61 + }; 62 + 63 + &stm5 { 64 + status = "okay"; 65 + }; 66 + 67 + &stm6 { 68 + status = "okay"; 69 + }; 70 + 71 + &stm8 { 72 + status = "okay"; 73 + }; 74 + 75 + &swt0 { 76 + status = "okay"; 77 + }; 78 + 43 79 &i2c4 { 44 80 current-sensor@40 { 45 81 compatible = "ti,ina231";