1// SPDX-License-Identifier: (GPL-2.0-or-later OR X11) 2/* 3 * Copyright 2018-2023 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 * D-82229 Seefeld, Germany. 5 * Author: Alexander Stein 6 */ 7 8/ { 9 memory@80000000 { 10 device_type = "memory"; 11 reg = <0x00000000 0x80000000 0 0x40000000>; 12 }; 13 14 reg_1v8: regulator-1v8 { 15 compatible = "regulator-fixed"; 16 regulator-name = "V_1V8"; 17 regulator-min-microvolt = <1800000>; 18 regulator-max-microvolt = <1800000>; 19 }; 20 21 reg_3v3: regulator-3v3 { 22 compatible = "regulator-fixed"; 23 regulator-name = "V_3V3"; 24 regulator-min-microvolt = <3300000>; 25 regulator-max-microvolt = <3300000>; 26 }; 27 28 reserved-memory { 29 #address-cells = <2>; 30 #size-cells = <2>; 31 ranges; 32 33 /* 34 * global autoconfigured region for contiguous allocations 35 * must not exceed memory size and region 36 */ 37 linux,cma { 38 compatible = "shared-dma-pool"; 39 reusable; 40 size = <0 0x20000000>; 41 alloc-ranges = <0 0x96000000 0 0x30000000>; 42 linux,cma-default; 43 }; 44 }; 45}; 46 47/* TQMa8Xx only uses industrial grade, reduce trip points accordingly */ 48&cpu_alert0 { 49 temperature = <95000>; 50}; 51 52&cpu_crit0 { 53 temperature = <100000>; 54}; 55/* end of temperature grade adjustments */ 56 57&flexspi0 { 58 pinctrl-names = "default"; 59 pinctrl-0 = <&pinctrl_flexspi0>; 60 status = "okay"; 61 62 flash0: flash@0 { 63 reg = <0>; 64 compatible = "jedec,spi-nor"; 65 spi-max-frequency = <66000000>; 66 spi-tx-bus-width = <1>; 67 spi-rx-bus-width = <4>; 68 vcc-supply = <®_1v8>; 69 70 partitions { 71 compatible = "fixed-partitions"; 72 #address-cells = <1>; 73 #size-cells = <1>; 74 }; 75 }; 76}; 77 78&i2c1 { 79 #address-cells = <1>; 80 #size-cells = <0>; 81 clock-frequency = <100000>; 82 pinctrl-names = "default", "gpio"; 83 pinctrl-0 = <&pinctrl_lpi2c1>; 84 pinctrl-1 = <&pinctrl_lpi2c1gpio>; 85 scl-gpios = <&lsio_gpio1 27 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 86 sda-gpios = <&lsio_gpio1 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 87 status = "okay"; 88 89 se97: temperature-sensor@1b { 90 compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 91 reg = <0x1b>; 92 }; 93 94 pcf85063: rtc@51 { 95 compatible = "nxp,pcf85063a"; 96 reg = <0x51>; 97 quartz-load-femtofarads = <7000>; 98 }; 99 100 at24c02: eeprom@53 { 101 compatible = "nxp,se97b", "atmel,24c02"; 102 reg = <0x53>; 103 pagesize = <16>; 104 read-only; 105 vcc-supply = <®_3v3>; 106 }; 107 108 m24c64: eeprom@57 { 109 compatible = "atmel,24c64"; 110 reg = <0x57>; 111 pagesize = <32>; 112 vcc-supply = <®_3v3>; 113 }; 114}; 115 116&jpegdec { 117 status = "okay"; 118}; 119 120&jpegenc { 121 status = "okay"; 122}; 123 124 125&mu_m0 { 126 status = "okay"; 127}; 128 129&mu1_m0 { 130 status = "okay"; 131}; 132 133&thermal_zones { 134 pmic_thermal: pmic-thermal { 135 polling-delay-passive = <250>; 136 polling-delay = <2000>; 137 thermal-sensors = <&tsens IMX_SC_R_PMIC_0>; 138 139 trips { 140 pmic_alert0: trip0 { 141 temperature = <110000>; 142 hysteresis = <2000>; 143 type = "passive"; 144 }; 145 146 pmic_crit0: trip1 { 147 temperature = <125000>; 148 hysteresis = <2000>; 149 type = "critical"; 150 }; 151 }; 152 153 cooling-maps { 154 map0 { 155 trip = <&pmic_alert0>; 156 cooling-device = 157 <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 158 <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 159 <&A35_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 160 <&A35_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 161 }; 162 }; 163 }; 164}; 165 166&usdhc1 { 167 pinctrl-names = "default", "state_100mhz", "state_200mhz"; 168 pinctrl-0 = <&pinctrl_usdhc1>; 169 pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 170 pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 171 vqmmc-supply = <®_1v8>; 172 vmmc-supply = <®_3v3>; 173 bus-width = <8>; 174 non-removable; 175 no-sdio; 176 no-sd; 177 status = "okay"; 178}; 179 180&vpu { 181 compatible = "nxp,imx8qxp-vpu"; 182 status = "okay"; 183}; 184 185&vpu_core0 { 186 memory-region = <&decoder_boot>, <&decoder_rpc>; 187 status = "okay"; 188}; 189 190&vpu_core1 { 191 memory-region = <&encoder_boot>, <&encoder_rpc>; 192 status = "okay"; 193}; 194 195&iomuxc { 196 pinctrl_flexspi0: flexspi0grp { 197 fsl,pins = < 198 IMX8QXP_QSPI0A_DATA0_LSIO_QSPI0A_DATA0 0x0600004d 199 IMX8QXP_QSPI0A_DATA1_LSIO_QSPI0A_DATA1 0x0600004d 200 IMX8QXP_QSPI0A_DATA2_LSIO_QSPI0A_DATA2 0x0600004d 201 IMX8QXP_QSPI0A_DATA3_LSIO_QSPI0A_DATA3 0x0600004d 202 IMX8QXP_QSPI0A_DQS_LSIO_QSPI0A_DQS 0x0600004d 203 IMX8QXP_QSPI0A_SS0_B_LSIO_QSPI0A_SS0_B 0x0600004d 204 IMX8QXP_QSPI0A_SCLK_LSIO_QSPI0A_SCLK 0x0600004d 205 IMX8QXP_QSPI0B_SCLK_LSIO_QSPI0B_SCLK 0x0600004d 206 IMX8QXP_QSPI0B_DATA0_LSIO_QSPI0B_DATA0 0x0600004d 207 IMX8QXP_QSPI0B_DATA1_LSIO_QSPI0B_DATA1 0x0600004d 208 IMX8QXP_QSPI0B_DATA2_LSIO_QSPI0B_DATA2 0x0600004d 209 IMX8QXP_QSPI0B_DATA3_LSIO_QSPI0B_DATA3 0x0600004d 210 IMX8QXP_QSPI0B_DQS_LSIO_QSPI0B_DQS 0x0600004d 211 IMX8QXP_QSPI0B_SS0_B_LSIO_QSPI0B_SS0_B 0x0600004d 212 IMX8QXP_QSPI0B_SS1_B_LSIO_QSPI0B_SS1_B 0x0600004d 213 >; 214 }; 215 216 pinctrl_lpi2c1: lpi2c1grp { 217 fsl,pins = < 218 IMX8QXP_MIPI_DSI0_GPIO0_00_ADMA_I2C1_SCL 0x06000021 219 IMX8QXP_MIPI_DSI0_GPIO0_01_ADMA_I2C1_SDA 0x06000021 220 >; 221 }; 222 223 pinctrl_lpi2c1gpio: lpi2c1gpiogrp { 224 fsl,pins = < 225 IMX8QXP_MIPI_DSI0_GPIO0_00_LSIO_GPIO1_IO27 0x06000021 226 IMX8QXP_MIPI_DSI0_GPIO0_01_LSIO_GPIO1_IO28 0x06000021 227 >; 228 }; 229 230 pinctrl_usdhc1: usdhc1grp { 231 fsl,pins = < 232 IMX8QXP_EMMC0_CLK_CONN_EMMC0_CLK 0x06000041 233 IMX8QXP_EMMC0_CMD_CONN_EMMC0_CMD 0x00000021 234 IMX8QXP_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000021 235 IMX8QXP_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000021 236 IMX8QXP_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000021 237 IMX8QXP_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000021 238 IMX8QXP_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000021 239 IMX8QXP_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000021 240 IMX8QXP_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000021 241 IMX8QXP_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000021 242 IMX8QXP_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000041 243 >; 244 }; 245 246 pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 247 fsl,pins = < 248 IMX8QXP_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040 249 IMX8QXP_EMMC0_CMD_CONN_EMMC0_CMD 0x00000020 250 IMX8QXP_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000020 251 IMX8QXP_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000020 252 IMX8QXP_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000020 253 IMX8QXP_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000020 254 IMX8QXP_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000020 255 IMX8QXP_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000020 256 IMX8QXP_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000020 257 IMX8QXP_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000020 258 IMX8QXP_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000040 259 >; 260 }; 261 262 pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 263 fsl,pins = < 264 IMX8QXP_EMMC0_CLK_CONN_EMMC0_CLK 0x06000040 265 IMX8QXP_EMMC0_CMD_CONN_EMMC0_CMD 0x00000020 266 IMX8QXP_EMMC0_DATA0_CONN_EMMC0_DATA0 0x00000020 267 IMX8QXP_EMMC0_DATA1_CONN_EMMC0_DATA1 0x00000020 268 IMX8QXP_EMMC0_DATA2_CONN_EMMC0_DATA2 0x00000020 269 IMX8QXP_EMMC0_DATA3_CONN_EMMC0_DATA3 0x00000020 270 IMX8QXP_EMMC0_DATA4_CONN_EMMC0_DATA4 0x00000020 271 IMX8QXP_EMMC0_DATA5_CONN_EMMC0_DATA5 0x00000020 272 IMX8QXP_EMMC0_DATA6_CONN_EMMC0_DATA6 0x00000020 273 IMX8QXP_EMMC0_DATA7_CONN_EMMC0_DATA7 0x00000020 274 IMX8QXP_EMMC0_STROBE_CONN_EMMC0_STROBE 0x00000040 275 >; 276 }; 277}; 278