~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/freescale/imx8mq-tqma8mq.dtsi

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
  2 /*
  3  * Copyright 2019-2021 TQ-Systems GmbH
  4  */
  5 
  6 #include "imx8mq.dtsi"
  7 
  8 / {
  9         model = "TQ-Systems GmbH i.MX8MQ TQMa8MQ";
 10         compatible = "tq,imx8mq-tqma8mq", "fsl,imx8mq";
 11 
 12         memory@40000000 {
 13                 device_type = "memory";
 14                 /*  our minimum RAM config will be 1024 MiB */
 15                 reg = <0x00000000 0x40000000 0 0x40000000>;
 16         };
 17 
 18         /* e-MMC IO, needed for HS modes */
 19         reg_vcc1v8: regulator-vcc1v8 {
 20                 compatible = "regulator-fixed";
 21                 regulator-name = "TQMA8MX_VCC1V8";
 22                 regulator-min-microvolt = <1800000>;
 23                 regulator-max-microvolt = <1800000>;
 24         };
 25 
 26         reg_vcc3v3: regulator-vcc3v3 {
 27                 compatible = "regulator-fixed";
 28                 regulator-name = "TQMA8MX_VCC3V3";
 29                 regulator-min-microvolt = <3300000>;
 30                 regulator-max-microvolt = <3300000>;
 31         };
 32 
 33         reg_vdd_arm: regulator-vdd-arm {
 34                 compatible = "regulator-gpio";
 35                 pinctrl-names = "default";
 36                 pinctrl-0 = <&pinctrl_dvfs>;
 37                 regulator-min-microvolt = <900000>;
 38                 regulator-max-microvolt = <1000000>;
 39                 regulator-name = "TQMa8Mx_DVFS";
 40                 regulator-type = "voltage";
 41                 regulator-settling-time-us = <150000>;
 42                 gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
 43                 states = <900000 0x1 1000000 0x0>;
 44         };
 45 
 46         reserved-memory {
 47                 #address-cells = <2>;
 48                 #size-cells = <2>;
 49                 ranges;
 50 
 51                 /* global autoconfigured region for contiguous allocations */
 52                 linux,cma {
 53                         compatible = "shared-dma-pool";
 54                         reusable;
 55                         /* 640 MiB */
 56                         size = <0 0x28000000>;
 57                         /*  1024 - 128 MiB, our minimum RAM config will be 1024 MiB */
 58                         alloc-ranges = <0 0x40000000 0 0x78000000>;
 59                         linux,cma-default;
 60                 };
 61         };
 62 };
 63 
 64 &A53_0 {
 65         cpu-supply = <&reg_vdd_arm>;
 66 };
 67 
 68 &A53_1 {
 69         cpu-supply = <&reg_vdd_arm>;
 70 };
 71 
 72 &A53_2 {
 73         cpu-supply = <&reg_vdd_arm>;
 74 };
 75 
 76 &A53_3 {
 77         cpu-supply = <&reg_vdd_arm>;
 78 };
 79 
 80 &gpu {
 81         status = "okay";
 82 };
 83 
 84 &pgc_gpu {
 85         power-supply = <&sw1a_reg>;
 86 };
 87 
 88 &pgc_vpu {
 89         power-supply = <&sw1c_reg>;
 90 };
 91 
 92 &i2c1 {
 93         clock-frequency = <100000>;
 94         pinctrl-names = "default", "gpio";
 95         pinctrl-0 = <&pinctrl_i2c1>;
 96         pinctrl-1 = <&pinctrl_i2c1_gpio>;
 97         scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 98         sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
 99         status = "okay";
100 
101         pfuze100: pmic@8 {
102                 compatible = "fsl,pfuze100";
103                 fsl,pfuze-support-disable-sw;
104                 reg = <0x8>;
105 
106                 regulators {
107                         /* VDD_GPU */
108                         sw1a_reg: sw1ab {
109                                 regulator-min-microvolt = <825000>;
110                                 regulator-max-microvolt = <1100000>;
111                         };
112 
113                         /* VDD_VPU */
114                         sw1c_reg: sw1c {
115                                 regulator-min-microvolt = <825000>;
116                                 regulator-max-microvolt = <1100000>;
117                         };
118 
119                         /* NVCC_DRAM */
120                         sw2_reg: sw2 {
121                                 regulator-min-microvolt = <1100000>;
122                                 regulator-max-microvolt = <1100000>;
123                                 regulator-always-on;
124                         };
125 
126                         /* VDD_DRAM */
127                         sw3a_reg: sw3ab {
128                                 regulator-min-microvolt = <825000>;
129                                 regulator-max-microvolt = <1100000>;
130                                 regulator-always-on;
131                         };
132 
133                         /* 1.8 V for QSPI NOR, e-MMC IO, must not be changed */
134                         nvcc_1v8_reg: sw4 {
135                                 regulator-min-microvolt = <1800000>;
136                                 regulator-max-microvolt = <1800000>;
137                                 regulator-always-on;
138                         };
139 
140                         swbst_reg: swbst {
141                                 regulator-min-microvolt = <5000000>;
142                                 regulator-max-microvolt = <5150000>;
143                         };
144 
145                         snvs_reg: vsnvs {
146                                 regulator-min-microvolt = <1000000>;
147                                 regulator-max-microvolt = <3000000>;
148                                 regulator-always-on;
149                         };
150 
151                         vref_reg: vrefddr {
152                                 regulator-always-on;
153                         };
154 
155                         /* not used */
156                         vgen1_reg: vgen1 {
157                                 regulator-min-microvolt = <800000>;
158                                 regulator-max-microvolt = <1550000>;
159                         };
160 
161                         /* VDD_PHY_0V9 */
162                         vgen2_reg: vgen2 {
163                                 regulator-min-microvolt = <850000>;
164                                 regulator-max-microvolt = <975000>;
165                                 regulator-always-on;
166                         };
167 
168                         /* VDD_PHY_1V8 */
169                         vgen3_reg: vgen3 {
170                                 regulator-min-microvolt = <1675000>;
171                                 regulator-max-microvolt = <1975000>;
172                                 regulator-always-on;
173                         };
174 
175                         /* VDDA_1V8 */
176                         vgen4_reg: vgen4 {
177                                 regulator-min-microvolt = <1625000>;
178                                 regulator-max-microvolt = <1875000>;
179                                 regulator-always-on;
180                         };
181 
182                         /* VDD_PHY_3V3 */
183                         vgen5_reg: vgen5 {
184                                 regulator-min-microvolt = <3075000>;
185                                 regulator-max-microvolt = <3625000>;
186                                 regulator-always-on;
187                         };
188 
189                         /* not used */
190                         vgen6_reg: vgen6 {
191                                 regulator-min-microvolt = <1800000>;
192                                 regulator-max-microvolt = <3300000>;
193                         };
194                 };
195         };
196 
197         sensor0: temperature-sensor@1b {
198                 compatible = "nxp,se97b", "jedec,jc-42.4-temp";
199                 reg = <0x1b>;
200         };
201 
202         pcf85063: rtc@51 {
203                 compatible = "nxp,pcf85063a";
204                 reg = <0x51>;
205                 pinctrl-names = "default";
206                 pinctrl-0 = <&pinctrl_rtc>;
207                 interrupt-parent = <&gpio1>;
208                 interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
209                 quartz-load-femtofarads = <7000>;
210 
211                 clock {
212                         compatible = "fixed-clock";
213                         #clock-cells = <0>;
214                         clock-frequency = <32768>;
215                 };
216         };
217 
218         eeprom1: eeprom@53 {
219                 compatible = "nxp,se97b", "atmel,24c02";
220                 reg = <0x53>;
221                 pagesize = <16>;
222                 read-only;
223                 vcc-supply = <&reg_vcc3v3>;
224         };
225 
226         eeprom0: eeprom@57 {
227                 compatible = "atmel,24c64";
228                 reg = <0x57>;
229                 pagesize = <32>;
230                 vcc-supply = <&reg_vcc3v3>;
231         };
232 };
233 
234 &pcie0 {
235         /* 3.3V supply, only way to switch on internal 1.8V supply using GPR */
236         vph-supply = <&vgen5_reg>;
237 };
238 
239 &pcie1 {
240         /* 3.3V supply, only way to switch on internal 1.8V supply using GPR */
241         vph-supply = <&vgen5_reg>;
242 };
243 
244 &qspi0 {
245         pinctrl-names = "default";
246         pinctrl-0 = <&pinctrl_qspi>;
247         assigned-clocks = <&clk IMX8MQ_CLK_QSPI>;
248         assigned-clock-parents = <&clk IMX8MQ_SYS1_PLL_266M>;
249         status = "okay";
250 
251         flash0: flash@0 {
252                 compatible = "jedec,spi-nor";
253                 reg = <0>;
254                 spi-max-frequency = <84000000>;
255                 spi-tx-bus-width = <1>;
256                 spi-rx-bus-width = <4>;
257 
258                 partitions {
259                         compatible = "fixed-partitions";
260                         #address-cells = <1>;
261                         #size-cells = <1>;
262                 };
263         };
264 };
265 
266 &usdhc1 {
267         pinctrl-names = "default", "state_100mhz", "state_200mhz";
268         pinctrl-0 = <&pinctrl_usdhc1>;
269         pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
270         pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
271         bus-width = <8>;
272         non-removable;
273         no-sd;
274         no-sdio;
275         vmmc-supply = <&reg_vcc3v3>;
276         vqmmc-supply = <&reg_vcc1v8>;
277         status = "okay";
278 };
279 
280 /* Attention: wdog reset forcing POR needs baseboard support */
281 &wdog1 {
282         status = "okay";
283 };
284 
285 &iomuxc {
286         pinctrl_dvfs: dvfsgrp {
287                 fsl,pins = <MX8MQ_IOMUXC_GPIO1_IO06_GPIO1_IO6   0x16>;
288         };
289 
290         pinctrl_i2c1: i2c1grp {
291                 fsl,pins = <MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL              0x4000007f>,
292                            <MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA              0x4000007f>;
293         };
294 
295         pinctrl_i2c1_gpio: i2c1gpiogrp {
296                 fsl,pins = <MX8MQ_IOMUXC_I2C1_SCL_GPIO5_IO14            0x40000074>,
297                            <MX8MQ_IOMUXC_I2C1_SDA_GPIO5_IO15            0x40000074>;
298         };
299 
300         pinctrl_qspi: qspigrp {
301                 fsl,pins = <MX8MQ_IOMUXC_NAND_ALE_QSPI_A_SCLK           0x97>,
302                            <MX8MQ_IOMUXC_NAND_CE0_B_QSPI_A_SS0_B        0x82>,
303                            <MX8MQ_IOMUXC_NAND_DATA00_QSPI_A_DATA0       0x97>,
304                            <MX8MQ_IOMUXC_NAND_DATA01_QSPI_A_DATA1       0x97>,
305                            <MX8MQ_IOMUXC_NAND_DATA02_QSPI_A_DATA2       0x97>,
306                            <MX8MQ_IOMUXC_NAND_DATA03_QSPI_A_DATA3       0x97>;
307         };
308 
309         pinctrl_rtc: rtcgrp {
310                 fsl,pins = <MX8MQ_IOMUXC_GPIO1_IO01_GPIO1_IO1           0x41>;
311         };
312 
313         pinctrl_usdhc1: usdhc1grp {
314                 fsl,pins = <MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK             0x83>,
315                            <MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD             0xc3>,
316                            <MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0         0xc3>,
317                            <MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1         0xc3>,
318                            <MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2         0xc3>,
319                            <MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3         0xc3>,
320                            <MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4         0xc3>,
321                            <MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5         0xc3>,
322                            <MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6         0xc3>,
323                            <MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7         0xc3>,
324                            <MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE       0x83>,
325                            <MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B     0xc1>;
326         };
327 
328         pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
329                 fsl,pins = <MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK             0x85>,
330                            <MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD             0xc5>,
331                            <MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0         0xc5>,
332                            <MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1         0xc5>,
333                            <MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2         0xc5>,
334                            <MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3         0xc5>,
335                            <MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4         0xc5>,
336                            <MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5         0xc5>,
337                            <MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6         0xc5>,
338                            <MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7         0xc5>,
339                            <MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE       0x85>,
340                            <MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B     0xc1>;
341         };
342 
343         pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
344                 fsl,pins = <MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK             0x87>,
345                            <MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD             0xc7>,
346                            <MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0         0xc7>,
347                            <MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1         0xc7>,
348                            <MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2         0xc7>,
349                            <MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3         0xc7>,
350                            <MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4         0xc7>,
351                            <MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5         0xc7>,
352                            <MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6         0xc7>,
353                            <MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7         0xc7>,
354                            <MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE       0x87>,
355                            <MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B     0xc1>;
356         };
357 
358         pinctrl_wdog: wdoggrp {
359                 fsl,pins = <MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B        0xc6>;
360         };
361 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php