blob: 87823256ec03fc4aa35eeed6895969a0e273fa02 [file] [log] [blame]
Maria Yu6451c372017-09-28 17:04:28 +08001/*
Sachin Bhayaree25c1f02018-01-16 14:04:54 +05302 * Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
Maria Yu6451c372017-09-28 17:04:28 +08003 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 and
6 * only version 2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
Srinivas Ramanac2dd3782018-02-23 18:21:53 +053014#include <dt-bindings/gpio/gpio.h>
15#include <dt-bindings/clock/msm-clocks-8953.h>
Soumya Managoli91ec9502018-01-18 16:53:47 +053016#include "msm8953-audio-cdp.dtsi"
Vijay kumar Tumati408b0962018-03-16 17:28:31 +053017#include "msm8953-camera-sensor-cdp.dtsi"
Soumya Managoli91ec9502018-01-18 16:53:47 +053018
Maria Yu6451c372017-09-28 17:04:28 +080019&blsp1_uart0 {
20 status = "ok";
21 pinctrl-names = "default";
22 pinctrl-0 = <&uart_console_active>;
23};
Sayali Lokhande31299932017-12-06 09:41:17 +053024
Rohit Rangwani7e9dc742018-01-18 17:26:19 +053025&pm8953_gpios {
26 nfc_clk {
27 nfc_clk_default: nfc_clk_default {
28 pins = "gpio2";
29 function = "normal";
30 input-enable;
31 power-source = <1>;
32 };
33 };
34};
35
36&i2c_5 { /* BLSP2 QUP1 (NFC) */
37 status = "ok";
38 nq@28 {
39 compatible = "qcom,nq-nci";
40 reg = <0x28>;
41 qcom,nq-irq = <&tlmm 17 0x00>;
42 qcom,nq-ven = <&tlmm 16 0x00>;
43 qcom,nq-firm = <&tlmm 62 0x00>;
44 qcom,nq-clkreq = <&pm8953_gpios 2 0x00>;
45 interrupt-parent = <&tlmm>;
46 qcom,clk-src = "BBCLK2";
47 interrupts = <17 0>;
48 interrupt-names = "nfc_irq";
49 pinctrl-names = "nfc_active", "nfc_suspend";
50 pinctrl-0 = <&nfc_int_active &nfc_disable_active
51 &nfc_clk_default>;
52 pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>;
53 clocks = <&clock_gcc clk_bb_clk2_pin>;
54 clock-names = "ref_clk";
55 };
56};
57
Sayali Lokhande31299932017-12-06 09:41:17 +053058&sdhc_1 {
59 /* device core power supply */
60 vdd-supply = <&pm8953_l8>;
61 qcom,vdd-voltage-level = <2900000 2900000>;
62 qcom,vdd-current-level = <200 570000>;
63
64 /* device communication power supply */
65 vdd-io-supply = <&pm8953_l5>;
66 qcom,vdd-io-always-on;
67 qcom,vdd-io-lpm-sup;
68 qcom,vdd-io-voltage-level = <1800000 1800000>;
69 qcom,vdd-io-current-level = <200 325000>;
70
71 pinctrl-names = "active", "sleep";
72 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>;
73 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>;
74
75 qcom,clk-rates = <400000 20000000 25000000 50000000 100000000 192000000
76 384000000>;
77 qcom,nonremovable;
78 qcom,bus-speed-mode = "HS400_1p8v", "HS200_1p8v", "DDR_1p8v";
79
80 status = "ok";
81};
82
83&sdhc_2 {
84 /* device core power supply */
85 vdd-supply = <&pm8953_l11>;
86 qcom,vdd-voltage-level = <2950000 2950000>;
87 qcom,vdd-current-level = <15000 800000>;
88
89 /* device communication power supply */
90 vdd-io-supply = <&pm8953_l12>;
91 qcom,vdd-io-voltage-level = <1800000 2950000>;
92 qcom,vdd-io-current-level = <200 22000>;
93
94 pinctrl-names = "active", "sleep";
95 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
96 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
97
98 #address-cells = <0>;
99 interrupt-parent = <&sdhc_2>;
100 interrupts = <0 1 2>;
101 #interrupt-cells = <1>;
102 interrupt-map-mask = <0xffffffff>;
103 interrupt-map = <0 &intc 0 125 0
104 1 &intc 0 221 0
105 2 &tlmm 133 0>;
106 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
107 cd-gpios = <&tlmm 133 0x1>;
108
109 qcom,clk-rates = <400000 20000000 25000000 50000000 100000000
110 200000000>;
111 qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104";
112
113 status = "ok";
114};
Sachin Bhayaree25c1f02018-01-16 14:04:54 +0530115
116#include "msm8953-mdss-panels.dtsi"
117
118&mdss_mdp {
119 qcom,mdss-pref-prim-intf = "dsi";
120};
121
122&mdss_dsi {
123 hw-config = "single_dsi";
124};
125
126&mdss_dsi0 {
127 qcom,dsi-pref-prim-pan = <&dsi_truly_1080_vid>;
128 pinctrl-names = "mdss_default", "mdss_sleep";
129 pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
130 pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
131
132 qcom,platform-te-gpio = <&tlmm 24 0>;
133 qcom,platform-reset-gpio = <&tlmm 61 0>;
134 qcom,platform-bklight-en-gpio = <&tlmm 59 0>;
135};
136
137&mdss_dsi1 {
138 status = "disabled";
139 qcom,dsi-pref-prim-pan = <&dsi_adv7533_1080p>;
140 pinctrl-names = "mdss_default", "mdss_sleep";
141 pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
142 pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
143
144 qcom,pluggable;
145 qcom,platform-te-gpio = <&tlmm 24 0>;
146 qcom,platform-reset-gpio = <&tlmm 61 0>;
147 qcom,platform-bklight-en-gpio = <&tlmm 59 0>;
148};
149
150&dsi_truly_1080_vid {
151 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
152 qcom,mdss-dsi-pan-enable-dynamic-fps;
153 qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp";
154};
155
Vishnuvardhan Prodduturi886d44e2018-01-25 18:29:43 +0530156&dsi_hx8399c_truly_vid {
157 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
158 qcom,mdss-dsi-pan-enable-dynamic-fps;
159 qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp";
160};
161
Sachin Bhayaree25c1f02018-01-16 14:04:54 +0530162&dsi_truly_1080_cmd {
163 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
164 qcom,ulps-enabled;
165 qcom,partial-update-enabled;
166 qcom,panel-roi-alignment = <2 2 4 2 1080 2>;
167};
168
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530169&soc {
170 gpio_keys {
171 compatible = "gpio-keys";
172 input-name = "gpio-keys";
Shantanu Jaina9295272018-03-16 16:21:14 +0530173 pinctrl-names = "default";
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530174 pinctrl-0 = <&gpio_key_active>;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530175
176 camera_focus {
177 label = "camera_focus";
178 gpios = <&tlmm 87 0x1>;
179 linux,input-type = <1>;
180 linux,code = <0x210>;
181 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530182 linux,can-disable;
183 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530184 };
185
186 camera_snapshot {
187 label = "camera_snapshot";
188 gpios = <&tlmm 86 0x1>;
189 linux,input-type = <1>;
190 linux,code = <0x2fe>;
191 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530192 linux,can-disable;
193 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530194 };
195
196 vol_up {
197 label = "volume_up";
198 gpios = <&tlmm 85 0x1>;
199 linux,input-type = <1>;
200 linux,code = <115>;
201 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530202 linux,can-disable;
203 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530204 };
205
206 home {
207 label = "home";
208 gpios = <&tlmm 88 0x1>;
209 linux,input-type = <1>;
210 linux,code = <102>;
211 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530212 linux,can-disable;
213 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530214 };
215 };
216};
217
218&tlmm {
219 tlmm_gpio_key {
220 gpio_key_active: gpio_key_active {
221 mux {
222 pins = "gpio85", "gpio86", "gpio87", "gpio88";
223 function = "gpio";
224 };
225
226 config {
227 pins = "gpio85", "gpio86", "gpio87", "gpio88";
228 };
229 };
230
231 gpio_key_suspend: gpio_key_suspend {
232 mux {
233 pins = "gpio85", "gpio86", "gpio87", "gpio88";
234 function = "gpio";
235 };
236
237 config {
238 pins = "gpio85", "gpio86", "gpio87", "gpio88";
239 };
240 };
241 };
242};
243