1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 OR X11 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Device Tree Include file for TQ-Systems TQMa7x boards with full mounted PCB. 4f126890aSEmmanuel Vadot * 5f126890aSEmmanuel Vadot * Copyright (C) 2016 TQ-Systems GmbH 6f126890aSEmmanuel Vadot * Author: Markus Niebel <Markus.Niebel@tq-group.com> 7f126890aSEmmanuel Vadot * Copyright (C) 2019 Bruno Thomsen <bruno.thomsen@gmail.com> 8f126890aSEmmanuel Vadot */ 9f126890aSEmmanuel Vadot 10f126890aSEmmanuel Vadot/ { 11f126890aSEmmanuel Vadot memory@80000000 { 12f126890aSEmmanuel Vadot device_type = "memory"; 13f126890aSEmmanuel Vadot /* 512 MB - default configuration */ 14f126890aSEmmanuel Vadot reg = <0x80000000 0x20000000>; 15f126890aSEmmanuel Vadot }; 16f126890aSEmmanuel Vadot}; 17f126890aSEmmanuel Vadot 18f126890aSEmmanuel Vadot&cpu0 { 19f126890aSEmmanuel Vadot cpu-supply = <&sw1a_reg>; 20f126890aSEmmanuel Vadot}; 21f126890aSEmmanuel Vadot 22f126890aSEmmanuel Vadot&gpio2 { 23f126890aSEmmanuel Vadot /* Configured as pullup by QSPI pin group */ 24f126890aSEmmanuel Vadot qspi-reset-hog { 25f126890aSEmmanuel Vadot gpio-hog; 26f126890aSEmmanuel Vadot gpios = <4 GPIO_ACTIVE_LOW>; 27f126890aSEmmanuel Vadot input; 28f126890aSEmmanuel Vadot line-name = "qspi-reset"; 29f126890aSEmmanuel Vadot }; 30f126890aSEmmanuel Vadot}; 31f126890aSEmmanuel Vadot 32f126890aSEmmanuel Vadot&i2c1 { 33*01950c46SEmmanuel Vadot pinctrl-names = "default", "gpio"; 34f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_i2c1>; 35*01950c46SEmmanuel Vadot pinctrl-1 = <&pinctrl_i2c1_recovery>; 36*01950c46SEmmanuel Vadot scl-gpios = <&gpio4 8 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 37*01950c46SEmmanuel Vadot sda-gpios = <&gpio4 9 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 38f126890aSEmmanuel Vadot clock-frequency = <100000>; 39f126890aSEmmanuel Vadot status = "okay"; 40f126890aSEmmanuel Vadot 41f126890aSEmmanuel Vadot pfuze3000: pmic@8 { 42f126890aSEmmanuel Vadot pinctrl-names = "default"; 43f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_pmic1>; 44f126890aSEmmanuel Vadot compatible = "fsl,pfuze3000"; 45f126890aSEmmanuel Vadot reg = <0x08>; 46f126890aSEmmanuel Vadot 47f126890aSEmmanuel Vadot regulators { 48f126890aSEmmanuel Vadot sw1a_reg: sw1a { 49f126890aSEmmanuel Vadot regulator-min-microvolt = <700000>; 50f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 51f126890aSEmmanuel Vadot regulator-boot-on; 52f126890aSEmmanuel Vadot regulator-always-on; 53f126890aSEmmanuel Vadot regulator-ramp-delay = <6250>; 54f126890aSEmmanuel Vadot }; 55f126890aSEmmanuel Vadot 56f126890aSEmmanuel Vadot /* use sw1c_reg to align with pfuze100/pfuze200 */ 57f126890aSEmmanuel Vadot sw1c_reg: sw1b { 58f126890aSEmmanuel Vadot regulator-min-microvolt = <700000>; 59f126890aSEmmanuel Vadot regulator-max-microvolt = <1475000>; 60f126890aSEmmanuel Vadot regulator-boot-on; 61f126890aSEmmanuel Vadot regulator-always-on; 62f126890aSEmmanuel Vadot regulator-ramp-delay = <6250>; 63f126890aSEmmanuel Vadot }; 64f126890aSEmmanuel Vadot 65f126890aSEmmanuel Vadot sw2_reg: sw2 { 66f126890aSEmmanuel Vadot regulator-min-microvolt = <1500000>; 67f126890aSEmmanuel Vadot regulator-max-microvolt = <1850000>; 68f126890aSEmmanuel Vadot regulator-boot-on; 69f126890aSEmmanuel Vadot regulator-always-on; 70f126890aSEmmanuel Vadot }; 71f126890aSEmmanuel Vadot 72f126890aSEmmanuel Vadot sw3a_reg: sw3 { 73f126890aSEmmanuel Vadot regulator-min-microvolt = <900000>; 74f126890aSEmmanuel Vadot regulator-max-microvolt = <1650000>; 75f126890aSEmmanuel Vadot regulator-boot-on; 76f126890aSEmmanuel Vadot regulator-always-on; 77f126890aSEmmanuel Vadot }; 78f126890aSEmmanuel Vadot 79f126890aSEmmanuel Vadot swbst_reg: swbst { 80f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 81f126890aSEmmanuel Vadot regulator-max-microvolt = <5150000>; 82f126890aSEmmanuel Vadot }; 83f126890aSEmmanuel Vadot 84f126890aSEmmanuel Vadot snvs_reg: vsnvs { 85f126890aSEmmanuel Vadot regulator-min-microvolt = <1000000>; 86f126890aSEmmanuel Vadot regulator-max-microvolt = <3000000>; 87f126890aSEmmanuel Vadot regulator-boot-on; 88f126890aSEmmanuel Vadot regulator-always-on; 89f126890aSEmmanuel Vadot }; 90f126890aSEmmanuel Vadot 91f126890aSEmmanuel Vadot vref_reg: vrefddr { 92f126890aSEmmanuel Vadot regulator-boot-on; 93f126890aSEmmanuel Vadot regulator-always-on; 94f126890aSEmmanuel Vadot }; 95f126890aSEmmanuel Vadot 96f126890aSEmmanuel Vadot vgen1_reg: vldo1 { 97f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 98f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 99f126890aSEmmanuel Vadot regulator-always-on; 100f126890aSEmmanuel Vadot }; 101f126890aSEmmanuel Vadot 102f126890aSEmmanuel Vadot vgen2_reg: vldo2 { 103f126890aSEmmanuel Vadot regulator-min-microvolt = <800000>; 104f126890aSEmmanuel Vadot regulator-max-microvolt = <1550000>; 105f126890aSEmmanuel Vadot regulator-always-on; 106f126890aSEmmanuel Vadot }; 107f126890aSEmmanuel Vadot 108f126890aSEmmanuel Vadot vgen3_reg: vccsd { 109f126890aSEmmanuel Vadot regulator-min-microvolt = <2850000>; 110f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 111f126890aSEmmanuel Vadot regulator-always-on; 112f126890aSEmmanuel Vadot }; 113f126890aSEmmanuel Vadot 114f126890aSEmmanuel Vadot vgen4_reg: v33 { 115*01950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 116f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 117f126890aSEmmanuel Vadot regulator-always-on; 118f126890aSEmmanuel Vadot }; 119f126890aSEmmanuel Vadot 120f126890aSEmmanuel Vadot vgen5_reg: vldo3 { 121f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 122f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 123f126890aSEmmanuel Vadot regulator-always-on; 124f126890aSEmmanuel Vadot }; 125f126890aSEmmanuel Vadot 126f126890aSEmmanuel Vadot vgen6_reg: vldo4 { 127f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 128f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 129f126890aSEmmanuel Vadot regulator-always-on; 130f126890aSEmmanuel Vadot }; 131f126890aSEmmanuel Vadot }; 132f126890aSEmmanuel Vadot }; 133f126890aSEmmanuel Vadot 1348d13bc63SEmmanuel Vadot /* LM75A temperature sensor, TQMa7x 01xx */ 1358d13bc63SEmmanuel Vadot lm75a: temperature-sensor@48 { 1368d13bc63SEmmanuel Vadot compatible = "national,lm75a"; 1378d13bc63SEmmanuel Vadot reg = <0x48>; 1388d13bc63SEmmanuel Vadot }; 1398d13bc63SEmmanuel Vadot 1408d13bc63SEmmanuel Vadot /* NXP SE97BTP with temperature sensor + eeprom, TQMa7x 02xx */ 141*01950c46SEmmanuel Vadot se97b: temperature-sensor@1e { 142f126890aSEmmanuel Vadot compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 143f126890aSEmmanuel Vadot reg = <0x1e>; 144f126890aSEmmanuel Vadot }; 145f126890aSEmmanuel Vadot 146f126890aSEmmanuel Vadot /* ST M24C64 */ 147f126890aSEmmanuel Vadot m24c64: eeprom@50 { 148f126890aSEmmanuel Vadot compatible = "atmel,24c64"; 149*01950c46SEmmanuel Vadot read-only; 150f126890aSEmmanuel Vadot reg = <0x50>; 151f126890aSEmmanuel Vadot pagesize = <32>; 152*01950c46SEmmanuel Vadot vcc-supply = <&vgen4_reg>; 153f126890aSEmmanuel Vadot status = "okay"; 154f126890aSEmmanuel Vadot }; 155f126890aSEmmanuel Vadot 156f126890aSEmmanuel Vadot at24c02: eeprom@56 { 157*01950c46SEmmanuel Vadot compatible = "nxp,se97b", "atmel,24c02"; 158f126890aSEmmanuel Vadot reg = <0x56>; 159f126890aSEmmanuel Vadot pagesize = <16>; 160*01950c46SEmmanuel Vadot vcc-supply = <&vgen4_reg>; 161f126890aSEmmanuel Vadot status = "okay"; 162f126890aSEmmanuel Vadot }; 163f126890aSEmmanuel Vadot 164f126890aSEmmanuel Vadot ds1339: rtc@68 { 165f126890aSEmmanuel Vadot compatible = "dallas,ds1339"; 166f126890aSEmmanuel Vadot reg = <0x68>; 167f126890aSEmmanuel Vadot }; 168f126890aSEmmanuel Vadot}; 169f126890aSEmmanuel Vadot 170f126890aSEmmanuel Vadot&iomuxc { 171f126890aSEmmanuel Vadot pinctrl_i2c1: i2c1grp { 172*01950c46SEmmanuel Vadot fsl,pins = 173*01950c46SEmmanuel Vadot <MX7D_PAD_I2C1_SDA__I2C1_SDA 0x40000078>, 174*01950c46SEmmanuel Vadot <MX7D_PAD_I2C1_SCL__I2C1_SCL 0x40000078>; 175*01950c46SEmmanuel Vadot }; 176*01950c46SEmmanuel Vadot 177*01950c46SEmmanuel Vadot pinctrl_i2c1_recovery: i2c1recoverygrp { 178*01950c46SEmmanuel Vadot fsl,pins = 179*01950c46SEmmanuel Vadot <MX7D_PAD_I2C1_SDA__GPIO4_IO9 0x40000078>, 180*01950c46SEmmanuel Vadot <MX7D_PAD_I2C1_SCL__GPIO4_IO8 0x40000078>; 181f126890aSEmmanuel Vadot }; 182f126890aSEmmanuel Vadot 183f126890aSEmmanuel Vadot pinctrl_pmic1: pmic1grp { 184*01950c46SEmmanuel Vadot fsl,pins = 185*01950c46SEmmanuel Vadot <MX7D_PAD_SD2_RESET_B__GPIO5_IO11 0x4000005C>; 186f126890aSEmmanuel Vadot }; 187f126890aSEmmanuel Vadot 188f126890aSEmmanuel Vadot pinctrl_qspi: qspigrp { 189*01950c46SEmmanuel Vadot fsl,pins = 190*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA00__QSPI_A_DATA0 0x5A>, 191*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA01__QSPI_A_DATA1 0x5A>, 192*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA02__QSPI_A_DATA2 0x5A>, 193*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA03__QSPI_A_DATA3 0x5A>, 194*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA05__QSPI_A_SCLK 0x11>, 195*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA06__QSPI_A_SS0_B 0x54>, 196*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA07__QSPI_A_SS1_B 0x54>; 197f126890aSEmmanuel Vadot }; 198f126890aSEmmanuel Vadot 199f126890aSEmmanuel Vadot pinctrl_qspi_reset: qspi_resetgrp { 200*01950c46SEmmanuel Vadot fsl,pins = 201f126890aSEmmanuel Vadot /* #QSPI_RESET */ 202*01950c46SEmmanuel Vadot <MX7D_PAD_EPDC_DATA04__GPIO2_IO4 0x52>; 203f126890aSEmmanuel Vadot }; 204f126890aSEmmanuel Vadot 205f126890aSEmmanuel Vadot pinctrl_usdhc3: usdhc3grp { 206*01950c46SEmmanuel Vadot fsl,pins = 207*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CMD__SD3_CMD 0x59>, 208*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CLK__SD3_CLK 0x56>, 209*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA0__SD3_DATA0 0x59>, 210*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA1__SD3_DATA1 0x59>, 211*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA2__SD3_DATA2 0x59>, 212*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA3__SD3_DATA3 0x59>, 213*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA4__SD3_DATA4 0x59>, 214*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA5__SD3_DATA5 0x59>, 215*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA6__SD3_DATA6 0x59>, 216*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA7__SD3_DATA7 0x59>, 217*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19>; 218f126890aSEmmanuel Vadot }; 219f126890aSEmmanuel Vadot 220*01950c46SEmmanuel Vadot pinctrl_usdhc3_100mhz: usdhc3_100mhzgrp { 221*01950c46SEmmanuel Vadot fsl,pins = 222*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CMD__SD3_CMD 0x5a>, 223*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CLK__SD3_CLK 0x51>, 224*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5a>, 225*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5a>, 226*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5a>, 227*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5a>, 228*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5a>, 229*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5a>, 230*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5a>, 231*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5a>, 232*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1a>; 233f126890aSEmmanuel Vadot }; 234f126890aSEmmanuel Vadot 235*01950c46SEmmanuel Vadot pinctrl_usdhc3_200mhz: usdhc3_200mhzgrp { 236*01950c46SEmmanuel Vadot fsl,pins = 237*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CMD__SD3_CMD 0x5b>, 238*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_CLK__SD3_CLK 0x51>, 239*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA0__SD3_DATA0 0x5b>, 240*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA1__SD3_DATA1 0x5b>, 241*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA2__SD3_DATA2 0x5b>, 242*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA3__SD3_DATA3 0x5b>, 243*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA4__SD3_DATA4 0x5b>, 244*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA5__SD3_DATA5 0x5b>, 245*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA6__SD3_DATA6 0x5b>, 246*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_DATA7__SD3_DATA7 0x5b>, 247*01950c46SEmmanuel Vadot <MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1b>; 248f126890aSEmmanuel Vadot }; 249f126890aSEmmanuel Vadot}; 250f126890aSEmmanuel Vadot 251f126890aSEmmanuel Vadot&iomuxc_lpsr { 252f126890aSEmmanuel Vadot pinctrl_wdog1: wdog1grp { 253*01950c46SEmmanuel Vadot fsl,pins = 254*01950c46SEmmanuel Vadot <MX7D_PAD_LPSR_GPIO1_IO00__WDOG1_WDOG_B 0x30>; 255f126890aSEmmanuel Vadot }; 256f126890aSEmmanuel Vadot}; 257f126890aSEmmanuel Vadot 258f126890aSEmmanuel Vadot&qspi { 259f126890aSEmmanuel Vadot pinctrl-names = "default"; 260f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_qspi &pinctrl_qspi_reset>; 261f126890aSEmmanuel Vadot status = "okay"; 262f126890aSEmmanuel Vadot 263f126890aSEmmanuel Vadot flash0: flash@0 { 264f126890aSEmmanuel Vadot compatible = "jedec,spi-nor"; 265f126890aSEmmanuel Vadot reg = <0>; 266f126890aSEmmanuel Vadot spi-max-frequency = <29000000>; 267f126890aSEmmanuel Vadot spi-rx-bus-width = <4>; 268f126890aSEmmanuel Vadot spi-tx-bus-width = <4>; 269f126890aSEmmanuel Vadot }; 270f126890aSEmmanuel Vadot}; 271f126890aSEmmanuel Vadot 272f126890aSEmmanuel Vadot&usdhc3 { 273f126890aSEmmanuel Vadot pinctrl-names = "default", "state_100mhz", "state_200mhz"; 274f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usdhc3>; 275f126890aSEmmanuel Vadot pinctrl-1 = <&pinctrl_usdhc3_100mhz>; 276f126890aSEmmanuel Vadot pinctrl-2 = <&pinctrl_usdhc3_200mhz>; 277f126890aSEmmanuel Vadot assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>; 278f126890aSEmmanuel Vadot assigned-clock-rates = <400000000>; 279f126890aSEmmanuel Vadot bus-width = <8>; 280f126890aSEmmanuel Vadot non-removable; 281*01950c46SEmmanuel Vadot no-sd; 282*01950c46SEmmanuel Vadot no-sdio; 283f126890aSEmmanuel Vadot vmmc-supply = <&vgen4_reg>; 284f126890aSEmmanuel Vadot vqmmc-supply = <&sw2_reg>; 285f126890aSEmmanuel Vadot status = "okay"; 286f126890aSEmmanuel Vadot}; 287f126890aSEmmanuel Vadot 288f126890aSEmmanuel Vadot&wdog1 { 289f126890aSEmmanuel Vadot pinctrl-names = "default"; 290f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_wdog1>; 291f126890aSEmmanuel Vadot /* 292f126890aSEmmanuel Vadot * Errata e10574: 293f126890aSEmmanuel Vadot * WDOG reset needs to run with WDOG_RESET_B signal enabled. 294f126890aSEmmanuel Vadot * X1-51 (WDOG1#) signal needs carrier board handling to reset 295f126890aSEmmanuel Vadot * TQMa7 on X1-22 (RESET_IN#). 296f126890aSEmmanuel Vadot */ 297f126890aSEmmanuel Vadot fsl,ext-reset-output; 298f126890aSEmmanuel Vadot status = "okay"; 299f126890aSEmmanuel Vadot}; 300