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

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/freescale/imx93-tqma9352.dtsi

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ 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.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
  2 /*
  3  * Copyright (c) 2022 TQ-Systems GmbH <linux@ew.tq-group.com>,
  4  * D-82229 Seefeld, Germany.
  5  * Author: Markus Niebel
  6  */
  7 
  8 #include "imx93.dtsi"
  9 
 10 /{
 11         model = "TQ-Systems i.MX93 TQMa93xxLA/TQMa93xxCA SOM";
 12         compatible = "tq,imx93-tqma9352", "fsl,imx93";
 13 
 14         reserved-memory {
 15                 #address-cells = <2>;
 16                 #size-cells = <2>;
 17                 ranges;
 18 
 19                 linux,cma {
 20                         compatible = "shared-dma-pool";
 21                         reusable;
 22                         alloc-ranges = <0 0x80000000 0 0x40000000>;
 23                         size = <0 0x10000000>;
 24                         linux,cma-default;
 25                 };
 26         };
 27 
 28         /* SD2 RST# via PMIC SW_EN */
 29         reg_usdhc2_vmmc: regulator-usdhc2 {
 30                 compatible = "regulator-fixed";
 31                 pinctrl-names = "default";
 32                 pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
 33                 regulator-name = "VSD_3V3";
 34                 regulator-min-microvolt = <3300000>;
 35                 regulator-max-microvolt = <3300000>;
 36                 vin-supply = <&buck4>;
 37                 gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
 38                 enable-active-high;
 39         };
 40 };
 41 
 42 &adc1 {
 43         vref-supply = <&buck5>;
 44 };
 45 
 46 &flexspi1 {
 47         pinctrl-names = "default";
 48         pinctrl-0 = <&pinctrl_flexspi1>;
 49         status = "okay";
 50 
 51         flash0: flash@0 {
 52                 compatible = "jedec,spi-nor";
 53                 reg = <0>;
 54                 /*
 55                  * no DQS, RXCLKSRC internal loop back, max 66 MHz
 56                  * clk framework uses CLK_DIVIDER_ROUND_CLOSEST
 57                  * selected value together with root from
 58                  * IMX93_CLK_SYS_PLL_PFD1 @ 800.000.000 Hz helps to
 59                  * respect the maximum value.
 60                  */
 61                 spi-max-frequency = <62000000>;
 62                 spi-tx-bus-width = <4>;
 63                 spi-rx-bus-width = <4>;
 64 
 65                 partitions {
 66                         compatible = "fixed-partitions";
 67                         #address-cells = <1>;
 68                         #size-cells = <1>;
 69                 };
 70         };
 71 };
 72 
 73 &gpio1 {
 74         pmic-irq-hog {
 75                 gpio-hog;
 76                 gpios = <3 GPIO_ACTIVE_LOW>;
 77                 input;
 78                 line-name = "PMIC_IRQ#";
 79         };
 80 };
 81 
 82 &lpi2c1 {
 83         clock-frequency = <400000>;
 84         pinctrl-names = "default", "sleep";
 85         pinctrl-0 = <&pinctrl_lpi2c1>;
 86         pinctrl-1 = <&pinctrl_lpi2c1>;
 87         status = "okay";
 88 
 89         se97_som: temperature-sensor@1b {
 90                 compatible = "nxp,se97b", "jedec,jc-42.4-temp";
 91                 reg = <0x1b>;
 92         };
 93 
 94         pca9451a: pmic@25 {
 95                 compatible = "nxp,pca9451a";
 96                 reg = <0x25>;
 97                 pinctrl-names = "default";
 98                 pinctrl-0 = <&pinctrl_pca9451>;
 99                 interrupt-parent = <&gpio1>;
100                 interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
101 
102                 regulators {
103                         /* V_0V8_SOC - hw developer guide: 0.75 .. 0.9 */
104                         buck1: BUCK1 {
105                                 regulator-name = "BUCK1";
106                                 regulator-min-microvolt = <750000>;
107                                 regulator-max-microvolt = <900000>;
108                                 regulator-boot-on;
109                                 regulator-always-on;
110                                 regulator-ramp-delay = <3125>;
111                         };
112 
113                         /* V_DDRQ - 1.1 LPDDR4 or 0.6 LPDDR4X */
114                         buck2: BUCK2 {
115                                 regulator-name = "BUCK2";
116                                 regulator-min-microvolt = <600000>;
117                                 regulator-max-microvolt = <1100000>;
118                                 regulator-boot-on;
119                                 regulator-always-on;
120                                 regulator-ramp-delay = <3125>;
121                         };
122 
123                         /* V_3V3 - EEPROM, RTC, ... */
124                         buck4: BUCK4 {
125                                 regulator-name = "BUCK4";
126                                 regulator-min-microvolt = <3300000>;
127                                 regulator-max-microvolt = <3300000>;
128                                 regulator-boot-on;
129                                 regulator-always-on;
130                         };
131 
132                         /* V_1V8 - SPI NOR, eMMC, RAM VDD1... */
133                         buck5: BUCK5 {
134                                 regulator-name = "BUCK5";
135                                 regulator-min-microvolt = <1800000>;
136                                 regulator-max-microvolt = <1800000>;
137                                 regulator-boot-on;
138                                 regulator-always-on;
139                         };
140 
141                         /* V_1V1 - RAM VDD2*/
142                         buck6: BUCK6 {
143                                 regulator-name = "BUCK6";
144                                 regulator-min-microvolt = <1100000>;
145                                 regulator-max-microvolt = <1100000>;
146                                 regulator-boot-on;
147                                 regulator-always-on;
148                         };
149 
150                         /* V_1V8_BBSM, fix 1.8 */
151                         ldo1: LDO1 {
152                                 regulator-name = "LDO1";
153                                 regulator-min-microvolt = <1800000>;
154                                 regulator-max-microvolt = <1800000>;
155                                 regulator-boot-on;
156                                 regulator-always-on;
157                         };
158 
159                         /* V_0V8_ANA */
160                         ldo4: LDO4 {
161                                 regulator-name = "LDO4";
162                                 regulator-min-microvolt = <800000>;
163                                 regulator-max-microvolt = <800000>;
164                                 regulator-boot-on;
165                                 regulator-always-on;
166                         };
167 
168                         /* V_SD2 - 3.3/1.8V USDHC2 io Voltage */
169                         ldo5: LDO5 {
170                                 regulator-name = "LDO5";
171                                 regulator-min-microvolt = <1800000>;
172                                 regulator-max-microvolt = <3300000>;
173                                 regulator-boot-on;
174                                 regulator-always-on;
175                         };
176                 };
177         };
178 
179         pcf85063: rtc@51 {
180                 compatible = "nxp,pcf85063a";
181                 reg = <0x51>;
182                 quartz-load-femtofarads = <7000>;
183         };
184 
185         eeprom0: eeprom@53 {
186                 compatible = "nxp,se97b", "atmel,24c02";
187                 reg = <0x53>;
188                 pagesize = <16>;
189                 read-only;
190                 vcc-supply = <&buck4>;
191         };
192 
193         eeprom1: eeprom@57 {
194                 compatible = "atmel,24c64";
195                 reg = <0x57>;
196                 pagesize = <32>;
197                 vcc-supply = <&buck4>;
198         };
199 
200         /* protectable identification memory (part of M24C64-D @57) */
201         eeprom@5f {
202                 compatible = "atmel,24c64d-wl";
203                 reg = <0x5f>;
204                 vcc-supply = <&buck4>;
205         };
206 
207         imu@6a {
208                 compatible = "st,ism330dhcx";
209                 reg = <0x6a>;
210                 vdd-supply = <&buck4>;
211                 vddio-supply = <&buck4>;
212         };
213 };
214 
215 &usdhc1 {
216         pinctrl-names = "default", "state_100mhz", "state_200mhz";
217         pinctrl-0 = <&pinctrl_usdhc1>;
218         pinctrl-1 = <&pinctrl_usdhc1>;
219         pinctrl-2 = <&pinctrl_usdhc1>;
220         vmmc-supply = <&buck4>;
221         vqmmc-supply = <&buck5>;
222         bus-width = <8>;
223         non-removable;
224         no-sdio;
225         no-sd;
226         status = "okay";
227 };
228 
229 &wdog3 {
230         pinctrl-names = "default";
231         pinctrl-0 = <&pinctrl_wdog>;
232         fsl,ext-reset-output;
233         status = "okay";
234 };
235 
236 &iomuxc {
237         pinctrl_flexspi1: flexspi1grp {
238                 fsl,pins = <
239                         /* FSEL 3  | DSE X6 */
240                         MX93_PAD_SD3_CMD__FLEXSPI1_A_SS0_B      0x01fe
241                         MX93_PAD_SD3_CLK__FLEXSPI1_A_SCLK       0x01fe
242                         /* HYS | PU | FSEL 3  | DSE X6 */
243                         MX93_PAD_SD3_DATA0__FLEXSPI1_A_DATA00   0x13fe
244                         MX93_PAD_SD3_DATA1__FLEXSPI1_A_DATA01   0x13fe
245                         /* HYS | FSEL 3  | DSE X6 (external PU) */
246                         MX93_PAD_SD3_DATA2__FLEXSPI1_A_DATA02   0x11fe
247                         MX93_PAD_SD3_DATA3__FLEXSPI1_A_DATA03   0x11fe
248                 >;
249         };
250 
251         pinctrl_lpi2c1: lpi2c1grp {
252                 fsl,pins = <
253                         /* SION | OD | FSEL 3 | DSE X4 */
254                         MX93_PAD_I2C1_SCL__LPI2C1_SCL           0x4000199e
255                         MX93_PAD_I2C1_SDA__LPI2C1_SDA           0x4000199e
256                 >;
257         };
258 
259         pinctrl_pca9451: pca9451grp {
260                 fsl,pins = <
261                         /* HYS | PU */
262                         MX93_PAD_I2C2_SDA__GPIO1_IO03           0x1200
263                 >;
264         };
265 
266         pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
267                 fsl,pins = <
268                         /* FSEL 2 | DSE X2 */
269                         MX93_PAD_SD2_RESET_B__GPIO3_IO07        0x106
270                 >;
271         };
272 
273         /* enable SION for data and cmd pad due to ERR052021 */
274         pinctrl_usdhc1: usdhc1grp {
275                 fsl,pins = <
276                         /* PD | FSEL 3 | DSE X5 */
277                         MX93_PAD_SD1_CLK__USDHC1_CLK            0x5be
278                         /* HYS | FSEL 0 | no drive */
279                         MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x1000
280                         /* HYS | FSEL 3 | X5 */
281                         MX93_PAD_SD1_CMD__USDHC1_CMD            0x400011be
282                         /* HYS | FSEL 3 | X4 */
283                         MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x4000119e
284                         MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x4000119e
285                         MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x4000119e
286                         MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x4000119e
287                         MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x4000119e
288                         MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x4000119e
289                         MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x4000119e
290                         MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x4000119e
291                 >;
292         };
293 
294         pinctrl_wdog: wdoggrp {
295                 fsl,pins = <
296                         /* PU | FSEL 1 | DSE X4 */
297                         MX93_PAD_WDOG_ANY__WDOG1_WDOG_ANY       0x31e
298                 >;
299         };
300 };

~ [ 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