// SPDX-License-Identifier: GPL-2.0 #include #include #include "qcom-apq8064-v2.0.dtsi" #include "pm8821.dtsi" #include "pm8921.dtsi" / { model = "CompuLab CM-QS600"; compatible = "qcom,apq8064-cm-qs600", "qcom,apq8064"; aliases { serial0 = &gsbi7_serial; }; chosen { stdout-path = "serial0:115200n8"; }; sdcc4_pwrseq: pwrseq-sdcc4 { pinctrl-names = "default"; pinctrl-0 = <&wlan_default_gpios>; compatible = "mmc-pwrseq-simple"; reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>; }; /* on board fixed 3.3v supply */ v3p3_fixed: regulator-v3p3 { compatible = "regulator-fixed"; regulator-name = "PCIE V3P3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; }; &gsbi1 { qcom,mode = ; status = "okay"; }; &gsbi1_i2c { clock-frequency = <200000>; status = "okay"; eeprom@50 { compatible = "atmel,24c02"; reg = <0x50>; pagesize = <32>; }; }; &gsbi7 { qcom,mode = ; status = "okay"; }; &gsbi7_serial { pinctrl-names = "default"; pinctrl-0 = <&gsbi7_uart_2pins>; status = "okay"; }; &pcie { vdda-supply = <&pm8921_s3>; vdda_phy-supply = <&pm8921_lvs6>; vdda_refclk-supply = <&v3p3_fixed>; pinctrl-0 = <&pcie_pins>; pinctrl-names = "default"; perst-gpios = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>; status = "okay"; }; &pm8821 { interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>; }; &pm8921 { interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>; }; &pm8921_gpio { wlan_default_gpios: wlan-gpios-state { pinconf { pins = "gpio43"; function = "normal"; bias-disable; power-source = ; }; }; }; &rpm { regulators { compatible = "qcom,rpm-pm8921-regulators"; vin_lvs1_3_6-supply = <&pm8921_s4>; vin_lvs2-supply = <&pm8921_s1>; vin_lvs4_5_7-supply = <&pm8921_s4>; vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; vdd_l24-supply = <&pm8921_s1>; vdd_l25-supply = <&pm8921_s1>; vdd_l26-supply = <&pm8921_s7>; vdd_l27-supply = <&pm8921_s7>; vdd_l28-supply = <&pm8921_s7>; /* Buck SMPS */ pm8921_s1: s1 { regulator-always-on; regulator-min-microvolt = <1225000>; regulator-max-microvolt = <1225000>; qcom,switch-mode-frequency = <3200000>; bias-pull-down; }; pm8921_s3: s3 { regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1400000>; qcom,switch-mode-frequency = <4800000>; }; pm8921_s4: s4 { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; qcom,switch-mode-frequency = <3200000>; }; pm8921_s7: s7 { regulator-min-microvolt = <1300000>; regulator-max-microvolt = <1300000>; qcom,switch-mode-frequency = <3200000>; }; pm8921_l3: l3 { regulator-min-microvolt = <3050000>; regulator-max-microvolt = <3300000>; bias-pull-down; }; pm8921_l4: l4 { regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1800000>; bias-pull-down; }; pm8921_l5: l5 { regulator-min-microvolt = <2750000>; regulator-max-microvolt = <3000000>; bias-pull-down; }; pm8921_l23: l23 { regulator-min-microvolt = <1700000>; regulator-max-microvolt = <1900000>; bias-pull-down; }; pm8921_lvs6: lvs6 { bias-pull-down; }; }; }; /* eMMC */ &sdcc1 { vmmc-supply = <&pm8921_l5>; vqmmc-supply = <&pm8921_s4>; status = "okay"; }; /* External micro SD card */ &sdcc3 { vmmc-supply = <&v3p3_fixed>; pinctrl-names = "default"; pinctrl-0 = <&card_detect>; cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>; status = "okay"; }; /* WLAN */ &sdcc4 { status = "okay"; vmmc-supply = <&v3p3_fixed>; vqmmc-supply = <&v3p3_fixed>; mmc-pwrseq = <&sdcc4_pwrseq>; }; &tlmm_pinmux { card_detect: card_detect { mux { pins = "gpio26"; function = "gpio"; bias-disable; }; }; pcie_pins: pcie_pinmux { mux { pins = "gpio27"; function = "gpio"; }; conf { pins = "gpio27"; drive-strength = <12>; bias-disable; }; }; }; &usb_hs1_phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l4>; }; &usb_hs3_phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l23>; }; &usb_hs4_phy { v3p3-supply = <&pm8921_l3>; v1p8-supply = <&pm8921_l23>; }; /* OTG */ &usb1 { dr_mode = "otg"; status = "okay"; }; &usb3 { dr_mode = "host"; status = "okay"; }; &usb4 { dr_mode = "host"; status = "okay"; };