blob: 209eb21cea008f4c56a0c1ed29abf1153415c02e [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001// SPDX-License-Identifier: GPL-2.0
Mike Rapoport7dac24b2014-10-01 19:09:11 +03002#include "qcom-apq8064-v2.0.dtsi"
Srinivas Kandagatlaf0b6d952015-09-18 13:32:05 +01003#include <dt-bindings/gpio/gpio.h>
4#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
Mike Rapoport7dac24b2014-10-01 19:09:11 +03005
6/ {
7 model = "CompuLab CM-QS600";
8 compatible = "qcom,apq8064-cm-qs600", "qcom,apq8064";
9
Stephen Boyd4e19db12015-06-16 14:31:45 -070010 aliases {
11 serial0 = &gsbi7_serial;
12 };
13
14 chosen {
15 stdout-path = "serial0:115200n8";
16 };
17
Srinivas Kandagatlaf0b6d952015-09-18 13:32:05 +010018 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
Mike Rapoport7dac24b2014-10-01 19:09:11 +030032 soc {
Srinivas Kandagatla8eb84482015-09-18 13:32:18 +010033 pinctrl@800000 {
34 card_detect: card_detect {
35 mux {
36 pins = "gpio26";
37 function = "gpio";
38 bias-disable;
39 };
40 };
Srinivas Kandagatla9d0801a2016-02-23 14:14:14 +000041
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 };
Srinivas Kandagatla8eb84482015-09-18 13:32:18 +010053 };
54
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010055 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 */
Bjorn Andersson2bce6e22015-10-22 11:13:49 -070070 s1 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010071 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
Bjorn Andersson2bce6e22015-10-22 11:13:49 -070078 s3 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010079 regulator-min-microvolt = <1000000>;
80 regulator-max-microvolt = <1400000>;
81 qcom,switch-mode-frequency = <4800000>;
82 };
83
Bjorn Andersson2bce6e22015-10-22 11:13:49 -070084 s4 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010085 regulator-min-microvolt = <1800000>;
86 regulator-max-microvolt = <1800000>;
87 qcom,switch-mode-frequency = <3200000>;
88 };
89
Bjorn Andersson2bce6e22015-10-22 11:13:49 -070090 s7 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010091 regulator-min-microvolt = <1300000>;
92 regulator-max-microvolt = <1300000>;
93 qcom,switch-mode-frequency = <3200000>;
94 };
95
Bjorn Andersson2bce6e22015-10-22 11:13:49 -070096 l3 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +010097 regulator-min-microvolt = <3050000>;
98 regulator-max-microvolt = <3300000>;
99 bias-pull-down;
100 };
101
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700102 l4 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +0100103 regulator-min-microvolt = <1000000>;
104 regulator-max-microvolt = <1800000>;
105 bias-pull-down;
106 };
107
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700108 l5 {
Srinivas Kandagatlabaff39e2015-07-28 09:13:05 +0100109 regulator-min-microvolt = <2750000>;
110 regulator-max-microvolt = <3000000>;
111 bias-pull-down;
112 };
113
Bjorn Andersson2bce6e22015-10-22 11:13:49 -0700114 l23 {
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +0100115 regulator-min-microvolt = <1700000>;
116 regulator-max-microvolt = <1900000>;
117 bias-pull-down;
118 };
Srinivas Kandagatla9d0801a2016-02-23 14:14:14 +0000119
120 pm8921_lvs6: lvs6 {
121 bias-pull-down;
122 };
123
Srinivas Kandagatla1a621d32015-04-10 21:44:05 +0100124 };
125 };
126
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300127 gsbi@12440000 {
128 status = "okay";
129 qcom,mode = <GSBI_PROT_I2C>;
130
131 i2c@12460000 {
132 status = "okay";
133 clock-frequency = <200000>;
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300134
Srinivas Kandagatla2c9c2e52015-09-18 13:30:59 +0100135 eeprom@50 {
Bartosz Golaszewskiee2137a2018-01-24 22:30:30 +0100136 compatible = "atmel,24c02";
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300137 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";
Srinivas Kandagatlabe87cd02015-09-18 13:31:53 +0100148 pinctrl-names = "default";
149 pinctrl-0 = <&gsbi7_uart_2pins>;
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300150 };
151 };
152
Nicolas Dechesne08372ce2015-04-10 21:44:23 +0100153 /* OTG */
Stephen Boydb9932922017-01-26 16:47:27 -0800154 usb@12500000 {
Nicolas Dechesne08372ce2015-04-10 21:44:23 +0100155 status = "ok";
Stephen Boydb9932922017-01-26 16:47:27 -0800156 dr_mode = "otg";
157 ulpi {
158 phy {
159 v3p3-supply = <&pm8921_l3>;
160 v1p8-supply = <&pm8921_l4>;
161 };
162 };
Nicolas Dechesne08372ce2015-04-10 21:44:23 +0100163 };
164
Stephen Boydb9932922017-01-26 16:47:27 -0800165 usb@12520000 {
Nicolas Dechesne84db78b2015-04-10 21:44:15 +0100166 status = "okay";
Stephen Boydb9932922017-01-26 16:47:27 -0800167 dr_mode = "host";
168 ulpi {
169 phy {
170 v3p3-supply = <&pm8921_l3>;
171 v1p8-supply = <&pm8921_l23>;
172 };
173 };
Nicolas Dechesne84db78b2015-04-10 21:44:15 +0100174 };
175
Stephen Boydb9932922017-01-26 16:47:27 -0800176 usb@12530000 {
Nicolas Dechesne84db78b2015-04-10 21:44:15 +0100177 status = "okay";
Stephen Boydb9932922017-01-26 16:47:27 -0800178 dr_mode = "host";
179 ulpi {
180 phy {
181 v3p3-supply = <&pm8921_l3>;
182 v1p8-supply = <&pm8921_l23>;
183 };
184 };
Nicolas Dechesne84db78b2015-04-10 21:44:15 +0100185 };
186
Srinivas Kandagatlabaff39e2015-07-28 09:13:05 +0100187 /* 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
Srinivas Kandagatlaf0b6d952015-09-18 13:32:05 +0100196 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
Srinivas Kandagatla9d0801a2016-02-23 14:14:14 +0000211 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
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300221 amba {
222 /* eMMC */
223 sdcc1: sdcc@12400000 {
224 status = "okay";
Srinivas Kandagatlabaff39e2015-07-28 09:13:05 +0100225 vmmc-supply = <&pm8921_l5>;
226 vqmmc-supply = <&pm8921_s4>;
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300227 };
228
229 /* External micro SD card */
230 sdcc3: sdcc@12180000 {
231 status = "okay";
Srinivas Kandagatlabaff39e2015-07-28 09:13:05 +0100232 vmmc-supply = <&v3p3_fixed>;
Srinivas Kandagatla8eb84482015-09-18 13:32:18 +0100233 pinctrl-names = "default";
234 pinctrl-0 = <&card_detect>;
235 cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300236 };
237 /* WLAN */
238 sdcc4: sdcc@121c0000 {
239 status = "okay";
Srinivas Kandagatlabaff39e2015-07-28 09:13:05 +0100240 vmmc-supply = <&v3p3_fixed>;
241 vqmmc-supply = <&v3p3_fixed>;
Srinivas Kandagatlaf0b6d952015-09-18 13:32:05 +0100242 mmc-pwrseq = <&sdcc4_pwrseq>;
Mike Rapoport7dac24b2014-10-01 19:09:11 +0300243 };
244 };
245 };
246};