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