162306a36Sopenharmony_ci// SPDX-License-Identifier: BSD-3-Clause 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci/dts-v1/; 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include "msm8996.dtsi" 662306a36Sopenharmony_ci#include "pm8994.dtsi" 762306a36Sopenharmony_ci#include "pmi8994.dtsi" 862306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 962306a36Sopenharmony_ci#include <dt-bindings/input/input.h> 1062306a36Sopenharmony_ci#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci/ { 1362306a36Sopenharmony_ci model = "Inforce 6640 Single Board Computer"; 1462306a36Sopenharmony_ci compatible = "inforce,ifc6640", "qcom,apq8096-sbc", "qcom,apq8096"; 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci qcom,msm-id = <291 0x00030001>; 1762306a36Sopenharmony_ci qcom,board-id = <0x00010018 0>; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci aliases { 2062306a36Sopenharmony_ci serial0 = &blsp2_uart2; 2162306a36Sopenharmony_ci }; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci chosen { 2462306a36Sopenharmony_ci stdout-path = "serial0:115200n8"; 2562306a36Sopenharmony_ci }; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci v1p05: v1p05-regulator { 2862306a36Sopenharmony_ci compatible = "regulator-fixed"; 2962306a36Sopenharmony_ci regulator-name = "v1p05"; 3062306a36Sopenharmony_ci regulator-always-on; 3162306a36Sopenharmony_ci regulator-boot-on; 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci regulator-min-microvolt = <1050000>; 3462306a36Sopenharmony_ci regulator-max-microvolt = <1050000>; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci vin-supply = <&v5p0>; 3762306a36Sopenharmony_ci }; 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci v12_poe: v12-poe-regulator { 4062306a36Sopenharmony_ci compatible = "regulator-fixed"; 4162306a36Sopenharmony_ci regulator-name = "v12_poe"; 4262306a36Sopenharmony_ci regulator-always-on; 4362306a36Sopenharmony_ci regulator-boot-on; 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci regulator-min-microvolt = <12000000>; 4662306a36Sopenharmony_ci regulator-max-microvolt = <12000000>; 4762306a36Sopenharmony_ci }; 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci v3p3: v3p3-regulator { 5062306a36Sopenharmony_ci compatible = "regulator-fixed"; 5162306a36Sopenharmony_ci regulator-name = "v3p3"; 5262306a36Sopenharmony_ci regulator-always-on; 5362306a36Sopenharmony_ci regulator-boot-on; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 5662306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci vin-supply = <&v12_poe>; 5962306a36Sopenharmony_ci }; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci v5p0: v5p0-regulator { 6262306a36Sopenharmony_ci compatible = "regulator-fixed"; 6362306a36Sopenharmony_ci regulator-name = "v5p0"; 6462306a36Sopenharmony_ci regulator-always-on; 6562306a36Sopenharmony_ci regulator-boot-on; 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci regulator-min-microvolt = <5000000>; 6862306a36Sopenharmony_ci regulator-max-microvolt = <5000000>; 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci vin-supply = <&v12_poe>; 7162306a36Sopenharmony_ci }; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci vph_pwr: vph-pwr-regulator { 7462306a36Sopenharmony_ci compatible = "regulator-fixed"; 7562306a36Sopenharmony_ci regulator-name = "vph_pwr"; 7662306a36Sopenharmony_ci regulator-always-on; 7762306a36Sopenharmony_ci regulator-boot-on; 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci regulator-min-microvolt = <3800000>; 8062306a36Sopenharmony_ci regulator-max-microvolt = <3800000>; 8162306a36Sopenharmony_ci }; 8262306a36Sopenharmony_ci}; 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ci&blsp2_uart2 { 8562306a36Sopenharmony_ci status = "okay"; 8662306a36Sopenharmony_ci pinctrl-names = "default", "sleep"; 8762306a36Sopenharmony_ci pinctrl-0 = <&blsp2_uart2_2pins_default>; 8862306a36Sopenharmony_ci pinctrl-1 = <&blsp2_uart2_2pins_sleep>; 8962306a36Sopenharmony_ci}; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci&gpu { 9262306a36Sopenharmony_ci status = "okay"; 9362306a36Sopenharmony_ci}; 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci&mdss { 9662306a36Sopenharmony_ci status = "okay"; 9762306a36Sopenharmony_ci}; 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci&mdss_hdmi { 10062306a36Sopenharmony_ci status = "okay"; 10162306a36Sopenharmony_ci}; 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci&mdss_hdmi_phy { 10462306a36Sopenharmony_ci status = "okay"; 10562306a36Sopenharmony_ci}; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci&sdc2_state_on { 10862306a36Sopenharmony_ci cd-pins { 10962306a36Sopenharmony_ci pins = "gpio38"; 11062306a36Sopenharmony_ci function = "gpio"; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci bias-pull-up; 11362306a36Sopenharmony_ci drive-strength = <16>; 11462306a36Sopenharmony_ci }; 11562306a36Sopenharmony_ci}; 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci&sdc2_state_off { 11862306a36Sopenharmony_ci cd-pins { 11962306a36Sopenharmony_ci pins = "gpio38"; 12062306a36Sopenharmony_ci function = "gpio"; 12162306a36Sopenharmony_ci bias-pull-up; 12262306a36Sopenharmony_ci drive-strength = <2>; 12362306a36Sopenharmony_ci }; 12462306a36Sopenharmony_ci}; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci&rpm_requests { 12762306a36Sopenharmony_ci regulators-0 { 12862306a36Sopenharmony_ci compatible = "qcom,rpm-pm8994-regulators"; 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ci vdd_s1-supply = <&vph_pwr>; 13162306a36Sopenharmony_ci vdd_s2-supply = <&vph_pwr>; 13262306a36Sopenharmony_ci vdd_s3-supply = <&vph_pwr>; 13362306a36Sopenharmony_ci vdd_s4-supply = <&vph_pwr>; 13462306a36Sopenharmony_ci vdd_s5-supply = <&vph_pwr>; 13562306a36Sopenharmony_ci vdd_s6-supply = <&vph_pwr>; 13662306a36Sopenharmony_ci vdd_s7-supply = <&vph_pwr>; 13762306a36Sopenharmony_ci vdd_s8-supply = <&vph_pwr>; 13862306a36Sopenharmony_ci vdd_s9-supply = <&vph_pwr>; 13962306a36Sopenharmony_ci vdd_s10-supply = <&vph_pwr>; 14062306a36Sopenharmony_ci vdd_s11-supply = <&vph_pwr>; 14162306a36Sopenharmony_ci vdd_s12-supply = <&vph_pwr>; 14262306a36Sopenharmony_ci vdd_l2_l26_l28-supply = <&vreg_s3a_1p3>; 14362306a36Sopenharmony_ci vdd_l3_l11-supply = <&vreg_s3a_1p3>; 14462306a36Sopenharmony_ci vdd_l4_l27_l31-supply = <&vreg_s3a_1p3>; 14562306a36Sopenharmony_ci vdd_l5_l7-supply = <&vreg_s5a_2p15>; 14662306a36Sopenharmony_ci vdd_l6_l12_l32-supply = <&vreg_s5a_2p15>; 14762306a36Sopenharmony_ci vdd_l8_l16_l30-supply = <&vph_pwr>; 14862306a36Sopenharmony_ci vdd_l25-supply = <&vreg_s3a_1p3>; 14962306a36Sopenharmony_ci vdd_lvs1_2-supply = <&vreg_s4a_1p8>; 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci vreg_s3a_1p3: s3 { 15262306a36Sopenharmony_ci regulator-name = "vreg_s3a_1p3"; 15362306a36Sopenharmony_ci regulator-min-microvolt = <1300000>; 15462306a36Sopenharmony_ci regulator-max-microvolt = <1300000>; 15562306a36Sopenharmony_ci }; 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci vreg_s4a_1p8: s4 { 15862306a36Sopenharmony_ci regulator-name = "vreg_s4a_1p8"; 15962306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 16062306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 16162306a36Sopenharmony_ci regulator-always-on; 16262306a36Sopenharmony_ci }; 16362306a36Sopenharmony_ci vreg_s5a_2p15: s5 { 16462306a36Sopenharmony_ci regulator-name = "vreg_s5a_2p15"; 16562306a36Sopenharmony_ci regulator-min-microvolt = <2150000>; 16662306a36Sopenharmony_ci regulator-max-microvolt = <2150000>; 16762306a36Sopenharmony_ci }; 16862306a36Sopenharmony_ci vreg_s7a_1p0: s7 { 16962306a36Sopenharmony_ci regulator-name = "vreg_s7a_1p0"; 17062306a36Sopenharmony_ci regulator-min-microvolt = <800000>; 17162306a36Sopenharmony_ci regulator-max-microvolt = <800000>; 17262306a36Sopenharmony_ci }; 17362306a36Sopenharmony_ci 17462306a36Sopenharmony_ci vreg_l1a_1p0: l1 { 17562306a36Sopenharmony_ci regulator-name = "vreg_l1a_1p0"; 17662306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 17762306a36Sopenharmony_ci regulator-max-microvolt = <1000000>; 17862306a36Sopenharmony_ci }; 17962306a36Sopenharmony_ci vreg_l2a_1p25: l2 { 18062306a36Sopenharmony_ci regulator-name = "vreg_l2a_1p25"; 18162306a36Sopenharmony_ci regulator-min-microvolt = <1250000>; 18262306a36Sopenharmony_ci regulator-max-microvolt = <1250000>; 18362306a36Sopenharmony_ci }; 18462306a36Sopenharmony_ci vreg_l3a_0p875: l3 { 18562306a36Sopenharmony_ci regulator-name = "vreg_l3a_0p875"; 18662306a36Sopenharmony_ci regulator-min-microvolt = <850000>; 18762306a36Sopenharmony_ci regulator-max-microvolt = <850000>; 18862306a36Sopenharmony_ci }; 18962306a36Sopenharmony_ci vreg_l4a_1p225: l4 { 19062306a36Sopenharmony_ci regulator-name = "vreg_l4a_1p225"; 19162306a36Sopenharmony_ci regulator-min-microvolt = <1225000>; 19262306a36Sopenharmony_ci regulator-max-microvolt = <1225000>; 19362306a36Sopenharmony_ci }; 19462306a36Sopenharmony_ci vreg_l6a_1p2: l6 { 19562306a36Sopenharmony_ci regulator-name = "vreg_l6a_1p2"; 19662306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 19762306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 19862306a36Sopenharmony_ci }; 19962306a36Sopenharmony_ci vreg_l8a_1p8: l8 { 20062306a36Sopenharmony_ci regulator-name = "vreg_l8a_1p8"; 20162306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 20262306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 20362306a36Sopenharmony_ci }; 20462306a36Sopenharmony_ci vreg_l9a_1p8: l9 { 20562306a36Sopenharmony_ci regulator-name = "vreg_l9a_1p8"; 20662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 20762306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 20862306a36Sopenharmony_ci }; 20962306a36Sopenharmony_ci vreg_l10a_1p8: l10 { 21062306a36Sopenharmony_ci regulator-name = "vreg_l10a_1p8"; 21162306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 21262306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 21362306a36Sopenharmony_ci }; 21462306a36Sopenharmony_ci vreg_l11a_1p15: l11 { 21562306a36Sopenharmony_ci regulator-name = "vreg_l11a_1p15"; 21662306a36Sopenharmony_ci regulator-min-microvolt = <1150000>; 21762306a36Sopenharmony_ci regulator-max-microvolt = <1150000>; 21862306a36Sopenharmony_ci }; 21962306a36Sopenharmony_ci vreg_l12a_1p8: l12 { 22062306a36Sopenharmony_ci regulator-name = "vreg_l12a_1p8"; 22162306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 22262306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 22362306a36Sopenharmony_ci }; 22462306a36Sopenharmony_ci vreg_l13a_2p95: l13 { 22562306a36Sopenharmony_ci regulator-name = "vreg_l13a_2p95"; 22662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 22762306a36Sopenharmony_ci regulator-max-microvolt = <2950000>; 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci vreg_l14a_1p8: l14 { 23062306a36Sopenharmony_ci regulator-name = "vreg_l14a_1p8"; 23162306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 23262306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 23362306a36Sopenharmony_ci }; 23462306a36Sopenharmony_ci vreg_l15a_1p8: l15 { 23562306a36Sopenharmony_ci regulator-name = "vreg_l15a_1p8"; 23662306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 23762306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 23862306a36Sopenharmony_ci }; 23962306a36Sopenharmony_ci vreg_l16a_2p7: l16 { 24062306a36Sopenharmony_ci regulator-name = "vreg_l16a_2p7"; 24162306a36Sopenharmony_ci regulator-min-microvolt = <2700000>; 24262306a36Sopenharmony_ci regulator-max-microvolt = <2700000>; 24362306a36Sopenharmony_ci }; 24462306a36Sopenharmony_ci vreg_l17a_2p8: l17 { 24562306a36Sopenharmony_ci regulator-name = "vreg_l17a_2p8"; 24662306a36Sopenharmony_ci regulator-min-microvolt = <2500000>; 24762306a36Sopenharmony_ci regulator-max-microvolt = <2500000>; 24862306a36Sopenharmony_ci }; 24962306a36Sopenharmony_ci vreg_l18a_2p85: l18 { 25062306a36Sopenharmony_ci regulator-name = "vreg_l18a_2p85"; 25162306a36Sopenharmony_ci regulator-min-microvolt = <2700000>; 25262306a36Sopenharmony_ci regulator-max-microvolt = <2900000>; 25362306a36Sopenharmony_ci }; 25462306a36Sopenharmony_ci vreg_l19a_2p8: l19 { 25562306a36Sopenharmony_ci regulator-name = "vreg_l19a_2p8"; 25662306a36Sopenharmony_ci regulator-min-microvolt = <3000000>; 25762306a36Sopenharmony_ci regulator-max-microvolt = <3000000>; 25862306a36Sopenharmony_ci }; 25962306a36Sopenharmony_ci vreg_l20a_2p95: l20 { 26062306a36Sopenharmony_ci regulator-name = "vreg_l20a_2p95"; 26162306a36Sopenharmony_ci regulator-min-microvolt = <2950000>; 26262306a36Sopenharmony_ci regulator-max-microvolt = <2950000>; 26362306a36Sopenharmony_ci regulator-allow-set-load; 26462306a36Sopenharmony_ci }; 26562306a36Sopenharmony_ci vreg_l21a_2p95: l21 { 26662306a36Sopenharmony_ci regulator-name = "vreg_l21a_2p95"; 26762306a36Sopenharmony_ci regulator-min-microvolt = <2950000>; 26862306a36Sopenharmony_ci regulator-max-microvolt = <2950000>; 26962306a36Sopenharmony_ci }; 27062306a36Sopenharmony_ci vreg_l22a_3p0: l22 { 27162306a36Sopenharmony_ci regulator-name = "vreg_l22a_3p0"; 27262306a36Sopenharmony_ci regulator-min-microvolt = <3300000>; 27362306a36Sopenharmony_ci regulator-max-microvolt = <3300000>; 27462306a36Sopenharmony_ci }; 27562306a36Sopenharmony_ci vreg_l23a_2p8: l23 { 27662306a36Sopenharmony_ci regulator-name = "vreg_l23a_2p8"; 27762306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 27862306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 27962306a36Sopenharmony_ci }; 28062306a36Sopenharmony_ci vreg_l24a_3p075: l24 { 28162306a36Sopenharmony_ci regulator-name = "vreg_l24a_3p075"; 28262306a36Sopenharmony_ci regulator-min-microvolt = <3075000>; 28362306a36Sopenharmony_ci regulator-max-microvolt = <3075000>; 28462306a36Sopenharmony_ci }; 28562306a36Sopenharmony_ci vreg_l25a_1p2: l25 { 28662306a36Sopenharmony_ci regulator-name = "vreg_l25a_1p2"; 28762306a36Sopenharmony_ci regulator-min-microvolt = <1200000>; 28862306a36Sopenharmony_ci regulator-max-microvolt = <1200000>; 28962306a36Sopenharmony_ci regulator-allow-set-load; 29062306a36Sopenharmony_ci }; 29162306a36Sopenharmony_ci vreg_l26a_0p8: l27 { 29262306a36Sopenharmony_ci regulator-name = "vreg_l26a_0p8"; 29362306a36Sopenharmony_ci regulator-min-microvolt = <1000000>; 29462306a36Sopenharmony_ci regulator-max-microvolt = <1000000>; 29562306a36Sopenharmony_ci }; 29662306a36Sopenharmony_ci vreg_l28a_0p925: l28 { 29762306a36Sopenharmony_ci regulator-name = "vreg_l28a_0p925"; 29862306a36Sopenharmony_ci regulator-min-microvolt = <925000>; 29962306a36Sopenharmony_ci regulator-max-microvolt = <925000>; 30062306a36Sopenharmony_ci regulator-allow-set-load; 30162306a36Sopenharmony_ci }; 30262306a36Sopenharmony_ci vreg_l29a_2p8: l29 { 30362306a36Sopenharmony_ci regulator-name = "vreg_l29a_2p8"; 30462306a36Sopenharmony_ci regulator-min-microvolt = <2800000>; 30562306a36Sopenharmony_ci regulator-max-microvolt = <2800000>; 30662306a36Sopenharmony_ci }; 30762306a36Sopenharmony_ci vreg_l30a_1p8: l30 { 30862306a36Sopenharmony_ci regulator-name = "vreg_l30a_1p8"; 30962306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 31062306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 31162306a36Sopenharmony_ci }; 31262306a36Sopenharmony_ci vreg_l32a_1p8: l32 { 31362306a36Sopenharmony_ci regulator-name = "vreg_l32a_1p8"; 31462306a36Sopenharmony_ci regulator-min-microvolt = <1800000>; 31562306a36Sopenharmony_ci regulator-max-microvolt = <1800000>; 31662306a36Sopenharmony_ci }; 31762306a36Sopenharmony_ci 31862306a36Sopenharmony_ci vreg_lvs1a_1p8: lvs1 { 31962306a36Sopenharmony_ci regulator-name = "vreg_lvs1a_1p8"; 32062306a36Sopenharmony_ci }; 32162306a36Sopenharmony_ci 32262306a36Sopenharmony_ci vreg_lvs2a_1p8: lvs2 { 32362306a36Sopenharmony_ci regulator-name = "vreg_lvs2a_1p8"; 32462306a36Sopenharmony_ci }; 32562306a36Sopenharmony_ci }; 32662306a36Sopenharmony_ci}; 32762306a36Sopenharmony_ci 32862306a36Sopenharmony_ci&sdhc2 { 32962306a36Sopenharmony_ci status = "okay"; 33062306a36Sopenharmony_ci 33162306a36Sopenharmony_ci bus-width = <4>; 33262306a36Sopenharmony_ci 33362306a36Sopenharmony_ci cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; 33462306a36Sopenharmony_ci 33562306a36Sopenharmony_ci vmmc-supply = <&vreg_l21a_2p95>; 33662306a36Sopenharmony_ci vqmmc-supply = <&vreg_l13a_2p95>; 33762306a36Sopenharmony_ci}; 33862306a36Sopenharmony_ci 33962306a36Sopenharmony_ci&ufshc { 34062306a36Sopenharmony_ci status = "okay"; 34162306a36Sopenharmony_ci 34262306a36Sopenharmony_ci vcc-supply = <&vreg_l20a_2p95>; 34362306a36Sopenharmony_ci vccq-supply = <&vreg_l25a_1p2>; 34462306a36Sopenharmony_ci vccq2-supply = <&vreg_s4a_1p8>; 34562306a36Sopenharmony_ci 34662306a36Sopenharmony_ci vcc-max-microamp = <600000>; 34762306a36Sopenharmony_ci vccq-max-microamp = <450000>; 34862306a36Sopenharmony_ci vccq2-max-microamp = <450000>; 34962306a36Sopenharmony_ci}; 35062306a36Sopenharmony_ci 35162306a36Sopenharmony_ci&ufsphy { 35262306a36Sopenharmony_ci status = "okay"; 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_ci vdda-phy-supply = <&vreg_l28a_0p925>; 35562306a36Sopenharmony_ci vdda-pll-supply = <&vreg_l12a_1p8>; 35662306a36Sopenharmony_ci}; 35762306a36Sopenharmony_ci 35862306a36Sopenharmony_ci&venus { 35962306a36Sopenharmony_ci status = "okay"; 36062306a36Sopenharmony_ci}; 361