blob: 9b78253faeca96503232b25ae3b7d5e6c300abb1 [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>;
c_pbembrf65da362018-03-28 18:50:16 +053045 qcom,nq-esepwr = <&tlmm 141 0x00>;
Rohit Rangwani7e9dc742018-01-18 17:26:19 +053046 interrupt-parent = <&tlmm>;
47 qcom,clk-src = "BBCLK2";
48 interrupts = <17 0>;
49 interrupt-names = "nfc_irq";
50 pinctrl-names = "nfc_active", "nfc_suspend";
51 pinctrl-0 = <&nfc_int_active &nfc_disable_active
52 &nfc_clk_default>;
53 pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>;
54 clocks = <&clock_gcc clk_bb_clk2_pin>;
55 clock-names = "ref_clk";
56 };
57};
58
Sayali Lokhande31299932017-12-06 09:41:17 +053059&sdhc_1 {
60 /* device core power supply */
61 vdd-supply = <&pm8953_l8>;
62 qcom,vdd-voltage-level = <2900000 2900000>;
63 qcom,vdd-current-level = <200 570000>;
64
65 /* device communication power supply */
66 vdd-io-supply = <&pm8953_l5>;
67 qcom,vdd-io-always-on;
68 qcom,vdd-io-lpm-sup;
69 qcom,vdd-io-voltage-level = <1800000 1800000>;
70 qcom,vdd-io-current-level = <200 325000>;
71
72 pinctrl-names = "active", "sleep";
73 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>;
74 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>;
75
76 qcom,clk-rates = <400000 20000000 25000000 50000000 100000000 192000000
77 384000000>;
78 qcom,nonremovable;
79 qcom,bus-speed-mode = "HS400_1p8v", "HS200_1p8v", "DDR_1p8v";
80
81 status = "ok";
82};
83
84&sdhc_2 {
85 /* device core power supply */
86 vdd-supply = <&pm8953_l11>;
87 qcom,vdd-voltage-level = <2950000 2950000>;
88 qcom,vdd-current-level = <15000 800000>;
89
90 /* device communication power supply */
91 vdd-io-supply = <&pm8953_l12>;
92 qcom,vdd-io-voltage-level = <1800000 2950000>;
93 qcom,vdd-io-current-level = <200 22000>;
94
95 pinctrl-names = "active", "sleep";
96 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
97 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
98
99 #address-cells = <0>;
100 interrupt-parent = <&sdhc_2>;
101 interrupts = <0 1 2>;
102 #interrupt-cells = <1>;
103 interrupt-map-mask = <0xffffffff>;
104 interrupt-map = <0 &intc 0 125 0
105 1 &intc 0 221 0
106 2 &tlmm 133 0>;
107 interrupt-names = "hc_irq", "pwr_irq", "status_irq";
108 cd-gpios = <&tlmm 133 0x1>;
109
110 qcom,clk-rates = <400000 20000000 25000000 50000000 100000000
111 200000000>;
112 qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104";
113
114 status = "ok";
115};
Sachin Bhayaree25c1f02018-01-16 14:04:54 +0530116
117#include "msm8953-mdss-panels.dtsi"
118
119&mdss_mdp {
120 qcom,mdss-pref-prim-intf = "dsi";
121};
122
123&mdss_dsi {
124 hw-config = "single_dsi";
125};
126
127&mdss_dsi0 {
128 qcom,dsi-pref-prim-pan = <&dsi_truly_1080_vid>;
129 pinctrl-names = "mdss_default", "mdss_sleep";
130 pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
131 pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
132
133 qcom,platform-te-gpio = <&tlmm 24 0>;
134 qcom,platform-reset-gpio = <&tlmm 61 0>;
135 qcom,platform-bklight-en-gpio = <&tlmm 59 0>;
136};
137
138&mdss_dsi1 {
139 status = "disabled";
140 qcom,dsi-pref-prim-pan = <&dsi_adv7533_1080p>;
141 pinctrl-names = "mdss_default", "mdss_sleep";
142 pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
143 pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
144
145 qcom,pluggable;
146 qcom,platform-te-gpio = <&tlmm 24 0>;
147 qcom,platform-reset-gpio = <&tlmm 61 0>;
148 qcom,platform-bklight-en-gpio = <&tlmm 59 0>;
149};
150
151&dsi_truly_1080_vid {
152 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
153 qcom,mdss-dsi-pan-enable-dynamic-fps;
154 qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp";
155};
156
Vishnuvardhan Prodduturi886d44e2018-01-25 18:29:43 +0530157&dsi_hx8399c_truly_vid {
158 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
159 qcom,mdss-dsi-pan-enable-dynamic-fps;
160 qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp";
161};
162
Sachin Bhayaree25c1f02018-01-16 14:04:54 +0530163&dsi_truly_1080_cmd {
164 qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
165 qcom,ulps-enabled;
166 qcom,partial-update-enabled;
167 qcom,panel-roi-alignment = <2 2 4 2 1080 2>;
168};
169
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530170&soc {
171 gpio_keys {
172 compatible = "gpio-keys";
173 input-name = "gpio-keys";
Shantanu Jaina9295272018-03-16 16:21:14 +0530174 pinctrl-names = "default";
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530175 pinctrl-0 = <&gpio_key_active>;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530176
177 camera_focus {
178 label = "camera_focus";
179 gpios = <&tlmm 87 0x1>;
180 linux,input-type = <1>;
181 linux,code = <0x210>;
182 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530183 linux,can-disable;
184 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530185 };
186
187 camera_snapshot {
188 label = "camera_snapshot";
189 gpios = <&tlmm 86 0x1>;
190 linux,input-type = <1>;
191 linux,code = <0x2fe>;
192 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530193 linux,can-disable;
194 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530195 };
196
197 vol_up {
198 label = "volume_up";
199 gpios = <&tlmm 85 0x1>;
200 linux,input-type = <1>;
201 linux,code = <115>;
202 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530203 linux,can-disable;
204 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530205 };
206
207 home {
208 label = "home";
209 gpios = <&tlmm 88 0x1>;
210 linux,input-type = <1>;
211 linux,code = <102>;
212 debounce-interval = <15>;
Shantanu Jaina9295272018-03-16 16:21:14 +0530213 linux,can-disable;
214 gpio-key,wakeup;
Shantanu Jain6cb0cbb2018-02-15 18:20:03 +0530215 };
216 };
217};
218
219&tlmm {
220 tlmm_gpio_key {
221 gpio_key_active: gpio_key_active {
222 mux {
223 pins = "gpio85", "gpio86", "gpio87", "gpio88";
224 function = "gpio";
225 };
226
227 config {
228 pins = "gpio85", "gpio86", "gpio87", "gpio88";
229 };
230 };
231
232 gpio_key_suspend: gpio_key_suspend {
233 mux {
234 pins = "gpio85", "gpio86", "gpio87", "gpio88";
235 function = "gpio";
236 };
237
238 config {
239 pins = "gpio85", "gpio86", "gpio87", "gpio88";
240 };
241 };
242 };
243};
244