162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 OR X11 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright 2017 (C) Priit Laes <plaes@plaes.org> 462306a36Sopenharmony_ci * Copyright 2018 (C) Pengutronix, Michael Grzeschik <mgr@pengutronix.de> 562306a36Sopenharmony_ci * Copyright 2019 (C) Pengutronix, Marco Felsch <kernel@pengutronix.de> 662306a36Sopenharmony_ci * 762306a36Sopenharmony_ci * Based on initial work by Nikita Yushchenko <nyushchenko at dev.rtsoft.ru> 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 1162306a36Sopenharmony_ci#include <dt-bindings/sound/fsl-imx-audmux.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci reg_1p0v_s0: regulator-1p0v-s0 { 1562306a36Sopenharmony_ci compatible = "regulator-fixed"; 1662306a36Sopenharmony_ci regulator-name = "V_1V0_S0"; 1762306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 1862306a36Sopenharmony_ci regulator-max-microvolt = <1000000>; 1962306a36Sopenharmony_ci regulator-always-on; 2062306a36Sopenharmony_ci regulator-boot-on; 2162306a36Sopenharmony_ci vin-supply = <®_smarc_suppy>; 2262306a36Sopenharmony_ci }; 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci reg_1p35v_vcoredig_s5: regulator-1p35v-vcoredig-s5 { 2562306a36Sopenharmony_ci compatible = "regulator-fixed"; 2662306a36Sopenharmony_ci regulator-name = "V_1V35_VCOREDIG_S5"; 2762306a36Sopenharmony_ci regulator-min-microvolt = <1350000>; 2862306a36Sopenharmony_ci regulator-max-microvolt = <1350000>; 2962306a36Sopenharmony_ci regulator-always-on; 3062306a36Sopenharmony_ci regulator-boot-on; 3162306a36Sopenharmony_ci vin-supply = <®_3p3v_s5>; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci reg_1p8v_s5: regulator-1p8v-s5 { 3562306a36Sopenharmony_ci compatible = "regulator-fixed"; 3662306a36Sopenharmony_ci regulator-name = "V_1V8_S5"; 3762306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 3862306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 3962306a36Sopenharmony_ci regulator-always-on; 4062306a36Sopenharmony_ci regulator-boot-on; 4162306a36Sopenharmony_ci vin-supply = <®_3p3v_s5>; 4262306a36Sopenharmony_ci }; 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci reg_3p3v_s0: regulator-3p3v-s0 { 4562306a36Sopenharmony_ci compatible = "regulator-fixed"; 4662306a36Sopenharmony_ci regulator-name = "V_3V3_S0"; 4762306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 4862306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 4962306a36Sopenharmony_ci regulator-always-on; 5062306a36Sopenharmony_ci regulator-boot-on; 5162306a36Sopenharmony_ci vin-supply = <®_3p3v_s5>; 5262306a36Sopenharmony_ci }; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci reg_3p3v_s5: regulator-3p3v-s5 { 5562306a36Sopenharmony_ci compatible = "regulator-fixed"; 5662306a36Sopenharmony_ci regulator-name = "V_3V3_S5"; 5762306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 5862306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 5962306a36Sopenharmony_ci regulator-always-on; 6062306a36Sopenharmony_ci regulator-boot-on; 6162306a36Sopenharmony_ci vin-supply = <®_smarc_suppy>; 6262306a36Sopenharmony_ci }; 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci reg_smarc_lcdbklt: regulator-smarc-lcdbklt { 6562306a36Sopenharmony_ci compatible = "regulator-fixed"; 6662306a36Sopenharmony_ci pinctrl-names = "default"; 6762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_lcdbklt_en>; 6862306a36Sopenharmony_ci regulator-name = "LCD_BKLT_EN"; 6962306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 7062306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 7162306a36Sopenharmony_ci gpio = <&gpio1 16 GPIO_ACTIVE_HIGH>; 7262306a36Sopenharmony_ci enable-active-high; 7362306a36Sopenharmony_ci }; 7462306a36Sopenharmony_ci 7562306a36Sopenharmony_ci reg_smarc_lcdvdd: regulator-smarc-lcdvdd { 7662306a36Sopenharmony_ci compatible = "regulator-fixed"; 7762306a36Sopenharmony_ci pinctrl-names = "default"; 7862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_lcdvdd_en>; 7962306a36Sopenharmony_ci regulator-name = "LCD_VDD_EN"; 8062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 8162306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 8262306a36Sopenharmony_ci gpio = <&gpio1 17 GPIO_ACTIVE_HIGH>; 8362306a36Sopenharmony_ci enable-active-high; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci reg_smarc_rtc: regulator-smarc-rtc { 8762306a36Sopenharmony_ci compatible = "regulator-fixed"; 8862306a36Sopenharmony_ci regulator-name = "V_IN_RTC_BATT"; 8962306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 9062306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 9162306a36Sopenharmony_ci regulator-always-on; 9262306a36Sopenharmony_ci regulator-boot-on; 9362306a36Sopenharmony_ci }; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci /* Module supply range can be 3.00V ... 5.25V */ 9662306a36Sopenharmony_ci reg_smarc_suppy: regulator-smarc-supply { 9762306a36Sopenharmony_ci compatible = "regulator-fixed"; 9862306a36Sopenharmony_ci regulator-name = "V_IN_WIDE"; 9962306a36Sopenharmony_ci regulator-min-microvolt = <5000000>; 10062306a36Sopenharmony_ci regulator-max-microvolt = <5000000>; 10162306a36Sopenharmony_ci regulator-always-on; 10262306a36Sopenharmony_ci regulator-boot-on; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci lcd: lcd { 10662306a36Sopenharmony_ci #address-cells = <1>; 10762306a36Sopenharmony_ci #size-cells = <0>; 10862306a36Sopenharmony_ci compatible = "fsl,imx-parallel-display"; 10962306a36Sopenharmony_ci pinctrl-names = "default"; 11062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_lcd>; 11162306a36Sopenharmony_ci status = "disabled"; 11262306a36Sopenharmony_ci 11362306a36Sopenharmony_ci port@0 { 11462306a36Sopenharmony_ci reg = <0>; 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci lcd_in: endpoint { 11762306a36Sopenharmony_ci }; 11862306a36Sopenharmony_ci }; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci port@1 { 12162306a36Sopenharmony_ci reg = <1>; 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ci lcd_out: endpoint { 12462306a36Sopenharmony_ci }; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci }; 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_ci lcd_backlight: lcd-backlight { 12962306a36Sopenharmony_ci compatible = "pwm-backlight"; 13062306a36Sopenharmony_ci pwms = <&pwm4 0 5000000 0>; 13162306a36Sopenharmony_ci pwm-names = "LCD_BKLT_PWM"; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; 13462306a36Sopenharmony_ci default-brightness-level = <4>; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci power-supply = <®_smarc_lcdbklt>; 13762306a36Sopenharmony_ci status = "disabled"; 13862306a36Sopenharmony_ci }; 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci i2c_intern: i2c-gpio-intern { 14162306a36Sopenharmony_ci compatible = "i2c-gpio"; 14262306a36Sopenharmony_ci pinctrl-names = "default"; 14362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c_gpio_intern>; 14462306a36Sopenharmony_ci sda-gpios = <&gpio1 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 14562306a36Sopenharmony_ci scl-gpios = <&gpio1 30 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 14662306a36Sopenharmony_ci i2c-gpio,delay-us = <2>; /* ~100 kHz */ 14762306a36Sopenharmony_ci #address-cells = <1>; 14862306a36Sopenharmony_ci #size-cells = <0>; 14962306a36Sopenharmony_ci }; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci i2c_lcd: i2c-gpio-lcd { 15262306a36Sopenharmony_ci compatible = "i2c-gpio"; 15362306a36Sopenharmony_ci pinctrl-names = "default"; 15462306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c_gpio_lcd>; 15562306a36Sopenharmony_ci sda-gpios = <&gpio1 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 15662306a36Sopenharmony_ci scl-gpios = <&gpio1 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 15762306a36Sopenharmony_ci i2c-gpio,delay-us = <2>; /* ~100 kHz */ 15862306a36Sopenharmony_ci #address-cells = <1>; 15962306a36Sopenharmony_ci #size-cells = <0>; 16062306a36Sopenharmony_ci status = "disabled"; 16162306a36Sopenharmony_ci }; 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ci i2c_cam: i2c-gpio-cam { 16462306a36Sopenharmony_ci compatible = "i2c-gpio"; 16562306a36Sopenharmony_ci pinctrl-names = "default"; 16662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c_gpio_cam>; 16762306a36Sopenharmony_ci sda-gpios = <&gpio4 10 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 16862306a36Sopenharmony_ci scl-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 16962306a36Sopenharmony_ci i2c-gpio,delay-us = <2>; /* ~100 kHz */ 17062306a36Sopenharmony_ci #address-cells = <1>; 17162306a36Sopenharmony_ci #size-cells = <0>; 17262306a36Sopenharmony_ci status = "disabled"; 17362306a36Sopenharmony_ci }; 17462306a36Sopenharmony_ci}; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci/* I2S0, I2S1 */ 17762306a36Sopenharmony_ci&audmux { 17862306a36Sopenharmony_ci pinctrl-names = "default"; 17962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_audmux>; 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci audmux_ssi1 { 18262306a36Sopenharmony_ci fsl,audmux-port = <MX51_AUDMUX_PORT1_SSI0>; 18362306a36Sopenharmony_ci fsl,port-config = < 18462306a36Sopenharmony_ci (IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT3) | 18562306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) | 18662306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_SYN | 18762306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TFSDIR | 18862306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TCLKDIR) 18962306a36Sopenharmony_ci IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT3) 19062306a36Sopenharmony_ci >; 19162306a36Sopenharmony_ci }; 19262306a36Sopenharmony_ci 19362306a36Sopenharmony_ci audmux_adu3 { 19462306a36Sopenharmony_ci fsl,audmux-port = <MX51_AUDMUX_PORT3>; 19562306a36Sopenharmony_ci fsl,port-config = < 19662306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_SYN 19762306a36Sopenharmony_ci IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT1_SSI0) 19862306a36Sopenharmony_ci >; 19962306a36Sopenharmony_ci }; 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci audmux_ssi2 { 20262306a36Sopenharmony_ci fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; 20362306a36Sopenharmony_ci fsl,port-config = < 20462306a36Sopenharmony_ci (IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT4) | 20562306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT4) | 20662306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_SYN | 20762306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TFSDIR | 20862306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_TCLKDIR) 20962306a36Sopenharmony_ci IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT4) 21062306a36Sopenharmony_ci >; 21162306a36Sopenharmony_ci }; 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ci audmux_adu4 { 21462306a36Sopenharmony_ci fsl,audmux-port = <MX51_AUDMUX_PORT4>; 21562306a36Sopenharmony_ci fsl,port-config = < 21662306a36Sopenharmony_ci IMX_AUDMUX_V2_PTCR_SYN 21762306a36Sopenharmony_ci IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) 21862306a36Sopenharmony_ci >; 21962306a36Sopenharmony_ci }; 22062306a36Sopenharmony_ci}; 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ci/* CAN0 */ 22362306a36Sopenharmony_ci&can1 { 22462306a36Sopenharmony_ci pinctrl-names = "default"; 22562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_flexcan1>; 22662306a36Sopenharmony_ci}; 22762306a36Sopenharmony_ci 22862306a36Sopenharmony_ci/* CAN1 */ 22962306a36Sopenharmony_ci&can2 { 23062306a36Sopenharmony_ci pinctrl-names = "default"; 23162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_flexcan2>; 23262306a36Sopenharmony_ci}; 23362306a36Sopenharmony_ci 23462306a36Sopenharmony_ci/* SPI1 */ 23562306a36Sopenharmony_ci&ecspi2 { 23662306a36Sopenharmony_ci pinctrl-names = "default"; 23762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_ecspi2>; 23862306a36Sopenharmony_ci cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>, 23962306a36Sopenharmony_ci <&gpio2 27 GPIO_ACTIVE_LOW>; 24062306a36Sopenharmony_ci}; 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci/* SPI0 */ 24362306a36Sopenharmony_ci&ecspi4 { 24462306a36Sopenharmony_ci pinctrl-names = "default"; 24562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_ecspi4>; 24662306a36Sopenharmony_ci cs-gpios = <&gpio3 24 GPIO_ACTIVE_LOW>, 24762306a36Sopenharmony_ci <&gpio3 29 GPIO_ACTIVE_LOW>; 24862306a36Sopenharmony_ci status = "okay"; 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ci /* default boot source: workaround #1 for errata ERR006282 */ 25162306a36Sopenharmony_ci smarc_flash: flash@0 { 25262306a36Sopenharmony_ci compatible = "jedec,spi-nor"; 25362306a36Sopenharmony_ci reg = <0>; 25462306a36Sopenharmony_ci spi-max-frequency = <20000000>; 25562306a36Sopenharmony_ci }; 25662306a36Sopenharmony_ci}; 25762306a36Sopenharmony_ci 25862306a36Sopenharmony_ci/* GBE */ 25962306a36Sopenharmony_ci&fec { 26062306a36Sopenharmony_ci pinctrl-names = "default"; 26162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_enet>; 26262306a36Sopenharmony_ci phy-mode = "rgmii"; 26362306a36Sopenharmony_ci phy-handle = <ðphy>; 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci mdio { 26662306a36Sopenharmony_ci #address-cells = <1>; 26762306a36Sopenharmony_ci #size-cells = <0>; 26862306a36Sopenharmony_ci 26962306a36Sopenharmony_ci ethphy: ethernet-phy@1 { 27062306a36Sopenharmony_ci compatible = "ethernet-phy-ieee802.3-c22"; 27162306a36Sopenharmony_ci reg = <1>; 27262306a36Sopenharmony_ci reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; 27362306a36Sopenharmony_ci reset-assert-us = <1000>; 27462306a36Sopenharmony_ci }; 27562306a36Sopenharmony_ci }; 27662306a36Sopenharmony_ci}; 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_ci&hdmi { 27962306a36Sopenharmony_ci ddc-i2c-bus = <&i2c2>; 28062306a36Sopenharmony_ci}; 28162306a36Sopenharmony_ci 28262306a36Sopenharmony_ci&i2c_intern { 28362306a36Sopenharmony_ci pmic@8 { 28462306a36Sopenharmony_ci compatible = "fsl,pfuze100"; 28562306a36Sopenharmony_ci reg = <0x08>; 28662306a36Sopenharmony_ci 28762306a36Sopenharmony_ci regulators { 28862306a36Sopenharmony_ci reg_v_core_s0: sw1ab { 28962306a36Sopenharmony_ci regulator-name = "V_CORE_S0"; 29062306a36Sopenharmony_ci regulator-min-microvolt = <300000>; 29162306a36Sopenharmony_ci regulator-max-microvolt = <1875000>; 29262306a36Sopenharmony_ci regulator-boot-on; 29362306a36Sopenharmony_ci regulator-always-on; 29462306a36Sopenharmony_ci }; 29562306a36Sopenharmony_ci 29662306a36Sopenharmony_ci reg_vddsoc_s0: sw1c { 29762306a36Sopenharmony_ci regulator-name = "V_VDDSOC_S0"; 29862306a36Sopenharmony_ci regulator-min-microvolt = <300000>; 29962306a36Sopenharmony_ci regulator-max-microvolt = <1875000>; 30062306a36Sopenharmony_ci regulator-boot-on; 30162306a36Sopenharmony_ci regulator-always-on; 30262306a36Sopenharmony_ci }; 30362306a36Sopenharmony_ci 30462306a36Sopenharmony_ci reg_3p15v_s0: sw2 { 30562306a36Sopenharmony_ci regulator-name = "V_3V15_S0"; 30662306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 30762306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 30862306a36Sopenharmony_ci regulator-boot-on; 30962306a36Sopenharmony_ci regulator-always-on; 31062306a36Sopenharmony_ci }; 31162306a36Sopenharmony_ci 31262306a36Sopenharmony_ci /* sw3a/b is used in dual mode, but driver does not 31362306a36Sopenharmony_ci * support it. Although, there's no need to control 31462306a36Sopenharmony_ci * DDR power - so just leaving dummy entries for sw3a 31562306a36Sopenharmony_ci * and sw3b for now. 31662306a36Sopenharmony_ci */ 31762306a36Sopenharmony_ci sw3a { 31862306a36Sopenharmony_ci regulator-min-microvolt = <400000>; 31962306a36Sopenharmony_ci regulator-max-microvolt = <1975000>; 32062306a36Sopenharmony_ci regulator-boot-on; 32162306a36Sopenharmony_ci regulator-always-on; 32262306a36Sopenharmony_ci }; 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci sw3b { 32562306a36Sopenharmony_ci regulator-min-microvolt = <400000>; 32662306a36Sopenharmony_ci regulator-max-microvolt = <1975000>; 32762306a36Sopenharmony_ci regulator-boot-on; 32862306a36Sopenharmony_ci regulator-always-on; 32962306a36Sopenharmony_ci }; 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci reg_1p8v_s0: sw4 { 33262306a36Sopenharmony_ci regulator-name = "V_1V8_S0"; 33362306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 33462306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 33562306a36Sopenharmony_ci regulator-boot-on; 33662306a36Sopenharmony_ci regulator-always-on; 33762306a36Sopenharmony_ci }; 33862306a36Sopenharmony_ci 33962306a36Sopenharmony_ci /* Regulator for USB */ 34062306a36Sopenharmony_ci reg_5p0v_s0: swbst { 34162306a36Sopenharmony_ci regulator-name = "V_5V0_S0"; 34262306a36Sopenharmony_ci regulator-min-microvolt = <5000000>; 34362306a36Sopenharmony_ci regulator-max-microvolt = <5150000>; 34462306a36Sopenharmony_ci regulator-boot-on; 34562306a36Sopenharmony_ci }; 34662306a36Sopenharmony_ci 34762306a36Sopenharmony_ci reg_vsnvs: vsnvs { 34862306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 34962306a36Sopenharmony_ci regulator-max-microvolt = <3000000>; 35062306a36Sopenharmony_ci regulator-boot-on; 35162306a36Sopenharmony_ci regulator-always-on; 35262306a36Sopenharmony_ci }; 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_ci reg_vrefddr: vrefddr { 35562306a36Sopenharmony_ci regulator-boot-on; 35662306a36Sopenharmony_ci regulator-always-on; 35762306a36Sopenharmony_ci }; 35862306a36Sopenharmony_ci 35962306a36Sopenharmony_ci /* 36062306a36Sopenharmony_ci * Per schematics, of all VGEN's, only VGEN5 has some 36162306a36Sopenharmony_ci * usage ... but even that - over DNI resistor 36262306a36Sopenharmony_ci */ 36362306a36Sopenharmony_ci vgen1 { 36462306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 36562306a36Sopenharmony_ci regulator-max-microvolt = <1550000>; 36662306a36Sopenharmony_ci }; 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci vgen2 { 36962306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 37062306a36Sopenharmony_ci regulator-max-microvolt = <1550000>; 37162306a36Sopenharmony_ci }; 37262306a36Sopenharmony_ci 37362306a36Sopenharmony_ci vgen3 { 37462306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 37562306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 37662306a36Sopenharmony_ci }; 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ci vgen4 { 37962306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 38062306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 38162306a36Sopenharmony_ci }; 38262306a36Sopenharmony_ci 38362306a36Sopenharmony_ci reg_2p5v_s0: vgen5 { 38462306a36Sopenharmony_ci regulator-name = "V_2V5_S0"; 38562306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 38662306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 38762306a36Sopenharmony_ci }; 38862306a36Sopenharmony_ci 38962306a36Sopenharmony_ci vgen6 { 39062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 39162306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 39262306a36Sopenharmony_ci }; 39362306a36Sopenharmony_ci }; 39462306a36Sopenharmony_ci }; 39562306a36Sopenharmony_ci}; 39662306a36Sopenharmony_ci 39762306a36Sopenharmony_ci/* I2C_GP */ 39862306a36Sopenharmony_ci&i2c1 { 39962306a36Sopenharmony_ci clock-frequency = <375000>; 40062306a36Sopenharmony_ci pinctrl-names = "default"; 40162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c1>; 40262306a36Sopenharmony_ci}; 40362306a36Sopenharmony_ci 40462306a36Sopenharmony_ci/* HDMI_CTRL */ 40562306a36Sopenharmony_ci&i2c2 { 40662306a36Sopenharmony_ci clock-frequency = <100000>; 40762306a36Sopenharmony_ci pinctrl-names = "default"; 40862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c2>; 40962306a36Sopenharmony_ci}; 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci/* I2C_PM */ 41262306a36Sopenharmony_ci&i2c3 { 41362306a36Sopenharmony_ci clock-frequency = <375000>; 41462306a36Sopenharmony_ci pinctrl-names = "default"; 41562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c3>; 41662306a36Sopenharmony_ci status = "okay"; 41762306a36Sopenharmony_ci 41862306a36Sopenharmony_ci smarc_eeprom: eeprom@50 { 41962306a36Sopenharmony_ci compatible = "atmel,24c32"; 42062306a36Sopenharmony_ci reg = <0x50>; 42162306a36Sopenharmony_ci pagesize = <32>; 42262306a36Sopenharmony_ci }; 42362306a36Sopenharmony_ci}; 42462306a36Sopenharmony_ci 42562306a36Sopenharmony_ci&iomuxc { 42662306a36Sopenharmony_ci pinctrl-names = "default"; 42762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_mgmt_gpios &pinctrl_gpio>; 42862306a36Sopenharmony_ci 42962306a36Sopenharmony_ci pinctrl_audmux: audmuxgrp { 43062306a36Sopenharmony_ci fsl,pins = < 43162306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 43262306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x130b0 43362306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 43462306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0 43562306a36Sopenharmony_ci 43662306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT20__AUD4_TXC 0x130b0 43762306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT21__AUD4_TXD 0x130b0 43862306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT22__AUD4_TXFS 0x130b0 43962306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT23__AUD4_RXD 0x130b0 44062306a36Sopenharmony_ci 44162306a36Sopenharmony_ci /* AUDIO MCLK */ 44262306a36Sopenharmony_ci MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x000b0 44362306a36Sopenharmony_ci >; 44462306a36Sopenharmony_ci }; 44562306a36Sopenharmony_ci 44662306a36Sopenharmony_ci pinctrl_ecspi2: ecspi2grp { 44762306a36Sopenharmony_ci fsl,pins = < 44862306a36Sopenharmony_ci MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 44962306a36Sopenharmony_ci MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 45062306a36Sopenharmony_ci MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 45162306a36Sopenharmony_ci 45262306a36Sopenharmony_ci MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x1b0b0 /* CS0 */ 45362306a36Sopenharmony_ci MX6QDL_PAD_EIM_LBA__GPIO2_IO27 0x1b0b0 /* CS1 */ 45462306a36Sopenharmony_ci >; 45562306a36Sopenharmony_ci }; 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_ci pinctrl_ecspi4: ecspi4grp { 45862306a36Sopenharmony_ci fsl,pins = < 45962306a36Sopenharmony_ci MX6QDL_PAD_EIM_D21__ECSPI4_SCLK 0x100b1 46062306a36Sopenharmony_ci MX6QDL_PAD_EIM_D28__ECSPI4_MOSI 0x100b1 46162306a36Sopenharmony_ci MX6QDL_PAD_EIM_D22__ECSPI4_MISO 0x100b1 46262306a36Sopenharmony_ci 46362306a36Sopenharmony_ci /* SPI_IMX_CS2# - connected to internal flash */ 46462306a36Sopenharmony_ci MX6QDL_PAD_EIM_D24__GPIO3_IO24 0x1b0b0 46562306a36Sopenharmony_ci /* SPI_IMX_CS0# - connected to SMARC SPI0_CS0# */ 46662306a36Sopenharmony_ci MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x1b0b0 46762306a36Sopenharmony_ci >; 46862306a36Sopenharmony_ci }; 46962306a36Sopenharmony_ci 47062306a36Sopenharmony_ci pinctrl_flexcan1: flexcan1grp { 47162306a36Sopenharmony_ci fsl,pins = < 47262306a36Sopenharmony_ci MX6QDL_PAD_GPIO_7__FLEXCAN1_TX 0x1b0b0 47362306a36Sopenharmony_ci MX6QDL_PAD_GPIO_8__FLEXCAN1_RX 0x1b0b0 47462306a36Sopenharmony_ci >; 47562306a36Sopenharmony_ci }; 47662306a36Sopenharmony_ci 47762306a36Sopenharmony_ci pinctrl_flexcan2: flexcan2grp { 47862306a36Sopenharmony_ci fsl,pins = < 47962306a36Sopenharmony_ci MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x1b0b0 48062306a36Sopenharmony_ci MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x1b0b0 48162306a36Sopenharmony_ci >; 48262306a36Sopenharmony_ci }; 48362306a36Sopenharmony_ci 48462306a36Sopenharmony_ci pinctrl_gpio: gpiogrp { 48562306a36Sopenharmony_ci fsl,pins = < 48662306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x1b0b0 /* GPIO0 / CAM0_PWR# */ 48762306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x1b0b0 /* GPIO1 / CAM1_PWR# */ 48862306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x1b0b0 /* GPIO2 / CAM0_RST# */ 48962306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA3__GPIO3_IO03 0x1b0b0 /* GPIO3 / CAM1_RST# */ 49062306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0x1b0b0 /* GPIO4 / HDA_RST# */ 49162306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x1b0b0 /* GPIO5 / PWM_OUT */ 49262306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x1b0b0 /* GPIO6 / TACHIN */ 49362306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b0 /* GPIO7 / PCAM_FLD */ 49462306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x1b0b0 /* GPIO8 / CAN0_ERR# */ 49562306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x1b0b0 /* GPIO9 / CAN1_ERR# */ 49662306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x1b0b0 /* GPIO10 */ 49762306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x1b0b0 /* GPIO11 */ 49862306a36Sopenharmony_ci >; 49962306a36Sopenharmony_ci }; 50062306a36Sopenharmony_ci 50162306a36Sopenharmony_ci pinctrl_enet: enetgrp { 50262306a36Sopenharmony_ci fsl,pins = < 50362306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 50462306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 50562306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 50662306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 50762306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 50862306a36Sopenharmony_ci MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 50962306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 51062306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 51162306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 51262306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 51362306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 51462306a36Sopenharmony_ci MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 51562306a36Sopenharmony_ci 51662306a36Sopenharmony_ci MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 51762306a36Sopenharmony_ci MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 51862306a36Sopenharmony_ci MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 51962306a36Sopenharmony_ci MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 /* RST_GBE0_PHY# */ 52062306a36Sopenharmony_ci >; 52162306a36Sopenharmony_ci }; 52262306a36Sopenharmony_ci 52362306a36Sopenharmony_ci pinctrl_i2c_gpio_cam: i2c-gpiocamgrp { 52462306a36Sopenharmony_ci fsl,pins = < 52562306a36Sopenharmony_ci MX6QDL_PAD_GPIO_6__GPIO1_IO06 0x1b0b0 /* SCL */ 52662306a36Sopenharmony_ci MX6QDL_PAD_KEY_COL2__GPIO4_IO10 0x1b0b0 /* SDA */ 52762306a36Sopenharmony_ci >; 52862306a36Sopenharmony_ci }; 52962306a36Sopenharmony_ci 53062306a36Sopenharmony_ci pinctrl_i2c_gpio_intern: i2c-gpiointerngrp { 53162306a36Sopenharmony_ci fsl,pins = < 53262306a36Sopenharmony_ci MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x1b0b0 /* SCL */ 53362306a36Sopenharmony_ci MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0 /* SDA */ 53462306a36Sopenharmony_ci >; 53562306a36Sopenharmony_ci }; 53662306a36Sopenharmony_ci 53762306a36Sopenharmony_ci pinctrl_i2c_gpio_lcd: i2c-gpiolcdgrp { 53862306a36Sopenharmony_ci fsl,pins = < 53962306a36Sopenharmony_ci MX6QDL_PAD_SD1_DAT2__GPIO1_IO19 0x1b0b0 /* SCL */ 54062306a36Sopenharmony_ci MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x1b0b0 /* SDA */ 54162306a36Sopenharmony_ci >; 54262306a36Sopenharmony_ci }; 54362306a36Sopenharmony_ci 54462306a36Sopenharmony_ci pinctrl_i2c1: i2c1grp { 54562306a36Sopenharmony_ci fsl,pins = < 54662306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 54762306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 54862306a36Sopenharmony_ci >; 54962306a36Sopenharmony_ci }; 55062306a36Sopenharmony_ci 55162306a36Sopenharmony_ci pinctrl_i2c2: i2c2grp { 55262306a36Sopenharmony_ci fsl,pins = < 55362306a36Sopenharmony_ci MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 55462306a36Sopenharmony_ci MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 55562306a36Sopenharmony_ci >; 55662306a36Sopenharmony_ci }; 55762306a36Sopenharmony_ci 55862306a36Sopenharmony_ci pinctrl_i2c3: i2c3grp { 55962306a36Sopenharmony_ci fsl,pins = < 56062306a36Sopenharmony_ci MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 56162306a36Sopenharmony_ci MX6QDL_PAD_GPIO_16__I2C3_SDA 0x4001b8b1 56262306a36Sopenharmony_ci >; 56362306a36Sopenharmony_ci }; 56462306a36Sopenharmony_ci 56562306a36Sopenharmony_ci pinctrl_lcd: lcdgrp { 56662306a36Sopenharmony_ci fsl,pins = < 56762306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x100f1 56862306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x100f1 56962306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x100f1 57062306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x100f1 57162306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x100f1 57262306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x100f1 57362306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x100f1 57462306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x100f1 57562306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x100f1 57662306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x100f1 57762306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x100f1 57862306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x100f1 57962306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x100f1 58062306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x100f1 58162306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x100f1 58262306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x100f1 58362306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x100f1 58462306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x100f1 58562306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x100f1 58662306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x100f1 58762306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x100f1 58862306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x100f1 58962306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x100f1 59062306a36Sopenharmony_ci MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x100f1 59162306a36Sopenharmony_ci 59262306a36Sopenharmony_ci MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x100f1 59362306a36Sopenharmony_ci MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x100f1 /* DE */ 59462306a36Sopenharmony_ci MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x100f1 /* HSYNC */ 59562306a36Sopenharmony_ci MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x100f1 /* VSYNC */ 59662306a36Sopenharmony_ci >; 59762306a36Sopenharmony_ci }; 59862306a36Sopenharmony_ci 59962306a36Sopenharmony_ci pinctrl_lcdbklt_en: lcdbkltengrp { 60062306a36Sopenharmony_ci fsl,pins = < 60162306a36Sopenharmony_ci MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x1b0b1 60262306a36Sopenharmony_ci >; 60362306a36Sopenharmony_ci }; 60462306a36Sopenharmony_ci 60562306a36Sopenharmony_ci pinctrl_lcdvdd_en: lcdvddengrp { 60662306a36Sopenharmony_ci fsl,pins = < 60762306a36Sopenharmony_ci MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b0 60862306a36Sopenharmony_ci >; 60962306a36Sopenharmony_ci }; 61062306a36Sopenharmony_ci 61162306a36Sopenharmony_ci pinctrl_mipi_csi: mipi-csigrp { 61262306a36Sopenharmony_ci fsl,pins = < 61362306a36Sopenharmony_ci MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x000b0 /* CSI0/1 MCLK */ 61462306a36Sopenharmony_ci >; 61562306a36Sopenharmony_ci }; 61662306a36Sopenharmony_ci 61762306a36Sopenharmony_ci pinctrl_mgmt_gpios: mgmt-gpiosgrp { 61862306a36Sopenharmony_ci fsl,pins = < 61962306a36Sopenharmony_ci MX6QDL_PAD_EIM_WAIT__GPIO5_IO00 0x1b0b0 /* LID# */ 62062306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT7__GPIO6_IO17 0x1b0b0 /* SLEEP# */ 62162306a36Sopenharmony_ci MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0 /* CHARGING# */ 62262306a36Sopenharmony_ci MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 /* CHARGER_PRSNT# */ 62362306a36Sopenharmony_ci MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x1b0b0 /* CARRIER_STBY# */ 62462306a36Sopenharmony_ci MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x1b0b0 /* BATLOW# */ 62562306a36Sopenharmony_ci MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1b0b0 /* TEST# */ 62662306a36Sopenharmony_ci MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0 /* VDD_IO_SEL_D# */ 62762306a36Sopenharmony_ci MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x1b0b0 /* POWER_BTN# */ 62862306a36Sopenharmony_ci >; 62962306a36Sopenharmony_ci }; 63062306a36Sopenharmony_ci 63162306a36Sopenharmony_ci pinctrl_pcie: pciegrp { 63262306a36Sopenharmony_ci fsl,pins = < 63362306a36Sopenharmony_ci MX6QDL_PAD_EIM_D18__GPIO3_IO18 0x1b0b0 /* PCI_A_PRSNT# */ 63462306a36Sopenharmony_ci MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x1b0b0 /* RST_PCIE_A# */ 63562306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT6__GPIO6_IO18 0x1b0b0 /* PCIE_WAKE# */ 63662306a36Sopenharmony_ci >; 63762306a36Sopenharmony_ci }; 63862306a36Sopenharmony_ci 63962306a36Sopenharmony_ci pinctrl_pwm4: pwm4grp { 64062306a36Sopenharmony_ci fsl,pins = < 64162306a36Sopenharmony_ci MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1 64262306a36Sopenharmony_ci >; 64362306a36Sopenharmony_ci }; 64462306a36Sopenharmony_ci 64562306a36Sopenharmony_ci pinctrl_uart1: uart1grp { 64662306a36Sopenharmony_ci fsl,pins = < 64762306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 64862306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 64962306a36Sopenharmony_ci MX6QDL_PAD_EIM_D20__UART1_RTS_B 0x1b0b1 65062306a36Sopenharmony_ci MX6QDL_PAD_EIM_D19__UART1_CTS_B 0x1b0b1 65162306a36Sopenharmony_ci >; 65262306a36Sopenharmony_ci }; 65362306a36Sopenharmony_ci 65462306a36Sopenharmony_ci pinctrl_uart2: uart2grp { 65562306a36Sopenharmony_ci fsl,pins = < 65662306a36Sopenharmony_ci MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 65762306a36Sopenharmony_ci MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 65862306a36Sopenharmony_ci >; 65962306a36Sopenharmony_ci }; 66062306a36Sopenharmony_ci 66162306a36Sopenharmony_ci pinctrl_uart4: uart4grp { 66262306a36Sopenharmony_ci fsl,pins = < 66362306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1 66462306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1 66562306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1 66662306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1 66762306a36Sopenharmony_ci >; 66862306a36Sopenharmony_ci }; 66962306a36Sopenharmony_ci 67062306a36Sopenharmony_ci pinctrl_uart5: uart5grp { 67162306a36Sopenharmony_ci fsl,pins = < 67262306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1 67362306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1 67462306a36Sopenharmony_ci >; 67562306a36Sopenharmony_ci }; 67662306a36Sopenharmony_ci 67762306a36Sopenharmony_ci pinctrl_usbotg: usbotggrp { 67862306a36Sopenharmony_ci fsl,pins = < 67962306a36Sopenharmony_ci MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x1f8b0 68062306a36Sopenharmony_ci /* power, oc muxed but not used by the driver */ 68162306a36Sopenharmony_ci MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x1b0b0 /* USB power */ 68262306a36Sopenharmony_ci MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x1b0b0 /* USB OC */ 68362306a36Sopenharmony_ci >; 68462306a36Sopenharmony_ci }; 68562306a36Sopenharmony_ci 68662306a36Sopenharmony_ci pinctrl_usdhc3: usdhc3grp { 68762306a36Sopenharmony_ci fsl,pins = < 68862306a36Sopenharmony_ci MX6QDL_PAD_SD3_CLK__SD3_CLK 0x17059 68962306a36Sopenharmony_ci MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 69062306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 69162306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 69262306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 69362306a36Sopenharmony_ci MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 69462306a36Sopenharmony_ci 69562306a36Sopenharmony_ci MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x1b0b0 /* CD */ 69662306a36Sopenharmony_ci MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b0 /* WP */ 69762306a36Sopenharmony_ci MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x1b0b0 /* PWR_EN */ 69862306a36Sopenharmony_ci >; 69962306a36Sopenharmony_ci }; 70062306a36Sopenharmony_ci 70162306a36Sopenharmony_ci pinctrl_usdhc4: usdhc4grp { 70262306a36Sopenharmony_ci fsl,pins = < 70362306a36Sopenharmony_ci MX6QDL_PAD_SD4_CLK__SD4_CLK 0x17059 70462306a36Sopenharmony_ci MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 70562306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 70662306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 70762306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 70862306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 70962306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 71062306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 71162306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 71262306a36Sopenharmony_ci MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 71362306a36Sopenharmony_ci >; 71462306a36Sopenharmony_ci }; 71562306a36Sopenharmony_ci 71662306a36Sopenharmony_ci pinctrl_wdog1: wdog1rp { 71762306a36Sopenharmony_ci fsl,pins = < 71862306a36Sopenharmony_ci MX6QDL_PAD_GPIO_9__WDOG1_B 0x1b0b0 71962306a36Sopenharmony_ci >; 72062306a36Sopenharmony_ci }; 72162306a36Sopenharmony_ci}; 72262306a36Sopenharmony_ci 72362306a36Sopenharmony_ci&mipi_csi { 72462306a36Sopenharmony_ci pinctrl-names = "default"; 72562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_mipi_csi>; 72662306a36Sopenharmony_ci}; 72762306a36Sopenharmony_ci 72862306a36Sopenharmony_ci&pcie { 72962306a36Sopenharmony_ci pinctrl-names = "default"; 73062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_pcie>; 73162306a36Sopenharmony_ci wake-up-gpio = <&gpio6 18 GPIO_ACTIVE_HIGH>; 73262306a36Sopenharmony_ci reset-gpio = <&gpio3 13 GPIO_ACTIVE_HIGH>; 73362306a36Sopenharmony_ci}; 73462306a36Sopenharmony_ci 73562306a36Sopenharmony_ci/* LCD_BKLT_PWM */ 73662306a36Sopenharmony_ci&pwm4 { 73762306a36Sopenharmony_ci pinctrl-names = "default"; 73862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_pwm4>; 73962306a36Sopenharmony_ci}; 74062306a36Sopenharmony_ci 74162306a36Sopenharmony_ci®_arm { 74262306a36Sopenharmony_ci vin-supply = <®_v_core_s0>; 74362306a36Sopenharmony_ci}; 74462306a36Sopenharmony_ci 74562306a36Sopenharmony_ci®_pu { 74662306a36Sopenharmony_ci vin-supply = <®_vddsoc_s0>; 74762306a36Sopenharmony_ci}; 74862306a36Sopenharmony_ci 74962306a36Sopenharmony_ci®_soc { 75062306a36Sopenharmony_ci vin-supply = <®_vddsoc_s0>; 75162306a36Sopenharmony_ci}; 75262306a36Sopenharmony_ci 75362306a36Sopenharmony_ci/* SER0 */ 75462306a36Sopenharmony_ci&uart1 { 75562306a36Sopenharmony_ci pinctrl-names = "default"; 75662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart1>; 75762306a36Sopenharmony_ci uart-has-rtscts; 75862306a36Sopenharmony_ci}; 75962306a36Sopenharmony_ci 76062306a36Sopenharmony_ci/* SER1 */ 76162306a36Sopenharmony_ci&uart2 { 76262306a36Sopenharmony_ci pinctrl-names = "default"; 76362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart2>; 76462306a36Sopenharmony_ci}; 76562306a36Sopenharmony_ci 76662306a36Sopenharmony_ci/* SER2 */ 76762306a36Sopenharmony_ci&uart4 { 76862306a36Sopenharmony_ci pinctrl-names = "default"; 76962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart4>; 77062306a36Sopenharmony_ci uart-has-rtscts; 77162306a36Sopenharmony_ci}; 77262306a36Sopenharmony_ci 77362306a36Sopenharmony_ci/* SER3 */ 77462306a36Sopenharmony_ci&uart5 { 77562306a36Sopenharmony_ci pinctrl-names = "default"; 77662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart5>; 77762306a36Sopenharmony_ci}; 77862306a36Sopenharmony_ci 77962306a36Sopenharmony_ci/* USB0 */ 78062306a36Sopenharmony_ci&usbotg { 78162306a36Sopenharmony_ci /* 78262306a36Sopenharmony_ci * no 'imx6-usb-charger-detection' 78362306a36Sopenharmony_ci * since USB_OTG_CHD_B pin is not wired 78462306a36Sopenharmony_ci */ 78562306a36Sopenharmony_ci pinctrl-names = "default"; 78662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usbotg>; 78762306a36Sopenharmony_ci}; 78862306a36Sopenharmony_ci 78962306a36Sopenharmony_ci/* USB1/2 via hub */ 79062306a36Sopenharmony_ci&usbh1 { 79162306a36Sopenharmony_ci vbus-supply = <®_5p0v_s0>; 79262306a36Sopenharmony_ci}; 79362306a36Sopenharmony_ci 79462306a36Sopenharmony_ci/* SDIO */ 79562306a36Sopenharmony_ci&usdhc3 { 79662306a36Sopenharmony_ci pinctrl-names = "default"; 79762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usdhc3>; 79862306a36Sopenharmony_ci cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; 79962306a36Sopenharmony_ci wp-gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>; 80062306a36Sopenharmony_ci no-1-8-v; 80162306a36Sopenharmony_ci}; 80262306a36Sopenharmony_ci 80362306a36Sopenharmony_ci/* SDMMC */ 80462306a36Sopenharmony_ci&usdhc4 { 80562306a36Sopenharmony_ci /* Internal eMMC, optional on some boards */ 80662306a36Sopenharmony_ci pinctrl-names = "default"; 80762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usdhc4>; 80862306a36Sopenharmony_ci bus-width = <8>; 80962306a36Sopenharmony_ci no-sdio; 81062306a36Sopenharmony_ci no-sd; 81162306a36Sopenharmony_ci non-removable; 81262306a36Sopenharmony_ci vmmc-supply = <®_3p3v_s0>; 81362306a36Sopenharmony_ci vqmmc-supply = <®_1p8v_s0>; 81462306a36Sopenharmony_ci}; 81562306a36Sopenharmony_ci 81662306a36Sopenharmony_ci&wdog1 { 81762306a36Sopenharmony_ci /* CPLD is feeded by watchdog (hardwired) */ 81862306a36Sopenharmony_ci pinctrl-names = "default"; 81962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_wdog1>; 82062306a36Sopenharmony_ci status = "okay"; 82162306a36Sopenharmony_ci}; 822