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