1418d1d84SAlexander Stein// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2418d1d84SAlexander Stein/* 3*e432cb12SAlexander Stein * Copyright 2021-2025 TQ-Systems GmbH <linux@ew.tq-group.com>, 4*e432cb12SAlexander Stein * D-82229 Seefeld, Germany. 5*e432cb12SAlexander Stein * Author: Alexander Stein 6418d1d84SAlexander Stein */ 7418d1d84SAlexander Stein 8418d1d84SAlexander Stein#include "imx8mp.dtsi" 9418d1d84SAlexander Stein 10418d1d84SAlexander Stein/ { 11418d1d84SAlexander Stein model = "TQ-Systems i.MX8MPlus TQMa8MPxL"; 12418d1d84SAlexander Stein compatible = "tq,imx8mp-tqma8mpql", "fsl,imx8mp"; 13418d1d84SAlexander Stein 14418d1d84SAlexander Stein memory@40000000 { 15418d1d84SAlexander Stein device_type = "memory"; 16418d1d84SAlexander Stein reg = <0x0 0x40000000 0 0x80000000>; 17418d1d84SAlexander Stein }; 18418d1d84SAlexander Stein 19418d1d84SAlexander Stein /* identical to buck4_reg, but should never change */ 20418d1d84SAlexander Stein reg_vcc3v3: regulator-vcc3v3 { 21418d1d84SAlexander Stein compatible = "regulator-fixed"; 22418d1d84SAlexander Stein regulator-name = "VCC3V3"; 23418d1d84SAlexander Stein regulator-min-microvolt = <3300000>; 24418d1d84SAlexander Stein regulator-max-microvolt = <3300000>; 25418d1d84SAlexander Stein regulator-always-on; 26418d1d84SAlexander Stein }; 27418d1d84SAlexander Stein}; 28418d1d84SAlexander Stein 29418d1d84SAlexander Stein&A53_0 { 30418d1d84SAlexander Stein cpu-supply = <&buck2_reg>; 31418d1d84SAlexander Stein}; 32418d1d84SAlexander Stein 33418d1d84SAlexander Stein&flexspi { 34418d1d84SAlexander Stein pinctrl-names = "default"; 35418d1d84SAlexander Stein pinctrl-0 = <&pinctrl_flexspi0>; 36418d1d84SAlexander Stein status = "okay"; 37418d1d84SAlexander Stein 38418d1d84SAlexander Stein flash0: flash@0 { 39418d1d84SAlexander Stein reg = <0>; 40418d1d84SAlexander Stein #address-cells = <1>; 41418d1d84SAlexander Stein #size-cells = <1>; 42418d1d84SAlexander Stein compatible = "jedec,spi-nor"; 43418d1d84SAlexander Stein spi-max-frequency = <80000000>; 44418d1d84SAlexander Stein spi-tx-bus-width = <1>; 45418d1d84SAlexander Stein spi-rx-bus-width = <4>; 46418d1d84SAlexander Stein }; 47418d1d84SAlexander Stein}; 48418d1d84SAlexander Stein 49418d1d84SAlexander Stein&i2c1 { 50418d1d84SAlexander Stein clock-frequency = <384000>; 51418d1d84SAlexander Stein pinctrl-names = "default", "gpio"; 52418d1d84SAlexander Stein pinctrl-0 = <&pinctrl_i2c1>; 53418d1d84SAlexander Stein pinctrl-1 = <&pinctrl_i2c1_gpio>; 54418d1d84SAlexander Stein scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 55418d1d84SAlexander Stein sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 56418d1d84SAlexander Stein status = "okay"; 57418d1d84SAlexander Stein 58580c545fSAlexander Stein se97: temperature-sensor@1b { 59580c545fSAlexander Stein compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 60418d1d84SAlexander Stein reg = <0x1b>; 61418d1d84SAlexander Stein }; 62418d1d84SAlexander Stein 63418d1d84SAlexander Stein pmic: pmic@25 { 64418d1d84SAlexander Stein reg = <0x25>; 65418d1d84SAlexander Stein compatible = "nxp,pca9450c"; 66418d1d84SAlexander Stein 67418d1d84SAlexander Stein /* PMIC PCA9450 PMIC_nINT GPIO1_IO08 */ 68418d1d84SAlexander Stein pinctrl-0 = <&pinctrl_pmic>; 69418d1d84SAlexander Stein pinctrl-names = "default"; 70418d1d84SAlexander Stein interrupt-parent = <&gpio1>; 71418d1d84SAlexander Stein interrupts = <8 IRQ_TYPE_LEVEL_LOW>; 72418d1d84SAlexander Stein 73418d1d84SAlexander Stein regulators { 74418d1d84SAlexander Stein /* V_0V85_SOC: 0.85 .. 0.95 */ 75418d1d84SAlexander Stein buck1_reg: BUCK1 { 76418d1d84SAlexander Stein regulator-name = "BUCK1"; 77418d1d84SAlexander Stein regulator-min-microvolt = <850000>; 78418d1d84SAlexander Stein regulator-max-microvolt = <950000>; 79418d1d84SAlexander Stein regulator-boot-on; 80418d1d84SAlexander Stein regulator-always-on; 81418d1d84SAlexander Stein regulator-ramp-delay = <3125>; 82418d1d84SAlexander Stein }; 83418d1d84SAlexander Stein 84418d1d84SAlexander Stein /* VDD_ARM */ 85418d1d84SAlexander Stein buck2_reg: BUCK2 { 86418d1d84SAlexander Stein regulator-name = "BUCK2"; 87418d1d84SAlexander Stein regulator-min-microvolt = <850000>; 88418d1d84SAlexander Stein regulator-max-microvolt = <1000000>; 89418d1d84SAlexander Stein regulator-boot-on; 90418d1d84SAlexander Stein regulator-always-on; 91418d1d84SAlexander Stein nxp,dvs-run-voltage = <950000>; 92418d1d84SAlexander Stein nxp,dvs-standby-voltage = <850000>; 93418d1d84SAlexander Stein regulator-ramp-delay = <3125>; 94418d1d84SAlexander Stein }; 95418d1d84SAlexander Stein 96418d1d84SAlexander Stein /* VCC3V3 -> VMMC, ... must not be changed */ 97418d1d84SAlexander Stein buck4_reg: BUCK4 { 98418d1d84SAlexander Stein regulator-name = "BUCK4"; 99418d1d84SAlexander Stein regulator-min-microvolt = <3300000>; 100418d1d84SAlexander Stein regulator-max-microvolt = <3300000>; 101418d1d84SAlexander Stein regulator-boot-on; 102418d1d84SAlexander Stein regulator-always-on; 103418d1d84SAlexander Stein }; 104418d1d84SAlexander Stein 105418d1d84SAlexander Stein /* V_1V8 -> VQMMC, SPI-NOR, ... must not be changed */ 106418d1d84SAlexander Stein buck5_reg: BUCK5 { 107418d1d84SAlexander Stein regulator-name = "BUCK5"; 108418d1d84SAlexander Stein regulator-min-microvolt = <1800000>; 109418d1d84SAlexander Stein regulator-max-microvolt = <1800000>; 110418d1d84SAlexander Stein regulator-boot-on; 111418d1d84SAlexander Stein regulator-always-on; 112418d1d84SAlexander Stein }; 113418d1d84SAlexander Stein 114418d1d84SAlexander Stein /* V_1V1 -> RAM, ... must not be changed */ 115418d1d84SAlexander Stein buck6_reg: BUCK6 { 116418d1d84SAlexander Stein regulator-name = "BUCK6"; 117418d1d84SAlexander Stein regulator-min-microvolt = <1100000>; 118418d1d84SAlexander Stein regulator-max-microvolt = <1100000>; 119418d1d84SAlexander Stein regulator-boot-on; 120418d1d84SAlexander Stein regulator-always-on; 121418d1d84SAlexander Stein }; 122418d1d84SAlexander Stein 123418d1d84SAlexander Stein /* V_1V8_SNVS */ 124418d1d84SAlexander Stein ldo1_reg: LDO1 { 125418d1d84SAlexander Stein regulator-name = "LDO1"; 126418d1d84SAlexander Stein regulator-min-microvolt = <1800000>; 127418d1d84SAlexander Stein regulator-max-microvolt = <1800000>; 128418d1d84SAlexander Stein regulator-boot-on; 129418d1d84SAlexander Stein regulator-always-on; 130418d1d84SAlexander Stein }; 131418d1d84SAlexander Stein 132418d1d84SAlexander Stein /* V_1V8_ANA */ 133418d1d84SAlexander Stein ldo3_reg: LDO3 { 134418d1d84SAlexander Stein regulator-name = "LDO3"; 135418d1d84SAlexander Stein regulator-min-microvolt = <1800000>; 136418d1d84SAlexander Stein regulator-max-microvolt = <1800000>; 137418d1d84SAlexander Stein regulator-boot-on; 138418d1d84SAlexander Stein regulator-always-on; 139418d1d84SAlexander Stein }; 140418d1d84SAlexander Stein 141418d1d84SAlexander Stein /* unused */ 142418d1d84SAlexander Stein ldo4_reg: LDO4 { 143418d1d84SAlexander Stein regulator-name = "LDO4"; 144418d1d84SAlexander Stein regulator-min-microvolt = <800000>; 145418d1d84SAlexander Stein regulator-max-microvolt = <3300000>; 146418d1d84SAlexander Stein }; 147418d1d84SAlexander Stein 148418d1d84SAlexander Stein /* VCC SD IO - switched using SD2 VSELECT */ 149418d1d84SAlexander Stein ldo5_reg: LDO5 { 150418d1d84SAlexander Stein regulator-name = "LDO5"; 151418d1d84SAlexander Stein regulator-min-microvolt = <1800000>; 152418d1d84SAlexander Stein regulator-max-microvolt = <3300000>; 153418d1d84SAlexander Stein }; 154418d1d84SAlexander Stein }; 155418d1d84SAlexander Stein }; 156418d1d84SAlexander Stein 157418d1d84SAlexander Stein pcf85063: rtc@51 { 158418d1d84SAlexander Stein compatible = "nxp,pcf85063a"; 159418d1d84SAlexander Stein reg = <0x51>; 160418d1d84SAlexander Stein }; 161418d1d84SAlexander Stein 162418d1d84SAlexander Stein at24c02: eeprom@53 { 163418d1d84SAlexander Stein compatible = "nxp,se97b", "atmel,24c02"; 164418d1d84SAlexander Stein read-only; 165418d1d84SAlexander Stein reg = <0x53>; 166418d1d84SAlexander Stein pagesize = <16>; 167418d1d84SAlexander Stein vcc-supply = <®_vcc3v3>; 168418d1d84SAlexander Stein }; 169418d1d84SAlexander Stein 170418d1d84SAlexander Stein m24c64: eeprom@57 { 171418d1d84SAlexander Stein compatible = "atmel,24c64"; 172418d1d84SAlexander Stein reg = <0x57>; 173418d1d84SAlexander Stein pagesize = <32>; 174418d1d84SAlexander Stein vcc-supply = <®_vcc3v3>; 175418d1d84SAlexander Stein }; 176418d1d84SAlexander Stein}; 177418d1d84SAlexander Stein 178418d1d84SAlexander Stein&usdhc3 { 179418d1d84SAlexander Stein pinctrl-names = "default", "state_100mhz", "state_200mhz"; 180418d1d84SAlexander Stein pinctrl-0 = <&pinctrl_usdhc3>; 181418d1d84SAlexander Stein pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 182418d1d84SAlexander Stein pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 183418d1d84SAlexander Stein bus-width = <8>; 184418d1d84SAlexander Stein non-removable; 185418d1d84SAlexander Stein no-sd; 186418d1d84SAlexander Stein no-sdio; 187418d1d84SAlexander Stein vmmc-supply = <®_vcc3v3>; 188*e432cb12SAlexander Stein vqmmc-supply = <&buck5_reg>; 189418d1d84SAlexander Stein status = "okay"; 190418d1d84SAlexander Stein}; 191418d1d84SAlexander Stein 192418d1d84SAlexander Stein&wdog1 { 193418d1d84SAlexander Stein pinctrl-names = "default"; 194418d1d84SAlexander Stein pinctrl-0 = <&pinctrl_wdog>; 195418d1d84SAlexander Stein fsl,ext-reset-output; 196418d1d84SAlexander Stein status = "okay"; 197418d1d84SAlexander Stein}; 198418d1d84SAlexander Stein 199418d1d84SAlexander Stein&iomuxc { 200418d1d84SAlexander Stein pinctrl_flexspi0: flexspi0grp { 201418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_NAND_ALE__FLEXSPI_A_SCLK 0x142>, 202418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE0_B__FLEXSPI_A_SS0_B 0x82>, 203418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA00__FLEXSPI_A_DATA00 0x82>, 204418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA01__FLEXSPI_A_DATA01 0x82>, 205418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA02__FLEXSPI_A_DATA02 0x82>, 206418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA03__FLEXSPI_A_DATA03 0x82>; 207418d1d84SAlexander Stein }; 208418d1d84SAlexander Stein 209418d1d84SAlexander Stein pinctrl_i2c1: i2c1grp { 210418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL 0x400001e2>, 211418d1d84SAlexander Stein <MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA 0x400001e2>; 212418d1d84SAlexander Stein }; 213418d1d84SAlexander Stein 214418d1d84SAlexander Stein pinctrl_i2c1_gpio: i2c1-gpiogrp { 215418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14 0x400001e2>, 216418d1d84SAlexander Stein <MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15 0x400001e2>; 217418d1d84SAlexander Stein }; 218418d1d84SAlexander Stein 219418d1d84SAlexander Stein pinctrl_pmic: pmicirqgrp { 220418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_GPIO1_IO08__GPIO1_IO08 0x1c0>; 221418d1d84SAlexander Stein }; 222418d1d84SAlexander Stein 223418d1d84SAlexander Stein pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { 224418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x10>; 225418d1d84SAlexander Stein }; 226418d1d84SAlexander Stein 227418d1d84SAlexander Stein pinctrl_usdhc3: usdhc3grp { 228418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194>, 229418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4>, 230418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4>, 231418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4>, 232418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4>, 233418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4>, 234418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4>, 235418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4>, 236418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4>, 237418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4>, 238418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x84>, 239418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_READY_B__USDHC3_RESET_B 0x84>; 240418d1d84SAlexander Stein }; 241418d1d84SAlexander Stein 242418d1d84SAlexander Stein pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp { 243418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194>, 244418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4>, 245418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4>, 246418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4>, 247418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4>, 248418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4>, 249418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4>, 250418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4>, 251418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4>, 252418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4>, 253418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x84>, 254418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_READY_B__USDHC3_RESET_B 0x84>; 255418d1d84SAlexander Stein }; 256418d1d84SAlexander Stein 257418d1d84SAlexander Stein pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp { 258418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK 0x194>, 259418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD 0x1d4>, 260418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0 0x1d4>, 261418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1 0x1d4>, 262418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2 0x1d4>, 263418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3 0x1d4>, 264418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4 0x1d4>, 265418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5 0x1d4>, 266418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6 0x1d4>, 267418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7 0x1d4>, 268418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE 0x84>, 269418d1d84SAlexander Stein <MX8MP_IOMUXC_NAND_READY_B__USDHC3_RESET_B 0x84>; 270418d1d84SAlexander Stein }; 271418d1d84SAlexander Stein 272418d1d84SAlexander Stein pinctrl_wdog: wdoggrp { 273418d1d84SAlexander Stein fsl,pins = <MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B 0x1c4>; 274418d1d84SAlexander Stein }; 275418d1d84SAlexander Stein}; 276