1// SPDX-License-Identifier: GPL-2.0 2#include "qcom-apq8064-v2.0.dtsi" 3#include <dt-bindings/gpio/gpio.h> 4#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> 5 6/ { 7 model = "CompuLab CM-QS600"; 8 compatible = "qcom,apq8064-cm-qs600", "qcom,apq8064"; 9 10 aliases { 11 serial0 = &gsbi7_serial; 12 }; 13 14 chosen { 15 stdout-path = "serial0:115200n8"; 16 }; 17 18 sdcc4_pwrseq: pwrseq-sdcc4 { 19 pinctrl-names = "default"; 20 pinctrl-0 = <&wlan_default_gpios>; 21 compatible = "mmc-pwrseq-simple"; 22 reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>; 23 }; 24 25 /* on board fixed 3.3v supply */ 26 v3p3_fixed: regulator-v3p3 { 27 compatible = "regulator-fixed"; 28 regulator-name = "PCIE V3P3"; 29 regulator-min-microvolt = <3300000>; 30 regulator-max-microvolt = <3300000>; 31 regulator-always-on; 32 }; 33}; 34 35&gsbi1 { 36 qcom,mode = <GSBI_PROT_I2C>; 37 status = "okay"; 38}; 39 40&gsbi1_i2c { 41 clock-frequency = <200000>; 42 status = "okay"; 43 44 eeprom@50 { 45 compatible = "atmel,24c02"; 46 reg = <0x50>; 47 pagesize = <32>; 48 }; 49}; 50 51&gsbi7 { 52 qcom,mode = <GSBI_PROT_I2C_UART>; 53 status = "okay"; 54}; 55 56&gsbi7_serial { 57 pinctrl-names = "default"; 58 pinctrl-0 = <&gsbi7_uart_2pins>; 59 status = "okay"; 60}; 61 62&pcie { 63 vdda-supply = <&pm8921_s3>; 64 vdda_phy-supply = <&pm8921_lvs6>; 65 vdda_refclk-supply = <&v3p3_fixed>; 66 pinctrl-0 = <&pcie_pins>; 67 pinctrl-names = "default"; 68 perst-gpios = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>; 69 status = "okay"; 70}; 71 72&pm8921_gpio { 73 wlan_default_gpios: wlan-gpios-state { 74 pinconf { 75 pins = "gpio43"; 76 function = "normal"; 77 bias-disable; 78 power-source = <PM8921_GPIO_S4>; 79 }; 80 }; 81}; 82 83&rpm { 84 regulators { 85 vin_lvs1_3_6-supply = <&pm8921_s4>; 86 vin_lvs2-supply = <&pm8921_s1>; 87 vin_lvs4_5_7-supply = <&pm8921_s4>; 88 89 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>; 90 vdd_l24-supply = <&pm8921_s1>; 91 vdd_l25-supply = <&pm8921_s1>; 92 vdd_l26-supply = <&pm8921_s7>; 93 vdd_l27-supply = <&pm8921_s7>; 94 vdd_l28-supply = <&pm8921_s7>; 95 96 97 /* Buck SMPS */ 98 s1 { 99 regulator-always-on; 100 regulator-min-microvolt = <1225000>; 101 regulator-max-microvolt = <1225000>; 102 qcom,switch-mode-frequency = <3200000>; 103 bias-pull-down; 104 }; 105 106 s3 { 107 regulator-min-microvolt = <1000000>; 108 regulator-max-microvolt = <1400000>; 109 qcom,switch-mode-frequency = <4800000>; 110 }; 111 112 s4 { 113 regulator-min-microvolt = <1800000>; 114 regulator-max-microvolt = <1800000>; 115 qcom,switch-mode-frequency = <3200000>; 116 }; 117 118 s7 { 119 regulator-min-microvolt = <1300000>; 120 regulator-max-microvolt = <1300000>; 121 qcom,switch-mode-frequency = <3200000>; 122 }; 123 124 l3 { 125 regulator-min-microvolt = <3050000>; 126 regulator-max-microvolt = <3300000>; 127 bias-pull-down; 128 }; 129 130 l4 { 131 regulator-min-microvolt = <1000000>; 132 regulator-max-microvolt = <1800000>; 133 bias-pull-down; 134 }; 135 136 l5 { 137 regulator-min-microvolt = <2750000>; 138 regulator-max-microvolt = <3000000>; 139 bias-pull-down; 140 }; 141 142 l23 { 143 regulator-min-microvolt = <1700000>; 144 regulator-max-microvolt = <1900000>; 145 bias-pull-down; 146 }; 147 148 lvs6 { 149 bias-pull-down; 150 }; 151 152 }; 153}; 154 155/* eMMC */ 156&sdcc1 { 157 vmmc-supply = <&pm8921_l5>; 158 vqmmc-supply = <&pm8921_s4>; 159 status = "okay"; 160}; 161 162/* External micro SD card */ 163&sdcc3 { 164 vmmc-supply = <&v3p3_fixed>; 165 pinctrl-names = "default"; 166 pinctrl-0 = <&card_detect>; 167 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>; 168 status = "okay"; 169}; 170 171/* WLAN */ 172&sdcc4 { 173 status = "okay"; 174 vmmc-supply = <&v3p3_fixed>; 175 vqmmc-supply = <&v3p3_fixed>; 176 mmc-pwrseq = <&sdcc4_pwrseq>; 177}; 178 179&tlmm_pinmux { 180 card_detect: card_detect { 181 mux { 182 pins = "gpio26"; 183 function = "gpio"; 184 bias-disable; 185 }; 186 }; 187 188 pcie_pins: pcie_pinmux { 189 mux { 190 pins = "gpio27"; 191 function = "gpio"; 192 }; 193 conf { 194 pins = "gpio27"; 195 drive-strength = <12>; 196 bias-disable; 197 }; 198 }; 199}; 200 201&usb_hs1_phy { 202 v3p3-supply = <&pm8921_l3>; 203 v1p8-supply = <&pm8921_l4>; 204}; 205 206&usb_hs3_phy { 207 v3p3-supply = <&pm8921_l3>; 208 v1p8-supply = <&pm8921_l23>; 209}; 210 211&usb_hs4_phy { 212 v3p3-supply = <&pm8921_l3>; 213 v1p8-supply = <&pm8921_l23>; 214}; 215 216/* OTG */ 217&usb1 { 218 dr_mode = "otg"; 219 status = "okay"; 220}; 221 222&usb3 { 223 dr_mode = "host"; 224 status = "okay"; 225}; 226 227&usb4 { 228 dr_mode = "host"; 229 status = "okay"; 230}; 231