162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright 2018-2020 Purism SPC 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci/dts-v1/; 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#include "dt-bindings/input/input.h" 962306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h> 1062306a36Sopenharmony_ci#include <dt-bindings/leds/common.h> 1162306a36Sopenharmony_ci#include "dt-bindings/pwm/pwm.h" 1262306a36Sopenharmony_ci#include "dt-bindings/usb/pd.h" 1362306a36Sopenharmony_ci#include "imx8mq.dtsi" 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci/ { 1662306a36Sopenharmony_ci model = "Purism Librem 5"; 1762306a36Sopenharmony_ci compatible = "purism,librem5", "fsl,imx8mq"; 1862306a36Sopenharmony_ci chassis-type = "handset"; 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci backlight_dsi: backlight-dsi { 2162306a36Sopenharmony_ci compatible = "led-backlight"; 2262306a36Sopenharmony_ci leds = <&led_backlight>; 2362306a36Sopenharmony_ci brightness-levels = <255>; 2462306a36Sopenharmony_ci default-brightness-level = <190>; 2562306a36Sopenharmony_ci }; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci pmic_osc: clock-pmic { 2862306a36Sopenharmony_ci compatible = "fixed-clock"; 2962306a36Sopenharmony_ci #clock-cells = <0>; 3062306a36Sopenharmony_ci clock-frequency = <32768>; 3162306a36Sopenharmony_ci clock-output-names = "pmic_osc"; 3262306a36Sopenharmony_ci }; 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci chosen { 3562306a36Sopenharmony_ci stdout-path = &uart1; 3662306a36Sopenharmony_ci }; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci gpio-keys { 3962306a36Sopenharmony_ci compatible = "gpio-keys"; 4062306a36Sopenharmony_ci pinctrl-names = "default"; 4162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_keys>; 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci key-vol-down { 4462306a36Sopenharmony_ci label = "VOL_DOWN"; 4562306a36Sopenharmony_ci gpios = <&gpio1 17 GPIO_ACTIVE_LOW>; 4662306a36Sopenharmony_ci linux,code = <KEY_VOLUMEDOWN>; 4762306a36Sopenharmony_ci debounce-interval = <50>; 4862306a36Sopenharmony_ci wakeup-source; 4962306a36Sopenharmony_ci }; 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci key-vol-up { 5262306a36Sopenharmony_ci label = "VOL_UP"; 5362306a36Sopenharmony_ci gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; 5462306a36Sopenharmony_ci linux,code = <KEY_VOLUMEUP>; 5562306a36Sopenharmony_ci debounce-interval = <50>; 5662306a36Sopenharmony_ci wakeup-source; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci }; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci led-controller { 6162306a36Sopenharmony_ci compatible = "pwm-leds-multicolor"; 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci multi-led { 6462306a36Sopenharmony_ci color = <LED_COLOR_ID_RGB>; 6562306a36Sopenharmony_ci function = LED_FUNCTION_STATUS; 6662306a36Sopenharmony_ci max-brightness = <248>; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci led-0 { 6962306a36Sopenharmony_ci color = <LED_COLOR_ID_BLUE>; 7062306a36Sopenharmony_ci pwms = <&pwm2 0 50000 0>; 7162306a36Sopenharmony_ci }; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci led-1 { 7462306a36Sopenharmony_ci color = <LED_COLOR_ID_GREEN>; 7562306a36Sopenharmony_ci pwms = <&pwm4 0 50000 0>; 7662306a36Sopenharmony_ci }; 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ci led-2 { 7962306a36Sopenharmony_ci color = <LED_COLOR_ID_RED>; 8062306a36Sopenharmony_ci pwms = <&pwm3 0 50000 0>; 8162306a36Sopenharmony_ci }; 8262306a36Sopenharmony_ci }; 8362306a36Sopenharmony_ci }; 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci reg_aud_1v8: regulator-audio-1v8 { 8662306a36Sopenharmony_ci compatible = "regulator-fixed"; 8762306a36Sopenharmony_ci pinctrl-names = "default"; 8862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_audiopwr>; 8962306a36Sopenharmony_ci regulator-name = "AUD_1V8"; 9062306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 9162306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 9262306a36Sopenharmony_ci gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>; 9362306a36Sopenharmony_ci enable-active-high; 9462306a36Sopenharmony_ci regulator-always-on; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci reg_mic_2v4: regulator-mic-2v4 { 9862306a36Sopenharmony_ci compatible = "regulator-fixed"; 9962306a36Sopenharmony_ci regulator-name = "MIC_2V4"; 10062306a36Sopenharmony_ci regulator-min-microvolt = <2400000>; 10162306a36Sopenharmony_ci regulator-max-microvolt = <2400000>; 10262306a36Sopenharmony_ci vin-supply = <®_aud_1v8>; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci /* 10662306a36Sopenharmony_ci * the pinctrl for reg_csi_1v8 and reg_vcam_1v8 is added to the PMIC 10762306a36Sopenharmony_ci * since we can't have it twice in the 2 different regulator nodes. 10862306a36Sopenharmony_ci */ 10962306a36Sopenharmony_ci reg_csi_1v8: regulator-csi-1v8 { 11062306a36Sopenharmony_ci compatible = "regulator-fixed"; 11162306a36Sopenharmony_ci regulator-name = "CAMERA_VDDIO_1V8"; 11262306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 11362306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 11462306a36Sopenharmony_ci vin-supply = <®_vdd_3v3>; 11562306a36Sopenharmony_ci gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; 11662306a36Sopenharmony_ci enable-active-high; 11762306a36Sopenharmony_ci }; 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci /* controlled by the CAMERA_POWER_KEY HKS */ 12062306a36Sopenharmony_ci reg_vcam_1v2: regulator-vcam-1v2 { 12162306a36Sopenharmony_ci compatible = "regulator-fixed"; 12262306a36Sopenharmony_ci regulator-name = "CAMERA_VDDD_1V2"; 12362306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 12462306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 12562306a36Sopenharmony_ci vin-supply = <®_vdd_1v8>; 12662306a36Sopenharmony_ci enable-active-high; 12762306a36Sopenharmony_ci }; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci reg_vcam_2v8: regulator-vcam-2v8 { 13062306a36Sopenharmony_ci compatible = "regulator-fixed"; 13162306a36Sopenharmony_ci regulator-name = "CAMERA_VDDA_2V8"; 13262306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 13362306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 13462306a36Sopenharmony_ci vin-supply = <®_vdd_3v3>; 13562306a36Sopenharmony_ci gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; 13662306a36Sopenharmony_ci enable-active-high; 13762306a36Sopenharmony_ci }; 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_ci reg_gnss: regulator-gnss { 14062306a36Sopenharmony_ci compatible = "regulator-fixed"; 14162306a36Sopenharmony_ci pinctrl-names = "default"; 14262306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_gnsspwr>; 14362306a36Sopenharmony_ci regulator-name = "GNSS"; 14462306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 14562306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 14662306a36Sopenharmony_ci gpio = <&gpio3 12 GPIO_ACTIVE_HIGH>; 14762306a36Sopenharmony_ci enable-active-high; 14862306a36Sopenharmony_ci }; 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci reg_hub: regulator-hub { 15162306a36Sopenharmony_ci compatible = "regulator-fixed"; 15262306a36Sopenharmony_ci pinctrl-names = "default"; 15362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_hub_pwr>; 15462306a36Sopenharmony_ci regulator-name = "HUB"; 15562306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 15662306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 15762306a36Sopenharmony_ci gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>; 15862306a36Sopenharmony_ci enable-active-high; 15962306a36Sopenharmony_ci }; 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ci reg_lcd_1v8: regulator-lcd-1v8 { 16262306a36Sopenharmony_ci compatible = "regulator-fixed"; 16362306a36Sopenharmony_ci pinctrl-names = "default"; 16462306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_dsien>; 16562306a36Sopenharmony_ci regulator-name = "LCD_1V8"; 16662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 16762306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 16862306a36Sopenharmony_ci vin-supply = <®_vdd_1v8>; 16962306a36Sopenharmony_ci gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>; 17062306a36Sopenharmony_ci enable-active-high; 17162306a36Sopenharmony_ci /* Otherwise i2c3 is not functional */ 17262306a36Sopenharmony_ci regulator-always-on; 17362306a36Sopenharmony_ci }; 17462306a36Sopenharmony_ci 17562306a36Sopenharmony_ci reg_lcd_3v4: regulator-lcd-3v4 { 17662306a36Sopenharmony_ci compatible = "regulator-fixed"; 17762306a36Sopenharmony_ci regulator-name = "LCD_3V4"; 17862306a36Sopenharmony_ci pinctrl-names = "default"; 17962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_dsibiasen>; 18062306a36Sopenharmony_ci vin-supply = <®_vsys_3v4>; 18162306a36Sopenharmony_ci gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>; 18262306a36Sopenharmony_ci enable-active-high; 18362306a36Sopenharmony_ci }; 18462306a36Sopenharmony_ci 18562306a36Sopenharmony_ci reg_vdd_sen: regulator-vdd-sen { 18662306a36Sopenharmony_ci compatible = "regulator-fixed"; 18762306a36Sopenharmony_ci regulator-name = "VDD_SEN"; 18862306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 18962306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 19062306a36Sopenharmony_ci }; 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci reg_vdd_1v8: regulator-vdd-1v8 { 19362306a36Sopenharmony_ci compatible = "regulator-fixed"; 19462306a36Sopenharmony_ci regulator-name = "VDD_1V8"; 19562306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 19662306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 19762306a36Sopenharmony_ci vin-supply = <&buck7_reg>; 19862306a36Sopenharmony_ci }; 19962306a36Sopenharmony_ci 20062306a36Sopenharmony_ci reg_vdd_3v3: regulator-vdd-3v3 { 20162306a36Sopenharmony_ci compatible = "regulator-fixed"; 20262306a36Sopenharmony_ci regulator-name = "VDD_3V3"; 20362306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 20462306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 20562306a36Sopenharmony_ci }; 20662306a36Sopenharmony_ci 20762306a36Sopenharmony_ci reg_vsys_3v4: regulator-vsys-3v4 { 20862306a36Sopenharmony_ci compatible = "regulator-fixed"; 20962306a36Sopenharmony_ci regulator-name = "VSYS_3V4"; 21062306a36Sopenharmony_ci regulator-min-microvolt = <3400000>; 21162306a36Sopenharmony_ci regulator-max-microvolt = <3400000>; 21262306a36Sopenharmony_ci regulator-always-on; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci 21562306a36Sopenharmony_ci reg_wifi_3v3: regulator-wifi-3v3 { 21662306a36Sopenharmony_ci compatible = "regulator-fixed"; 21762306a36Sopenharmony_ci pinctrl-names = "default"; 21862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_wifi_pwr>; 21962306a36Sopenharmony_ci regulator-name = "3V3_WIFI"; 22062306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 22162306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 22262306a36Sopenharmony_ci gpio = <&gpio3 10 GPIO_ACTIVE_HIGH>; 22362306a36Sopenharmony_ci enable-active-high; 22462306a36Sopenharmony_ci vin-supply = <®_vdd_3v3>; 22562306a36Sopenharmony_ci }; 22662306a36Sopenharmony_ci 22762306a36Sopenharmony_ci sound { 22862306a36Sopenharmony_ci compatible = "simple-audio-card"; 22962306a36Sopenharmony_ci pinctrl-names = "default"; 23062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_hp>; 23162306a36Sopenharmony_ci simple-audio-card,name = "Librem 5"; 23262306a36Sopenharmony_ci simple-audio-card,format = "i2s"; 23362306a36Sopenharmony_ci simple-audio-card,widgets = 23462306a36Sopenharmony_ci "Headphone", "Headphones", 23562306a36Sopenharmony_ci "Microphone", "Headset Mic", 23662306a36Sopenharmony_ci "Microphone", "Digital Mic", 23762306a36Sopenharmony_ci "Speaker", "Speaker"; 23862306a36Sopenharmony_ci simple-audio-card,routing = 23962306a36Sopenharmony_ci "Headphones", "HPOUTL", 24062306a36Sopenharmony_ci "Headphones", "HPOUTR", 24162306a36Sopenharmony_ci "Speaker", "SPKOUTL", 24262306a36Sopenharmony_ci "Speaker", "SPKOUTR", 24362306a36Sopenharmony_ci "Headset Mic", "MICBIAS", 24462306a36Sopenharmony_ci "IN3R", "Headset Mic", 24562306a36Sopenharmony_ci "DMICDAT", "Digital Mic"; 24662306a36Sopenharmony_ci simple-audio-card,hp-det-gpio = <&gpio3 9 GPIO_ACTIVE_HIGH>; 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci simple-audio-card,cpu { 24962306a36Sopenharmony_ci sound-dai = <&sai2>; 25062306a36Sopenharmony_ci }; 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_ci simple-audio-card,codec { 25362306a36Sopenharmony_ci sound-dai = <&codec>; 25462306a36Sopenharmony_ci clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>; 25562306a36Sopenharmony_ci frame-master; 25662306a36Sopenharmony_ci bitclock-master; 25762306a36Sopenharmony_ci }; 25862306a36Sopenharmony_ci }; 25962306a36Sopenharmony_ci 26062306a36Sopenharmony_ci sound-wwan { 26162306a36Sopenharmony_ci compatible = "simple-audio-card"; 26262306a36Sopenharmony_ci simple-audio-card,name = "Modem"; 26362306a36Sopenharmony_ci simple-audio-card,format = "i2s"; 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci simple-audio-card,cpu { 26662306a36Sopenharmony_ci sound-dai = <&sai6>; 26762306a36Sopenharmony_ci frame-inversion; 26862306a36Sopenharmony_ci }; 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ci simple-audio-card,codec { 27162306a36Sopenharmony_ci sound-dai = <&bm818_codec>; 27262306a36Sopenharmony_ci frame-master; 27362306a36Sopenharmony_ci bitclock-master; 27462306a36Sopenharmony_ci }; 27562306a36Sopenharmony_ci }; 27662306a36Sopenharmony_ci 27762306a36Sopenharmony_ci usdhc2_pwrseq: pwrseq { 27862306a36Sopenharmony_ci pinctrl-names = "default"; 27962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_bt>, <&pinctrl_wifi_disable>; 28062306a36Sopenharmony_ci compatible = "mmc-pwrseq-simple"; 28162306a36Sopenharmony_ci reset-gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>, 28262306a36Sopenharmony_ci <&gpio4 29 GPIO_ACTIVE_HIGH>; 28362306a36Sopenharmony_ci }; 28462306a36Sopenharmony_ci 28562306a36Sopenharmony_ci bm818_codec: sound-wwan-codec { 28662306a36Sopenharmony_ci compatible = "broadmobi,bm818", "option,gtm601"; 28762306a36Sopenharmony_ci #sound-dai-cells = <0>; 28862306a36Sopenharmony_ci }; 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ci vibrator { 29162306a36Sopenharmony_ci compatible = "pwm-vibrator"; 29262306a36Sopenharmony_ci pwms = <&pwm1 0 1000000000 0>; 29362306a36Sopenharmony_ci pwm-names = "enable"; 29462306a36Sopenharmony_ci vcc-supply = <®_vdd_3v3>; 29562306a36Sopenharmony_ci }; 29662306a36Sopenharmony_ci}; 29762306a36Sopenharmony_ci 29862306a36Sopenharmony_ci&A53_0 { 29962306a36Sopenharmony_ci cpu-supply = <&buck2_reg>; 30062306a36Sopenharmony_ci}; 30162306a36Sopenharmony_ci 30262306a36Sopenharmony_ci&A53_1 { 30362306a36Sopenharmony_ci cpu-supply = <&buck2_reg>; 30462306a36Sopenharmony_ci}; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_ci&A53_2 { 30762306a36Sopenharmony_ci cpu-supply = <&buck2_reg>; 30862306a36Sopenharmony_ci}; 30962306a36Sopenharmony_ci 31062306a36Sopenharmony_ci&A53_3 { 31162306a36Sopenharmony_ci cpu-supply = <&buck2_reg>; 31262306a36Sopenharmony_ci}; 31362306a36Sopenharmony_ci 31462306a36Sopenharmony_ci&csi1 { 31562306a36Sopenharmony_ci status = "okay"; 31662306a36Sopenharmony_ci}; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ci&ddrc { 31962306a36Sopenharmony_ci operating-points-v2 = <&ddrc_opp_table>; 32062306a36Sopenharmony_ci status = "okay"; 32162306a36Sopenharmony_ci 32262306a36Sopenharmony_ci ddrc_opp_table: opp-table { 32362306a36Sopenharmony_ci compatible = "operating-points-v2"; 32462306a36Sopenharmony_ci 32562306a36Sopenharmony_ci opp-25000000 { 32662306a36Sopenharmony_ci opp-hz = /bits/ 64 <25000000>; 32762306a36Sopenharmony_ci }; 32862306a36Sopenharmony_ci 32962306a36Sopenharmony_ci opp-100000000 { 33062306a36Sopenharmony_ci opp-hz = /bits/ 64 <100000000>; 33162306a36Sopenharmony_ci }; 33262306a36Sopenharmony_ci 33362306a36Sopenharmony_ci opp-166000000 { 33462306a36Sopenharmony_ci opp-hz = /bits/ 64 <166935483>; 33562306a36Sopenharmony_ci }; 33662306a36Sopenharmony_ci 33762306a36Sopenharmony_ci opp-800000000 { 33862306a36Sopenharmony_ci opp-hz = /bits/ 64 <800000000>; 33962306a36Sopenharmony_ci }; 34062306a36Sopenharmony_ci }; 34162306a36Sopenharmony_ci}; 34262306a36Sopenharmony_ci 34362306a36Sopenharmony_ci&dphy { 34462306a36Sopenharmony_ci status = "okay"; 34562306a36Sopenharmony_ci}; 34662306a36Sopenharmony_ci 34762306a36Sopenharmony_ci&ecspi1 { 34862306a36Sopenharmony_ci pinctrl-names = "default"; 34962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_ecspi1>; 35062306a36Sopenharmony_ci cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; 35162306a36Sopenharmony_ci #address-cells = <1>; 35262306a36Sopenharmony_ci #size-cells = <0>; 35362306a36Sopenharmony_ci status = "okay"; 35462306a36Sopenharmony_ci 35562306a36Sopenharmony_ci nor_flash: flash@0 { 35662306a36Sopenharmony_ci compatible = "jedec,spi-nor"; 35762306a36Sopenharmony_ci reg = <0>; 35862306a36Sopenharmony_ci spi-max-frequency = <1000000>; 35962306a36Sopenharmony_ci #address-cells = <1>; 36062306a36Sopenharmony_ci #size-cells = <1>; 36162306a36Sopenharmony_ci 36262306a36Sopenharmony_ci partition@0 { 36362306a36Sopenharmony_ci label = "protected0"; 36462306a36Sopenharmony_ci reg = <0x0 0x30000>; 36562306a36Sopenharmony_ci read-only; 36662306a36Sopenharmony_ci }; 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci partition@30000 { 36962306a36Sopenharmony_ci label = "firmware"; 37062306a36Sopenharmony_ci reg = <0x30000 0x1d0000>; 37162306a36Sopenharmony_ci read-only; 37262306a36Sopenharmony_ci }; 37362306a36Sopenharmony_ci }; 37462306a36Sopenharmony_ci}; 37562306a36Sopenharmony_ci 37662306a36Sopenharmony_ci&gpio1 { 37762306a36Sopenharmony_ci pinctrl-names = "default"; 37862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_pmic_5v>; 37962306a36Sopenharmony_ci 38062306a36Sopenharmony_ci pmic-5v-hog { 38162306a36Sopenharmony_ci gpio-hog; 38262306a36Sopenharmony_ci gpios = <1 GPIO_ACTIVE_HIGH>; 38362306a36Sopenharmony_ci input; 38462306a36Sopenharmony_ci lane-mapping = "pmic-5v"; 38562306a36Sopenharmony_ci }; 38662306a36Sopenharmony_ci}; 38762306a36Sopenharmony_ci 38862306a36Sopenharmony_ci&iomuxc { 38962306a36Sopenharmony_ci pinctrl-names = "default"; 39062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_hog>; 39162306a36Sopenharmony_ci 39262306a36Sopenharmony_ci pinctrl_hog: hoggrp { 39362306a36Sopenharmony_ci fsl,pins = < 39462306a36Sopenharmony_ci /* CLKO2 for cameras on both CSI1 and CSI2 */ 39562306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO15_CCMSRCGPCMIX_CLKO2 0x1f 39662306a36Sopenharmony_ci >; 39762306a36Sopenharmony_ci }; 39862306a36Sopenharmony_ci 39962306a36Sopenharmony_ci pinctrl_audiopwr: audiopwrgrp { 40062306a36Sopenharmony_ci fsl,pins = < 40162306a36Sopenharmony_ci /* AUDIO_POWER_EN_3V3 */ 40262306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO04_GPIO1_IO4 0x83 40362306a36Sopenharmony_ci >; 40462306a36Sopenharmony_ci }; 40562306a36Sopenharmony_ci 40662306a36Sopenharmony_ci pinctrl_bl: blgrp { 40762306a36Sopenharmony_ci fsl,pins = < 40862306a36Sopenharmony_ci /* BACKLINGE_EN */ 40962306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_DQS_GPIO3_IO14 0x83 41062306a36Sopenharmony_ci >; 41162306a36Sopenharmony_ci }; 41262306a36Sopenharmony_ci 41362306a36Sopenharmony_ci pinctrl_bt: btgrp { 41462306a36Sopenharmony_ci fsl,pins = < 41562306a36Sopenharmony_ci /* BT_REG_ON */ 41662306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI5_MCLK_GPIO3_IO25 0x83 41762306a36Sopenharmony_ci >; 41862306a36Sopenharmony_ci }; 41962306a36Sopenharmony_ci 42062306a36Sopenharmony_ci pinctrl_camera_pwr: camerapwrgrp { 42162306a36Sopenharmony_ci fsl,pins = < 42262306a36Sopenharmony_ci /* CAMERA_PWR_EN_3V3 */ 42362306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO00_GPIO1_IO0 0x83 42462306a36Sopenharmony_ci >; 42562306a36Sopenharmony_ci }; 42662306a36Sopenharmony_ci 42762306a36Sopenharmony_ci pinctrl_csi1: csi1grp { 42862306a36Sopenharmony_ci fsl,pins = < 42962306a36Sopenharmony_ci /* CSI1_NRST */ 43062306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_RXC_GPIO1_IO25 0x83 43162306a36Sopenharmony_ci >; 43262306a36Sopenharmony_ci }; 43362306a36Sopenharmony_ci 43462306a36Sopenharmony_ci pinctrl_charger_in: chargeringrp { 43562306a36Sopenharmony_ci fsl,pins = < 43662306a36Sopenharmony_ci /* CHRG_INT */ 43762306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_CE2_B_GPIO3_IO3 0x80 43862306a36Sopenharmony_ci >; 43962306a36Sopenharmony_ci }; 44062306a36Sopenharmony_ci 44162306a36Sopenharmony_ci pinctrl_dsibiasen: dsibiasengrp { 44262306a36Sopenharmony_ci fsl,pins = < 44362306a36Sopenharmony_ci /* DSI_BIAS_EN */ 44462306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_TD1_GPIO1_IO20 0x83 44562306a36Sopenharmony_ci >; 44662306a36Sopenharmony_ci }; 44762306a36Sopenharmony_ci 44862306a36Sopenharmony_ci pinctrl_dsien: dsiengrp { 44962306a36Sopenharmony_ci fsl,pins = < 45062306a36Sopenharmony_ci /* DSI_EN_3V3 */ 45162306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO05_GPIO1_IO5 0x83 45262306a36Sopenharmony_ci >; 45362306a36Sopenharmony_ci }; 45462306a36Sopenharmony_ci 45562306a36Sopenharmony_ci pinctrl_dsirst: dsirstgrp { 45662306a36Sopenharmony_ci fsl,pins = < 45762306a36Sopenharmony_ci /* DSI_RST */ 45862306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_RD3_GPIO1_IO29 0x83 45962306a36Sopenharmony_ci /* DSI_TE */ 46062306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_RD2_GPIO1_IO28 0x83 46162306a36Sopenharmony_ci /* TP_RST */ 46262306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_RX_CTL_GPIO1_IO24 0x83 46362306a36Sopenharmony_ci >; 46462306a36Sopenharmony_ci }; 46562306a36Sopenharmony_ci 46662306a36Sopenharmony_ci pinctrl_ecspi1: ecspigrp { 46762306a36Sopenharmony_ci fsl,pins = < 46862306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI1_MOSI_ECSPI1_MOSI 0x83 46962306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI1_MISO_ECSPI1_MISO 0x83 47062306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI1_SS0_GPIO5_IO9 0x19 47162306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI1_SCLK_ECSPI1_SCLK 0x83 47262306a36Sopenharmony_ci >; 47362306a36Sopenharmony_ci }; 47462306a36Sopenharmony_ci 47562306a36Sopenharmony_ci pinctrl_gauge: gaugegrp { 47662306a36Sopenharmony_ci fsl,pins = < 47762306a36Sopenharmony_ci /* BAT_LOW */ 47862306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20 0x80 47962306a36Sopenharmony_ci >; 48062306a36Sopenharmony_ci }; 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_ci pinctrl_gnsspwr: gnsspwrgrp { 48362306a36Sopenharmony_ci fsl,pins = < 48462306a36Sopenharmony_ci /* GPS3V3_EN */ 48562306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_DATA06_GPIO3_IO12 0x83 48662306a36Sopenharmony_ci >; 48762306a36Sopenharmony_ci }; 48862306a36Sopenharmony_ci 48962306a36Sopenharmony_ci pinctrl_haptic: hapticgrp { 49062306a36Sopenharmony_ci fsl,pins = < 49162306a36Sopenharmony_ci /* MOTO */ 49262306a36Sopenharmony_ci MX8MQ_IOMUXC_SPDIF_EXT_CLK_PWM1_OUT 0x83 49362306a36Sopenharmony_ci >; 49462306a36Sopenharmony_ci }; 49562306a36Sopenharmony_ci 49662306a36Sopenharmony_ci pinctrl_hp: hpgrp { 49762306a36Sopenharmony_ci fsl,pins = < 49862306a36Sopenharmony_ci /* HEADPHONE_DET_1V8 */ 49962306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_DATA03_GPIO3_IO9 0x180 50062306a36Sopenharmony_ci >; 50162306a36Sopenharmony_ci }; 50262306a36Sopenharmony_ci 50362306a36Sopenharmony_ci pinctrl_hub_pwr: hubpwrgrp { 50462306a36Sopenharmony_ci fsl,pins = < 50562306a36Sopenharmony_ci /* HUB_PWR_3V3_EN */ 50662306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO14_GPIO1_IO14 0x83 50762306a36Sopenharmony_ci >; 50862306a36Sopenharmony_ci }; 50962306a36Sopenharmony_ci 51062306a36Sopenharmony_ci pinctrl_i2c1: i2c1grp { 51162306a36Sopenharmony_ci fsl,pins = < 51262306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL 0x40000026 51362306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA 0x40000026 51462306a36Sopenharmony_ci >; 51562306a36Sopenharmony_ci }; 51662306a36Sopenharmony_ci 51762306a36Sopenharmony_ci pinctrl_i2c2: i2c2grp { 51862306a36Sopenharmony_ci fsl,pins = < 51962306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C2_SCL_I2C2_SCL 0x40000026 52062306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C2_SDA_I2C2_SDA 0x40000026 52162306a36Sopenharmony_ci >; 52262306a36Sopenharmony_ci }; 52362306a36Sopenharmony_ci 52462306a36Sopenharmony_ci pinctrl_i2c3: i2c3grp { 52562306a36Sopenharmony_ci fsl,pins = < 52662306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C3_SCL_I2C3_SCL 0x40000026 52762306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C3_SDA_I2C3_SDA 0x40000026 52862306a36Sopenharmony_ci >; 52962306a36Sopenharmony_ci }; 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ci pinctrl_i2c4: i2c4grp { 53262306a36Sopenharmony_ci fsl,pins = < 53362306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C4_SCL_I2C4_SCL 0x40000026 53462306a36Sopenharmony_ci MX8MQ_IOMUXC_I2C4_SDA_I2C4_SDA 0x40000026 53562306a36Sopenharmony_ci >; 53662306a36Sopenharmony_ci }; 53762306a36Sopenharmony_ci 53862306a36Sopenharmony_ci pinctrl_keys: keysgrp { 53962306a36Sopenharmony_ci fsl,pins = < 54062306a36Sopenharmony_ci /* VOL- */ 54162306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_MDIO_GPIO1_IO17 0x01C0 54262306a36Sopenharmony_ci /* VOL+ */ 54362306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_MDC_GPIO1_IO16 0x01C0 54462306a36Sopenharmony_ci >; 54562306a36Sopenharmony_ci }; 54662306a36Sopenharmony_ci 54762306a36Sopenharmony_ci pinctrl_led_b: ledbgrp { 54862306a36Sopenharmony_ci fsl,pins = < 54962306a36Sopenharmony_ci /* LED_B */ 55062306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO13_PWM2_OUT 0x06 55162306a36Sopenharmony_ci >; 55262306a36Sopenharmony_ci }; 55362306a36Sopenharmony_ci 55462306a36Sopenharmony_ci pinctrl_led_g: ledggrp { 55562306a36Sopenharmony_ci fsl,pins = < 55662306a36Sopenharmony_ci /* LED_G */ 55762306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI3_MCLK_PWM4_OUT 0x06 55862306a36Sopenharmony_ci >; 55962306a36Sopenharmony_ci }; 56062306a36Sopenharmony_ci 56162306a36Sopenharmony_ci pinctrl_led_r: ledrgrp { 56262306a36Sopenharmony_ci fsl,pins = < 56362306a36Sopenharmony_ci /* LED_R */ 56462306a36Sopenharmony_ci MX8MQ_IOMUXC_SPDIF_TX_PWM3_OUT 0x06 56562306a36Sopenharmony_ci >; 56662306a36Sopenharmony_ci }; 56762306a36Sopenharmony_ci 56862306a36Sopenharmony_ci pinctrl_mag: maggrp { 56962306a36Sopenharmony_ci fsl,pins = < 57062306a36Sopenharmony_ci /* INT_MAG */ 57162306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI5_RXD1_GPIO3_IO22 0x80 57262306a36Sopenharmony_ci >; 57362306a36Sopenharmony_ci }; 57462306a36Sopenharmony_ci 57562306a36Sopenharmony_ci pinctrl_pmic: pmicgrp { 57662306a36Sopenharmony_ci fsl,pins = < 57762306a36Sopenharmony_ci /* PMIC_NINT */ 57862306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO07_GPIO1_IO7 0x80 57962306a36Sopenharmony_ci >; 58062306a36Sopenharmony_ci }; 58162306a36Sopenharmony_ci 58262306a36Sopenharmony_ci pinctrl_pmic_5v: pmic5vgrp { 58362306a36Sopenharmony_ci fsl,pins = < 58462306a36Sopenharmony_ci /* PMIC_5V */ 58562306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO01_GPIO1_IO1 0x80 58662306a36Sopenharmony_ci >; 58762306a36Sopenharmony_ci }; 58862306a36Sopenharmony_ci 58962306a36Sopenharmony_ci pinctrl_prox: proxgrp { 59062306a36Sopenharmony_ci fsl,pins = < 59162306a36Sopenharmony_ci /* INT_LIGHT */ 59262306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_DATA01_GPIO3_IO7 0x80 59362306a36Sopenharmony_ci >; 59462306a36Sopenharmony_ci }; 59562306a36Sopenharmony_ci 59662306a36Sopenharmony_ci pinctrl_rtc: rtcgrp { 59762306a36Sopenharmony_ci fsl,pins = < 59862306a36Sopenharmony_ci /* RTC_INT */ 59962306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9 0x80 60062306a36Sopenharmony_ci >; 60162306a36Sopenharmony_ci }; 60262306a36Sopenharmony_ci 60362306a36Sopenharmony_ci pinctrl_sai2: sai2grp { 60462306a36Sopenharmony_ci fsl,pins = < 60562306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0 0xd6 60662306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC 0xd6 60762306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI2_MCLK_SAI2_MCLK 0xd6 60862306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0 0xd6 60962306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI2_TXC_SAI2_TX_BCLK 0xd6 61062306a36Sopenharmony_ci >; 61162306a36Sopenharmony_ci }; 61262306a36Sopenharmony_ci 61362306a36Sopenharmony_ci pinctrl_sai6: sai6grp { 61462306a36Sopenharmony_ci fsl,pins = < 61562306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI1_RXD5_SAI6_RX_DATA0 0xd6 61662306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI1_RXD6_SAI6_RX_SYNC 0xd6 61762306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI1_TXD4_SAI6_RX_BCLK 0xd6 61862306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI1_TXD5_SAI6_TX_DATA0 0xd6 61962306a36Sopenharmony_ci >; 62062306a36Sopenharmony_ci }; 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_ci pinctrl_tcpc: tcpcgrp { 62362306a36Sopenharmony_ci fsl,pins = < 62462306a36Sopenharmony_ci /* TCPC_INT */ 62562306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO10_GPIO1_IO10 0x01C0 62662306a36Sopenharmony_ci >; 62762306a36Sopenharmony_ci }; 62862306a36Sopenharmony_ci 62962306a36Sopenharmony_ci pinctrl_touch: touchgrp { 63062306a36Sopenharmony_ci fsl,pins = < 63162306a36Sopenharmony_ci /* TP_INT */ 63262306a36Sopenharmony_ci MX8MQ_IOMUXC_ENET_RD1_GPIO1_IO27 0x80 63362306a36Sopenharmony_ci >; 63462306a36Sopenharmony_ci }; 63562306a36Sopenharmony_ci 63662306a36Sopenharmony_ci pinctrl_typec: typecgrp { 63762306a36Sopenharmony_ci fsl,pins = < 63862306a36Sopenharmony_ci /* TYPEC_MUX_EN */ 63962306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO11_GPIO1_IO11 0x83 64062306a36Sopenharmony_ci >; 64162306a36Sopenharmony_ci }; 64262306a36Sopenharmony_ci 64362306a36Sopenharmony_ci pinctrl_uart1: uart1grp { 64462306a36Sopenharmony_ci fsl,pins = < 64562306a36Sopenharmony_ci MX8MQ_IOMUXC_UART1_RXD_UART1_DCE_RX 0x49 64662306a36Sopenharmony_ci MX8MQ_IOMUXC_UART1_TXD_UART1_DCE_TX 0x49 64762306a36Sopenharmony_ci >; 64862306a36Sopenharmony_ci }; 64962306a36Sopenharmony_ci 65062306a36Sopenharmony_ci pinctrl_uart2: uart2grp { 65162306a36Sopenharmony_ci fsl,pins = < 65262306a36Sopenharmony_ci MX8MQ_IOMUXC_UART2_TXD_UART2_DCE_TX 0x49 65362306a36Sopenharmony_ci MX8MQ_IOMUXC_UART2_RXD_UART2_DCE_RX 0x49 65462306a36Sopenharmony_ci >; 65562306a36Sopenharmony_ci }; 65662306a36Sopenharmony_ci 65762306a36Sopenharmony_ci pinctrl_uart3: uart3grp { 65862306a36Sopenharmony_ci fsl,pins = < 65962306a36Sopenharmony_ci MX8MQ_IOMUXC_UART3_RXD_UART3_DCE_RX 0x49 66062306a36Sopenharmony_ci MX8MQ_IOMUXC_UART3_TXD_UART3_DCE_TX 0x49 66162306a36Sopenharmony_ci >; 66262306a36Sopenharmony_ci }; 66362306a36Sopenharmony_ci 66462306a36Sopenharmony_ci pinctrl_uart4: uart4grp { 66562306a36Sopenharmony_ci fsl,pins = < 66662306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI2_SCLK_UART4_DCE_RX 0x49 66762306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI2_MOSI_UART4_DCE_TX 0x49 66862306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI2_MISO_UART4_DCE_CTS_B 0x49 66962306a36Sopenharmony_ci MX8MQ_IOMUXC_ECSPI2_SS0_UART4_DCE_RTS_B 0x49 67062306a36Sopenharmony_ci >; 67162306a36Sopenharmony_ci }; 67262306a36Sopenharmony_ci 67362306a36Sopenharmony_ci pinctrl_usdhc1: usdhc1grp { 67462306a36Sopenharmony_ci fsl,pins = < 67562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x83 67662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xc3 67762306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xc3 67862306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xc3 67962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xc3 68062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xc3 68162306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xc3 68262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xc3 68362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xc3 68462306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xc3 68562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x83 68662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0xc1 68762306a36Sopenharmony_ci >; 68862306a36Sopenharmony_ci }; 68962306a36Sopenharmony_ci 69062306a36Sopenharmony_ci pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp { 69162306a36Sopenharmony_ci fsl,pins = < 69262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x8d 69362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xcd 69462306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xcd 69562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xcd 69662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xcd 69762306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xcd 69862306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xcd 69962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xcd 70062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xcd 70162306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xcd 70262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x8d 70362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0xc1 70462306a36Sopenharmony_ci >; 70562306a36Sopenharmony_ci }; 70662306a36Sopenharmony_ci 70762306a36Sopenharmony_ci pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp { 70862306a36Sopenharmony_ci fsl,pins = < 70962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK 0x9f 71062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD 0xdf 71162306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0 0xdf 71262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1 0xdf 71362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2 0xdf 71462306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3 0xdf 71562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4 0xdf 71662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5 0xdf 71762306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6 0xdf 71862306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7 0xdf 71962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE 0x9f 72062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B 0xc1 72162306a36Sopenharmony_ci >; 72262306a36Sopenharmony_ci }; 72362306a36Sopenharmony_ci 72462306a36Sopenharmony_ci pinctrl_usdhc2: usdhc2grp { 72562306a36Sopenharmony_ci fsl,pins = < 72662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12 0x80 72762306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x83 72862306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xc3 72962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xc3 73062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xc3 73162306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xc3 73262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xc3 73362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_RESET_B_USDHC2_RESET_B 0xc1 73462306a36Sopenharmony_ci >; 73562306a36Sopenharmony_ci }; 73662306a36Sopenharmony_ci 73762306a36Sopenharmony_ci pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp { 73862306a36Sopenharmony_ci fsl,pins = < 73962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12 0x80 74062306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x8d 74162306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xcd 74262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xcd 74362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xcd 74462306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xcd 74562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xcd 74662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_RESET_B_USDHC2_RESET_B 0xc1 74762306a36Sopenharmony_ci >; 74862306a36Sopenharmony_ci }; 74962306a36Sopenharmony_ci 75062306a36Sopenharmony_ci pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp { 75162306a36Sopenharmony_ci fsl,pins = < 75262306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CD_B_GPIO2_IO12 0x80 75362306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK 0x9f 75462306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD 0xcf 75562306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0 0xcf 75662306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1 0xcf 75762306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2 0xcf 75862306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3 0xcf 75962306a36Sopenharmony_ci MX8MQ_IOMUXC_SD2_RESET_B_USDHC2_RESET_B 0xc1 76062306a36Sopenharmony_ci >; 76162306a36Sopenharmony_ci }; 76262306a36Sopenharmony_ci 76362306a36Sopenharmony_ci pinctrl_wifi_disable: wifidisablegrp { 76462306a36Sopenharmony_ci fsl,pins = < 76562306a36Sopenharmony_ci /* WIFI_REG_ON */ 76662306a36Sopenharmony_ci MX8MQ_IOMUXC_SAI3_RXC_GPIO4_IO29 0x83 76762306a36Sopenharmony_ci >; 76862306a36Sopenharmony_ci }; 76962306a36Sopenharmony_ci 77062306a36Sopenharmony_ci pinctrl_wifi_pwr: wifipwrgrp { 77162306a36Sopenharmony_ci fsl,pins = < 77262306a36Sopenharmony_ci /* WIFI3V3_EN */ 77362306a36Sopenharmony_ci MX8MQ_IOMUXC_NAND_DATA04_GPIO3_IO10 0x83 77462306a36Sopenharmony_ci >; 77562306a36Sopenharmony_ci }; 77662306a36Sopenharmony_ci 77762306a36Sopenharmony_ci pinctrl_wdog: wdoggrp { 77862306a36Sopenharmony_ci fsl,pins = < 77962306a36Sopenharmony_ci /* nWDOG */ 78062306a36Sopenharmony_ci MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B 0x1f 78162306a36Sopenharmony_ci >; 78262306a36Sopenharmony_ci }; 78362306a36Sopenharmony_ci}; 78462306a36Sopenharmony_ci 78562306a36Sopenharmony_ci&i2c1 { 78662306a36Sopenharmony_ci clock-frequency = <384000>; 78762306a36Sopenharmony_ci pinctrl-names = "default"; 78862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c1>; 78962306a36Sopenharmony_ci status = "okay"; 79062306a36Sopenharmony_ci 79162306a36Sopenharmony_ci typec_pd: usb-pd@3f { 79262306a36Sopenharmony_ci compatible = "ti,tps6598x"; 79362306a36Sopenharmony_ci reg = <0x3f>; 79462306a36Sopenharmony_ci pinctrl-names = "default"; 79562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_typec>, <&pinctrl_tcpc>; 79662306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 79762306a36Sopenharmony_ci interrupts = <10 IRQ_TYPE_LEVEL_LOW>; 79862306a36Sopenharmony_ci interrupt-names = "irq"; 79962306a36Sopenharmony_ci extcon = <&usb3_phy0>; 80062306a36Sopenharmony_ci wakeup-source; 80162306a36Sopenharmony_ci 80262306a36Sopenharmony_ci connector { 80362306a36Sopenharmony_ci compatible = "usb-c-connector"; 80462306a36Sopenharmony_ci label = "USB-C"; 80562306a36Sopenharmony_ci data-role = "dual"; 80662306a36Sopenharmony_ci 80762306a36Sopenharmony_ci ports { 80862306a36Sopenharmony_ci #address-cells = <1>; 80962306a36Sopenharmony_ci #size-cells = <0>; 81062306a36Sopenharmony_ci 81162306a36Sopenharmony_ci port@0 { 81262306a36Sopenharmony_ci reg = <0>; 81362306a36Sopenharmony_ci 81462306a36Sopenharmony_ci usb_con_hs: endpoint { 81562306a36Sopenharmony_ci remote-endpoint = <&typec_hs>; 81662306a36Sopenharmony_ci }; 81762306a36Sopenharmony_ci }; 81862306a36Sopenharmony_ci 81962306a36Sopenharmony_ci port@1 { 82062306a36Sopenharmony_ci reg = <1>; 82162306a36Sopenharmony_ci 82262306a36Sopenharmony_ci usb_con_ss: endpoint { 82362306a36Sopenharmony_ci remote-endpoint = <&typec_ss>; 82462306a36Sopenharmony_ci }; 82562306a36Sopenharmony_ci }; 82662306a36Sopenharmony_ci }; 82762306a36Sopenharmony_ci }; 82862306a36Sopenharmony_ci }; 82962306a36Sopenharmony_ci 83062306a36Sopenharmony_ci pmic: pmic@4b { 83162306a36Sopenharmony_ci compatible = "rohm,bd71837"; 83262306a36Sopenharmony_ci reg = <0x4b>; 83362306a36Sopenharmony_ci pinctrl-names = "default"; 83462306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_pmic>, <&pinctrl_camera_pwr>; 83562306a36Sopenharmony_ci clocks = <&pmic_osc>; 83662306a36Sopenharmony_ci #clock-cells = <0>; 83762306a36Sopenharmony_ci clock-names = "osc"; 83862306a36Sopenharmony_ci clock-output-names = "pmic_clk"; 83962306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 84062306a36Sopenharmony_ci interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 84162306a36Sopenharmony_ci rohm,reset-snvs-powered; 84262306a36Sopenharmony_ci 84362306a36Sopenharmony_ci regulators { 84462306a36Sopenharmony_ci buck1_reg: BUCK1 { 84562306a36Sopenharmony_ci regulator-name = "buck1"; 84662306a36Sopenharmony_ci regulator-min-microvolt = <700000>; 84762306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 84862306a36Sopenharmony_ci regulator-boot-on; 84962306a36Sopenharmony_ci regulator-ramp-delay = <1250>; 85062306a36Sopenharmony_ci rohm,dvs-run-voltage = <880000>; 85162306a36Sopenharmony_ci rohm,dvs-idle-voltage = <820000>; 85262306a36Sopenharmony_ci rohm,dvs-suspend-voltage = <810000>; 85362306a36Sopenharmony_ci regulator-always-on; 85462306a36Sopenharmony_ci }; 85562306a36Sopenharmony_ci 85662306a36Sopenharmony_ci buck2_reg: BUCK2 { 85762306a36Sopenharmony_ci regulator-name = "buck2"; 85862306a36Sopenharmony_ci regulator-min-microvolt = <700000>; 85962306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 86062306a36Sopenharmony_ci regulator-boot-on; 86162306a36Sopenharmony_ci regulator-ramp-delay = <1250>; 86262306a36Sopenharmony_ci rohm,dvs-run-voltage = <950000>; 86362306a36Sopenharmony_ci rohm,dvs-idle-voltage = <850000>; 86462306a36Sopenharmony_ci regulator-always-on; 86562306a36Sopenharmony_ci }; 86662306a36Sopenharmony_ci 86762306a36Sopenharmony_ci buck3_reg: BUCK3 { 86862306a36Sopenharmony_ci regulator-name = "buck3"; 86962306a36Sopenharmony_ci regulator-min-microvolt = <700000>; 87062306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 87162306a36Sopenharmony_ci regulator-boot-on; 87262306a36Sopenharmony_ci rohm,dvs-run-voltage = <850000>; 87362306a36Sopenharmony_ci }; 87462306a36Sopenharmony_ci 87562306a36Sopenharmony_ci buck4_reg: BUCK4 { 87662306a36Sopenharmony_ci regulator-name = "buck4"; 87762306a36Sopenharmony_ci regulator-min-microvolt = <700000>; 87862306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 87962306a36Sopenharmony_ci rohm,dvs-run-voltage = <930000>; 88062306a36Sopenharmony_ci }; 88162306a36Sopenharmony_ci 88262306a36Sopenharmony_ci buck5_reg: BUCK5 { 88362306a36Sopenharmony_ci regulator-name = "buck5"; 88462306a36Sopenharmony_ci regulator-min-microvolt = <700000>; 88562306a36Sopenharmony_ci regulator-max-microvolt = <1350000>; 88662306a36Sopenharmony_ci regulator-boot-on; 88762306a36Sopenharmony_ci regulator-always-on; 88862306a36Sopenharmony_ci }; 88962306a36Sopenharmony_ci 89062306a36Sopenharmony_ci buck6_reg: BUCK6 { 89162306a36Sopenharmony_ci regulator-name = "buck6"; 89262306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 89362306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 89462306a36Sopenharmony_ci regulator-boot-on; 89562306a36Sopenharmony_ci regulator-always-on; 89662306a36Sopenharmony_ci }; 89762306a36Sopenharmony_ci 89862306a36Sopenharmony_ci buck7_reg: BUCK7 { 89962306a36Sopenharmony_ci regulator-name = "buck7"; 90062306a36Sopenharmony_ci regulator-min-microvolt = <1605000>; 90162306a36Sopenharmony_ci regulator-max-microvolt = <1995000>; 90262306a36Sopenharmony_ci regulator-boot-on; 90362306a36Sopenharmony_ci regulator-always-on; 90462306a36Sopenharmony_ci }; 90562306a36Sopenharmony_ci 90662306a36Sopenharmony_ci buck8_reg: BUCK8 { 90762306a36Sopenharmony_ci regulator-name = "buck8"; 90862306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 90962306a36Sopenharmony_ci regulator-max-microvolt = <1400000>; 91062306a36Sopenharmony_ci regulator-boot-on; 91162306a36Sopenharmony_ci regulator-always-on; 91262306a36Sopenharmony_ci }; 91362306a36Sopenharmony_ci 91462306a36Sopenharmony_ci ldo1_reg: LDO1 { 91562306a36Sopenharmony_ci regulator-name = "ldo1"; 91662306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 91762306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 91862306a36Sopenharmony_ci regulator-boot-on; 91962306a36Sopenharmony_ci /* leave on for snvs power button */ 92062306a36Sopenharmony_ci regulator-always-on; 92162306a36Sopenharmony_ci }; 92262306a36Sopenharmony_ci 92362306a36Sopenharmony_ci ldo2_reg: LDO2 { 92462306a36Sopenharmony_ci regulator-name = "ldo2"; 92562306a36Sopenharmony_ci regulator-min-microvolt = <900000>; 92662306a36Sopenharmony_ci regulator-max-microvolt = <900000>; 92762306a36Sopenharmony_ci regulator-boot-on; 92862306a36Sopenharmony_ci /* leave on for snvs power button */ 92962306a36Sopenharmony_ci regulator-always-on; 93062306a36Sopenharmony_ci }; 93162306a36Sopenharmony_ci 93262306a36Sopenharmony_ci ldo3_reg: LDO3 { 93362306a36Sopenharmony_ci regulator-name = "ldo3"; 93462306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 93562306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 93662306a36Sopenharmony_ci regulator-boot-on; 93762306a36Sopenharmony_ci regulator-always-on; 93862306a36Sopenharmony_ci }; 93962306a36Sopenharmony_ci 94062306a36Sopenharmony_ci ldo4_reg: LDO4 { 94162306a36Sopenharmony_ci regulator-name = "ldo4"; 94262306a36Sopenharmony_ci regulator-min-microvolt = <900000>; 94362306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 94462306a36Sopenharmony_ci regulator-boot-on; 94562306a36Sopenharmony_ci regulator-always-on; 94662306a36Sopenharmony_ci }; 94762306a36Sopenharmony_ci 94862306a36Sopenharmony_ci ldo5_reg: LDO5 { 94962306a36Sopenharmony_ci /* VDD_PHY_0V9 - MIPI and HDMI domains */ 95062306a36Sopenharmony_ci regulator-name = "ldo5"; 95162306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 95262306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 95362306a36Sopenharmony_ci regulator-always-on; 95462306a36Sopenharmony_ci }; 95562306a36Sopenharmony_ci 95662306a36Sopenharmony_ci ldo6_reg: LDO6 { 95762306a36Sopenharmony_ci /* VDD_PHY_0V9 - MIPI, HDMI and USB domains */ 95862306a36Sopenharmony_ci regulator-name = "ldo6"; 95962306a36Sopenharmony_ci regulator-min-microvolt = <900000>; 96062306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 96162306a36Sopenharmony_ci regulator-boot-on; 96262306a36Sopenharmony_ci regulator-always-on; 96362306a36Sopenharmony_ci }; 96462306a36Sopenharmony_ci 96562306a36Sopenharmony_ci ldo7_reg: LDO7 { 96662306a36Sopenharmony_ci /* VDD_PHY_3V3 - USB domain */ 96762306a36Sopenharmony_ci regulator-name = "ldo7"; 96862306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 96962306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 97062306a36Sopenharmony_ci regulator-boot-on; 97162306a36Sopenharmony_ci regulator-always-on; 97262306a36Sopenharmony_ci }; 97362306a36Sopenharmony_ci }; 97462306a36Sopenharmony_ci }; 97562306a36Sopenharmony_ci 97662306a36Sopenharmony_ci rtc@68 { 97762306a36Sopenharmony_ci compatible = "microcrystal,rv4162"; 97862306a36Sopenharmony_ci reg = <0x68>; 97962306a36Sopenharmony_ci pinctrl-names = "default"; 98062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_rtc>; 98162306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 98262306a36Sopenharmony_ci interrupts = <9 IRQ_TYPE_LEVEL_LOW>; 98362306a36Sopenharmony_ci }; 98462306a36Sopenharmony_ci}; 98562306a36Sopenharmony_ci 98662306a36Sopenharmony_ci&i2c2 { 98762306a36Sopenharmony_ci clock-frequency = <384000>; 98862306a36Sopenharmony_ci pinctrl-names = "default"; 98962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c2>; 99062306a36Sopenharmony_ci status = "okay"; 99162306a36Sopenharmony_ci 99262306a36Sopenharmony_ci magnetometer: magnetometer@1e { 99362306a36Sopenharmony_ci compatible = "st,lsm9ds1-magn"; 99462306a36Sopenharmony_ci reg = <0x1e>; 99562306a36Sopenharmony_ci pinctrl-names = "default"; 99662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_mag>; 99762306a36Sopenharmony_ci interrupt-parent = <&gpio3>; 99862306a36Sopenharmony_ci interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; 99962306a36Sopenharmony_ci vdd-supply = <®_vdd_sen>; 100062306a36Sopenharmony_ci vddio-supply = <®_vdd_1v8>; 100162306a36Sopenharmony_ci }; 100262306a36Sopenharmony_ci 100362306a36Sopenharmony_ci regulator@3e { 100462306a36Sopenharmony_ci compatible = "tps65132"; 100562306a36Sopenharmony_ci reg = <0x3e>; 100662306a36Sopenharmony_ci 100762306a36Sopenharmony_ci reg_lcd_avdd: outp { 100862306a36Sopenharmony_ci regulator-name = "LCD_AVDD"; 100962306a36Sopenharmony_ci vin-supply = <®_lcd_3v4>; 101062306a36Sopenharmony_ci }; 101162306a36Sopenharmony_ci 101262306a36Sopenharmony_ci reg_lcd_avee: outn { 101362306a36Sopenharmony_ci regulator-name = "LCD_AVEE"; 101462306a36Sopenharmony_ci vin-supply = <®_lcd_3v4>; 101562306a36Sopenharmony_ci }; 101662306a36Sopenharmony_ci }; 101762306a36Sopenharmony_ci 101862306a36Sopenharmony_ci proximity: prox@60 { 101962306a36Sopenharmony_ci compatible = "vishay,vcnl4040"; 102062306a36Sopenharmony_ci reg = <0x60>; 102162306a36Sopenharmony_ci pinctrl-names = "default"; 102262306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_prox>; 102362306a36Sopenharmony_ci interrupt-parent = <&gpio3>; 102462306a36Sopenharmony_ci interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 102562306a36Sopenharmony_ci }; 102662306a36Sopenharmony_ci 102762306a36Sopenharmony_ci accel_gyro: accel-gyro@6a { 102862306a36Sopenharmony_ci compatible = "st,lsm9ds1-imu"; 102962306a36Sopenharmony_ci reg = <0x6a>; 103062306a36Sopenharmony_ci vdd-supply = <®_vdd_sen>; 103162306a36Sopenharmony_ci vddio-supply = <®_vdd_1v8>; 103262306a36Sopenharmony_ci }; 103362306a36Sopenharmony_ci}; 103462306a36Sopenharmony_ci 103562306a36Sopenharmony_ci&i2c3 { 103662306a36Sopenharmony_ci clock-frequency = <384000>; 103762306a36Sopenharmony_ci pinctrl-names = "default"; 103862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c3>; 103962306a36Sopenharmony_ci status = "okay"; 104062306a36Sopenharmony_ci 104162306a36Sopenharmony_ci codec: audio-codec@1a { 104262306a36Sopenharmony_ci compatible = "wlf,wm8962"; 104362306a36Sopenharmony_ci reg = <0x1a>; 104462306a36Sopenharmony_ci clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>; 104562306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_SAI2>; 104662306a36Sopenharmony_ci assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>; 104762306a36Sopenharmony_ci assigned-clock-rates = <24576000>; 104862306a36Sopenharmony_ci #sound-dai-cells = <0>; 104962306a36Sopenharmony_ci mic-cfg = <0x200>; 105062306a36Sopenharmony_ci DCVDD-supply = <®_aud_1v8>; 105162306a36Sopenharmony_ci DBVDD-supply = <®_aud_1v8>; 105262306a36Sopenharmony_ci AVDD-supply = <®_aud_1v8>; 105362306a36Sopenharmony_ci CPVDD-supply = <®_aud_1v8>; 105462306a36Sopenharmony_ci MICVDD-supply = <®_mic_2v4>; 105562306a36Sopenharmony_ci PLLVDD-supply = <®_aud_1v8>; 105662306a36Sopenharmony_ci SPKVDD1-supply = <®_vsys_3v4>; 105762306a36Sopenharmony_ci SPKVDD2-supply = <®_vsys_3v4>; 105862306a36Sopenharmony_ci gpio-cfg = < 105962306a36Sopenharmony_ci 0x0000 /* n/c */ 106062306a36Sopenharmony_ci 0x0001 /* gpio2, 1: default */ 106162306a36Sopenharmony_ci 0x0013 /* gpio3, 2: dmicclk */ 106262306a36Sopenharmony_ci 0x0000 /* n/c, 3: default */ 106362306a36Sopenharmony_ci 0x8014 /* gpio5, 4: dmic_dat */ 106462306a36Sopenharmony_ci 0x0000 /* gpio6, 5: default */ 106562306a36Sopenharmony_ci >; 106662306a36Sopenharmony_ci }; 106762306a36Sopenharmony_ci 106862306a36Sopenharmony_ci camera_front: camera@20 { 106962306a36Sopenharmony_ci compatible = "hynix,hi846"; 107062306a36Sopenharmony_ci reg = <0x20>; 107162306a36Sopenharmony_ci pinctrl-names = "default"; 107262306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_csi1>; 107362306a36Sopenharmony_ci clocks = <&clk IMX8MQ_CLK_CLKO2>; 107462306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_CLKO2>; 107562306a36Sopenharmony_ci assigned-clock-rates = <25000000>; 107662306a36Sopenharmony_ci reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; 107762306a36Sopenharmony_ci vdda-supply = <®_vcam_2v8>; 107862306a36Sopenharmony_ci vddd-supply = <®_vcam_1v2>; 107962306a36Sopenharmony_ci vddio-supply = <®_csi_1v8>; 108062306a36Sopenharmony_ci rotation = <90>; 108162306a36Sopenharmony_ci orientation = <0>; 108262306a36Sopenharmony_ci 108362306a36Sopenharmony_ci port { 108462306a36Sopenharmony_ci camera1_ep: endpoint { 108562306a36Sopenharmony_ci data-lanes = <1 2>; 108662306a36Sopenharmony_ci link-frequencies = /bits/ 64 108762306a36Sopenharmony_ci <80000000 200000000 300000000>; 108862306a36Sopenharmony_ci remote-endpoint = <&mipi1_sensor_ep>; 108962306a36Sopenharmony_ci }; 109062306a36Sopenharmony_ci }; 109162306a36Sopenharmony_ci }; 109262306a36Sopenharmony_ci 109362306a36Sopenharmony_ci backlight@36 { 109462306a36Sopenharmony_ci compatible = "ti,lm36922"; 109562306a36Sopenharmony_ci reg = <0x36>; 109662306a36Sopenharmony_ci pinctrl-names = "default"; 109762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_bl>; 109862306a36Sopenharmony_ci #address-cells = <1>; 109962306a36Sopenharmony_ci #size-cells = <0>; 110062306a36Sopenharmony_ci enable-gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>; 110162306a36Sopenharmony_ci vled-supply = <®_vsys_3v4>; 110262306a36Sopenharmony_ci ti,ovp-microvolt = <25000000>; 110362306a36Sopenharmony_ci 110462306a36Sopenharmony_ci led_backlight: led@0 { 110562306a36Sopenharmony_ci reg = <0>; 110662306a36Sopenharmony_ci label = ":backlight"; 110762306a36Sopenharmony_ci linux,default-trigger = "backlight"; 110862306a36Sopenharmony_ci led-max-microamp = <20000>; 110962306a36Sopenharmony_ci }; 111062306a36Sopenharmony_ci }; 111162306a36Sopenharmony_ci 111262306a36Sopenharmony_ci touchscreen@38 { 111362306a36Sopenharmony_ci compatible = "edt,edt-ft5506"; 111462306a36Sopenharmony_ci reg = <0x38>; 111562306a36Sopenharmony_ci pinctrl-names = "default"; 111662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_touch>; 111762306a36Sopenharmony_ci interrupt-parent = <&gpio1>; 111862306a36Sopenharmony_ci interrupts = <27 IRQ_TYPE_EDGE_FALLING>; 111962306a36Sopenharmony_ci touchscreen-size-x = <720>; 112062306a36Sopenharmony_ci touchscreen-size-y = <1440>; 112162306a36Sopenharmony_ci vcc-supply = <®_lcd_1v8>; 112262306a36Sopenharmony_ci }; 112362306a36Sopenharmony_ci}; 112462306a36Sopenharmony_ci 112562306a36Sopenharmony_ci&i2c4 { 112662306a36Sopenharmony_ci clock-frequency = <384000>; 112762306a36Sopenharmony_ci pinctrl-names = "default"; 112862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_i2c4>; 112962306a36Sopenharmony_ci status = "okay"; 113062306a36Sopenharmony_ci 113162306a36Sopenharmony_ci vcm@c { 113262306a36Sopenharmony_ci compatible = "dongwoon,dw9714"; 113362306a36Sopenharmony_ci reg = <0x0c>; 113462306a36Sopenharmony_ci vcc-supply = <®_csi_1v8>; 113562306a36Sopenharmony_ci }; 113662306a36Sopenharmony_ci 113762306a36Sopenharmony_ci bat: fuel-gauge@36 { 113862306a36Sopenharmony_ci compatible = "maxim,max17055"; 113962306a36Sopenharmony_ci reg = <0x36>; 114062306a36Sopenharmony_ci interrupt-parent = <&gpio3>; 114162306a36Sopenharmony_ci interrupts = <20 IRQ_TYPE_LEVEL_LOW>; 114262306a36Sopenharmony_ci pinctrl-names = "default"; 114362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_gauge>; 114462306a36Sopenharmony_ci power-supplies = <&bq25895>; 114562306a36Sopenharmony_ci maxim,over-heat-temp = <700>; 114662306a36Sopenharmony_ci maxim,over-volt = <4500>; 114762306a36Sopenharmony_ci maxim,rsns-microohm = <5000>; 114862306a36Sopenharmony_ci }; 114962306a36Sopenharmony_ci 115062306a36Sopenharmony_ci bq25895: charger@6a { 115162306a36Sopenharmony_ci compatible = "ti,bq25895", "ti,bq25890"; 115262306a36Sopenharmony_ci reg = <0x6a>; 115362306a36Sopenharmony_ci pinctrl-names = "default"; 115462306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_charger_in>; 115562306a36Sopenharmony_ci interrupt-parent = <&gpio3>; 115662306a36Sopenharmony_ci interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 115762306a36Sopenharmony_ci phys = <&usb3_phy0>; 115862306a36Sopenharmony_ci ti,battery-regulation-voltage = <4208000>; /* uV */ 115962306a36Sopenharmony_ci ti,termination-current = <128000>; /* uA */ 116062306a36Sopenharmony_ci ti,precharge-current = <128000>; /* uA */ 116162306a36Sopenharmony_ci ti,minimum-sys-voltage = <3700000>; /* uV */ 116262306a36Sopenharmony_ci ti,boost-voltage = <5000000>; /* uV */ 116362306a36Sopenharmony_ci ti,boost-max-current = <1500000>; /* uA */ 116462306a36Sopenharmony_ci ti,use-vinmin-threshold = <1>; /* enable VINDPM */ 116562306a36Sopenharmony_ci ti,vinmin-threshold = <3900000>; /* uV */ 116662306a36Sopenharmony_ci monitored-battery = <&bat>; 116762306a36Sopenharmony_ci power-supplies = <&typec_pd>; 116862306a36Sopenharmony_ci }; 116962306a36Sopenharmony_ci}; 117062306a36Sopenharmony_ci 117162306a36Sopenharmony_ci&lcdif { 117262306a36Sopenharmony_ci status = "okay"; 117362306a36Sopenharmony_ci}; 117462306a36Sopenharmony_ci 117562306a36Sopenharmony_ci&mipi_csi1 { 117662306a36Sopenharmony_ci assigned-clock-rates = <266000000>, <200000000>, <66000000>; 117762306a36Sopenharmony_ci status = "okay"; 117862306a36Sopenharmony_ci 117962306a36Sopenharmony_ci ports { 118062306a36Sopenharmony_ci port@0 { 118162306a36Sopenharmony_ci reg = <0>; 118262306a36Sopenharmony_ci 118362306a36Sopenharmony_ci mipi1_sensor_ep: endpoint { 118462306a36Sopenharmony_ci remote-endpoint = <&camera1_ep>; 118562306a36Sopenharmony_ci data-lanes = <1 2>; 118662306a36Sopenharmony_ci }; 118762306a36Sopenharmony_ci }; 118862306a36Sopenharmony_ci }; 118962306a36Sopenharmony_ci}; 119062306a36Sopenharmony_ci 119162306a36Sopenharmony_ci&mipi_dsi { 119262306a36Sopenharmony_ci #address-cells = <1>; 119362306a36Sopenharmony_ci #size-cells = <0>; 119462306a36Sopenharmony_ci status = "okay"; 119562306a36Sopenharmony_ci 119662306a36Sopenharmony_ci lcd_panel: panel@0 { 119762306a36Sopenharmony_ci compatible = "mantix,mlaf057we51-x"; 119862306a36Sopenharmony_ci reg = <0>; 119962306a36Sopenharmony_ci pinctrl-names = "default"; 120062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_dsirst>; 120162306a36Sopenharmony_ci avdd-supply = <®_lcd_avdd>; 120262306a36Sopenharmony_ci avee-supply = <®_lcd_avee>; 120362306a36Sopenharmony_ci vddi-supply = <®_lcd_1v8>; 120462306a36Sopenharmony_ci backlight = <&backlight_dsi>; 120562306a36Sopenharmony_ci reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>; 120662306a36Sopenharmony_ci mantix,tp-rstn-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>; 120762306a36Sopenharmony_ci 120862306a36Sopenharmony_ci port { 120962306a36Sopenharmony_ci panel_in: endpoint { 121062306a36Sopenharmony_ci remote-endpoint = <&mipi_dsi_out>; 121162306a36Sopenharmony_ci }; 121262306a36Sopenharmony_ci }; 121362306a36Sopenharmony_ci }; 121462306a36Sopenharmony_ci 121562306a36Sopenharmony_ci ports { 121662306a36Sopenharmony_ci port@1 { 121762306a36Sopenharmony_ci reg = <1>; 121862306a36Sopenharmony_ci 121962306a36Sopenharmony_ci mipi_dsi_out: endpoint { 122062306a36Sopenharmony_ci remote-endpoint = <&panel_in>; 122162306a36Sopenharmony_ci }; 122262306a36Sopenharmony_ci }; 122362306a36Sopenharmony_ci }; 122462306a36Sopenharmony_ci}; 122562306a36Sopenharmony_ci 122662306a36Sopenharmony_ci&pgc_gpu { 122762306a36Sopenharmony_ci power-supply = <&buck3_reg>; 122862306a36Sopenharmony_ci}; 122962306a36Sopenharmony_ci 123062306a36Sopenharmony_ci&pgc_mipi { 123162306a36Sopenharmony_ci power-supply = <&ldo5_reg>; 123262306a36Sopenharmony_ci}; 123362306a36Sopenharmony_ci 123462306a36Sopenharmony_ci&pgc_vpu { 123562306a36Sopenharmony_ci power-supply = <&buck4_reg>; 123662306a36Sopenharmony_ci}; 123762306a36Sopenharmony_ci 123862306a36Sopenharmony_ci&pwm1 { 123962306a36Sopenharmony_ci pinctrl-names = "default"; 124062306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_haptic>; 124162306a36Sopenharmony_ci status = "okay"; 124262306a36Sopenharmony_ci}; 124362306a36Sopenharmony_ci 124462306a36Sopenharmony_ci&pwm2 { 124562306a36Sopenharmony_ci pinctrl-names = "default"; 124662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_led_b>; 124762306a36Sopenharmony_ci status = "okay"; 124862306a36Sopenharmony_ci}; 124962306a36Sopenharmony_ci 125062306a36Sopenharmony_ci&pwm3 { 125162306a36Sopenharmony_ci pinctrl-names = "default"; 125262306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_led_r>; 125362306a36Sopenharmony_ci status = "okay"; 125462306a36Sopenharmony_ci}; 125562306a36Sopenharmony_ci 125662306a36Sopenharmony_ci&pwm4 { 125762306a36Sopenharmony_ci pinctrl-names = "default"; 125862306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_led_g>; 125962306a36Sopenharmony_ci status = "okay"; 126062306a36Sopenharmony_ci}; 126162306a36Sopenharmony_ci 126262306a36Sopenharmony_ci&sai2 { 126362306a36Sopenharmony_ci pinctrl-names = "default"; 126462306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_sai2>; 126562306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_SAI2>; 126662306a36Sopenharmony_ci assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>; 126762306a36Sopenharmony_ci assigned-clock-rates = <24576000>; 126862306a36Sopenharmony_ci status = "okay"; 126962306a36Sopenharmony_ci}; 127062306a36Sopenharmony_ci 127162306a36Sopenharmony_ci&sai6 { 127262306a36Sopenharmony_ci pinctrl-names = "default"; 127362306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_sai6>; 127462306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_SAI6>; 127562306a36Sopenharmony_ci assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>; 127662306a36Sopenharmony_ci assigned-clock-rates = <24576000>; 127762306a36Sopenharmony_ci fsl,sai-synchronous-rx; 127862306a36Sopenharmony_ci status = "okay"; 127962306a36Sopenharmony_ci}; 128062306a36Sopenharmony_ci 128162306a36Sopenharmony_ci&snvs_pwrkey { 128262306a36Sopenharmony_ci status = "okay"; 128362306a36Sopenharmony_ci}; 128462306a36Sopenharmony_ci 128562306a36Sopenharmony_ci&snvs_rtc { 128662306a36Sopenharmony_ci status = "disabled"; 128762306a36Sopenharmony_ci}; 128862306a36Sopenharmony_ci 128962306a36Sopenharmony_ci&uart1 { /* console */ 129062306a36Sopenharmony_ci pinctrl-names = "default"; 129162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart1>; 129262306a36Sopenharmony_ci status = "okay"; 129362306a36Sopenharmony_ci}; 129462306a36Sopenharmony_ci 129562306a36Sopenharmony_ci&uart2 { /* TPS - GPS - DEBUG */ 129662306a36Sopenharmony_ci pinctrl-names = "default"; 129762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart2>; 129862306a36Sopenharmony_ci status = "okay"; 129962306a36Sopenharmony_ci 130062306a36Sopenharmony_ci gnss { 130162306a36Sopenharmony_ci compatible = "globaltop,pa6h"; 130262306a36Sopenharmony_ci vcc-supply = <®_gnss>; 130362306a36Sopenharmony_ci current-speed = <9600>; 130462306a36Sopenharmony_ci }; 130562306a36Sopenharmony_ci}; 130662306a36Sopenharmony_ci 130762306a36Sopenharmony_ci&uart3 { /* SMC */ 130862306a36Sopenharmony_ci pinctrl-names = "default"; 130962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart3>; 131062306a36Sopenharmony_ci status = "okay"; 131162306a36Sopenharmony_ci}; 131262306a36Sopenharmony_ci 131362306a36Sopenharmony_ci&uart4 { /* BT */ 131462306a36Sopenharmony_ci pinctrl-names = "default"; 131562306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart4>; 131662306a36Sopenharmony_ci uart-has-rtscts; 131762306a36Sopenharmony_ci status = "okay"; 131862306a36Sopenharmony_ci}; 131962306a36Sopenharmony_ci 132062306a36Sopenharmony_ci&usb3_phy0 { 132162306a36Sopenharmony_ci status = "okay"; 132262306a36Sopenharmony_ci}; 132362306a36Sopenharmony_ci 132462306a36Sopenharmony_ci&usb3_phy1 { 132562306a36Sopenharmony_ci vbus-supply = <®_hub>; 132662306a36Sopenharmony_ci status = "okay"; 132762306a36Sopenharmony_ci}; 132862306a36Sopenharmony_ci 132962306a36Sopenharmony_ci&usb_dwc3_0 { 133062306a36Sopenharmony_ci #address-cells = <1>; 133162306a36Sopenharmony_ci #size-cells = <0>; 133262306a36Sopenharmony_ci dr_mode = "otg"; 133362306a36Sopenharmony_ci usb-role-switch; 133462306a36Sopenharmony_ci status = "okay"; 133562306a36Sopenharmony_ci 133662306a36Sopenharmony_ci port@0 { 133762306a36Sopenharmony_ci reg = <0>; 133862306a36Sopenharmony_ci 133962306a36Sopenharmony_ci typec_hs: endpoint { 134062306a36Sopenharmony_ci remote-endpoint = <&usb_con_hs>; 134162306a36Sopenharmony_ci }; 134262306a36Sopenharmony_ci }; 134362306a36Sopenharmony_ci 134462306a36Sopenharmony_ci port@1 { 134562306a36Sopenharmony_ci reg = <1>; 134662306a36Sopenharmony_ci 134762306a36Sopenharmony_ci typec_ss: endpoint { 134862306a36Sopenharmony_ci remote-endpoint = <&usb_con_ss>; 134962306a36Sopenharmony_ci }; 135062306a36Sopenharmony_ci }; 135162306a36Sopenharmony_ci}; 135262306a36Sopenharmony_ci 135362306a36Sopenharmony_ci&usb_dwc3_1 { 135462306a36Sopenharmony_ci dr_mode = "host"; 135562306a36Sopenharmony_ci status = "okay"; 135662306a36Sopenharmony_ci #address-cells = <1>; 135762306a36Sopenharmony_ci #size-cells = <0>; 135862306a36Sopenharmony_ci 135962306a36Sopenharmony_ci /* Microchip USB2642 */ 136062306a36Sopenharmony_ci hub@1 { 136162306a36Sopenharmony_ci compatible = "usb424,2640"; 136262306a36Sopenharmony_ci reg = <1>; 136362306a36Sopenharmony_ci #address-cells = <1>; 136462306a36Sopenharmony_ci #size-cells = <0>; 136562306a36Sopenharmony_ci 136662306a36Sopenharmony_ci mass-storage@1 { 136762306a36Sopenharmony_ci compatible = "usb424,4041"; 136862306a36Sopenharmony_ci reg = <1>; 136962306a36Sopenharmony_ci }; 137062306a36Sopenharmony_ci }; 137162306a36Sopenharmony_ci}; 137262306a36Sopenharmony_ci 137362306a36Sopenharmony_ci&usdhc1 { 137462306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>; 137562306a36Sopenharmony_ci assigned-clock-rates = <400000000>; 137662306a36Sopenharmony_ci pinctrl-names = "default", "state_100mhz", "state_200mhz"; 137762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usdhc1>; 137862306a36Sopenharmony_ci pinctrl-1 = <&pinctrl_usdhc1_100mhz>; 137962306a36Sopenharmony_ci pinctrl-2 = <&pinctrl_usdhc1_200mhz>; 138062306a36Sopenharmony_ci bus-width = <8>; 138162306a36Sopenharmony_ci vmmc-supply = <®_vdd_3v3>; 138262306a36Sopenharmony_ci vqmmc-supply = <®_vdd_1v8>; 138362306a36Sopenharmony_ci non-removable; 138462306a36Sopenharmony_ci status = "okay"; 138562306a36Sopenharmony_ci}; 138662306a36Sopenharmony_ci 138762306a36Sopenharmony_ci&usdhc2 { 138862306a36Sopenharmony_ci assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>; 138962306a36Sopenharmony_ci assigned-clock-rates = <200000000>; 139062306a36Sopenharmony_ci pinctrl-names = "default", "state_100mhz", "state_200mhz"; 139162306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_usdhc2>; 139262306a36Sopenharmony_ci pinctrl-1 = <&pinctrl_usdhc2_100mhz>; 139362306a36Sopenharmony_ci pinctrl-2 = <&pinctrl_usdhc2_200mhz>; 139462306a36Sopenharmony_ci bus-width = <4>; 139562306a36Sopenharmony_ci vmmc-supply = <®_wifi_3v3>; 139662306a36Sopenharmony_ci mmc-pwrseq = <&usdhc2_pwrseq>; 139762306a36Sopenharmony_ci post-power-on-delay-ms = <20>; 139862306a36Sopenharmony_ci cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>; 139962306a36Sopenharmony_ci max-frequency = <100000000>; 140062306a36Sopenharmony_ci disable-wp; 140162306a36Sopenharmony_ci cap-sdio-irq; 140262306a36Sopenharmony_ci keep-power-in-suspend; 140362306a36Sopenharmony_ci wakeup-source; 140462306a36Sopenharmony_ci status = "okay"; 140562306a36Sopenharmony_ci}; 140662306a36Sopenharmony_ci 140762306a36Sopenharmony_ci&wdog1 { 140862306a36Sopenharmony_ci pinctrl-names = "default"; 140962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_wdog>; 141062306a36Sopenharmony_ci fsl,ext-reset-output; 141162306a36Sopenharmony_ci status = "okay"; 141262306a36Sopenharmony_ci}; 141362306a36Sopenharmony_ci 141462306a36Sopenharmony_ci&a53_opp_table { 141562306a36Sopenharmony_ci opp-1000000000 { 141662306a36Sopenharmony_ci opp-microvolt = <850000>; 141762306a36Sopenharmony_ci }; 141862306a36Sopenharmony_ci 141962306a36Sopenharmony_ci opp-1500000000 { 142062306a36Sopenharmony_ci opp-microvolt = <950000>; 142162306a36Sopenharmony_ci }; 142262306a36Sopenharmony_ci}; 1423