Maria Yu | 6451c37 | 2017-09-28 17:04:28 +0800 | [diff] [blame] | 1 | /* |
Sachin Bhayare | e25c1f0 | 2018-01-16 14:04:54 +0530 | [diff] [blame] | 2 | * Copyright (c) 2015-2018, The Linux Foundation. All rights reserved. |
Maria Yu | 6451c37 | 2017-09-28 17:04:28 +0800 | [diff] [blame] | 3 | * |
| 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 Ramana | c2dd378 | 2018-02-23 18:21:53 +0530 | [diff] [blame] | 14 | #include <dt-bindings/gpio/gpio.h> |
| 15 | #include <dt-bindings/clock/msm-clocks-8953.h> |
Soumya Managoli | 91ec950 | 2018-01-18 16:53:47 +0530 | [diff] [blame] | 16 | #include "msm8953-audio-cdp.dtsi" |
| 17 | |
Maria Yu | 6451c37 | 2017-09-28 17:04:28 +0800 | [diff] [blame] | 18 | &blsp1_uart0 { |
| 19 | status = "ok"; |
| 20 | pinctrl-names = "default"; |
| 21 | pinctrl-0 = <&uart_console_active>; |
| 22 | }; |
Sayali Lokhande | 3129993 | 2017-12-06 09:41:17 +0530 | [diff] [blame] | 23 | |
Rohit Rangwani | 7e9dc74 | 2018-01-18 17:26:19 +0530 | [diff] [blame] | 24 | &pm8953_gpios { |
| 25 | nfc_clk { |
| 26 | nfc_clk_default: nfc_clk_default { |
| 27 | pins = "gpio2"; |
| 28 | function = "normal"; |
| 29 | input-enable; |
| 30 | power-source = <1>; |
| 31 | }; |
| 32 | }; |
| 33 | }; |
| 34 | |
| 35 | &i2c_5 { /* BLSP2 QUP1 (NFC) */ |
| 36 | status = "ok"; |
| 37 | nq@28 { |
| 38 | compatible = "qcom,nq-nci"; |
| 39 | reg = <0x28>; |
| 40 | qcom,nq-irq = <&tlmm 17 0x00>; |
| 41 | qcom,nq-ven = <&tlmm 16 0x00>; |
| 42 | qcom,nq-firm = <&tlmm 62 0x00>; |
| 43 | qcom,nq-clkreq = <&pm8953_gpios 2 0x00>; |
| 44 | interrupt-parent = <&tlmm>; |
| 45 | qcom,clk-src = "BBCLK2"; |
| 46 | interrupts = <17 0>; |
| 47 | interrupt-names = "nfc_irq"; |
| 48 | pinctrl-names = "nfc_active", "nfc_suspend"; |
| 49 | pinctrl-0 = <&nfc_int_active &nfc_disable_active |
| 50 | &nfc_clk_default>; |
| 51 | pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>; |
| 52 | clocks = <&clock_gcc clk_bb_clk2_pin>; |
| 53 | clock-names = "ref_clk"; |
| 54 | }; |
| 55 | }; |
| 56 | |
Sayali Lokhande | 3129993 | 2017-12-06 09:41:17 +0530 | [diff] [blame] | 57 | &sdhc_1 { |
| 58 | /* device core power supply */ |
| 59 | vdd-supply = <&pm8953_l8>; |
| 60 | qcom,vdd-voltage-level = <2900000 2900000>; |
| 61 | qcom,vdd-current-level = <200 570000>; |
| 62 | |
| 63 | /* device communication power supply */ |
| 64 | vdd-io-supply = <&pm8953_l5>; |
| 65 | qcom,vdd-io-always-on; |
| 66 | qcom,vdd-io-lpm-sup; |
| 67 | qcom,vdd-io-voltage-level = <1800000 1800000>; |
| 68 | qcom,vdd-io-current-level = <200 325000>; |
| 69 | |
| 70 | pinctrl-names = "active", "sleep"; |
| 71 | pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>; |
| 72 | pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>; |
| 73 | |
| 74 | qcom,clk-rates = <400000 20000000 25000000 50000000 100000000 192000000 |
| 75 | 384000000>; |
| 76 | qcom,nonremovable; |
| 77 | qcom,bus-speed-mode = "HS400_1p8v", "HS200_1p8v", "DDR_1p8v"; |
| 78 | |
| 79 | status = "ok"; |
| 80 | }; |
| 81 | |
| 82 | &sdhc_2 { |
| 83 | /* device core power supply */ |
| 84 | vdd-supply = <&pm8953_l11>; |
| 85 | qcom,vdd-voltage-level = <2950000 2950000>; |
| 86 | qcom,vdd-current-level = <15000 800000>; |
| 87 | |
| 88 | /* device communication power supply */ |
| 89 | vdd-io-supply = <&pm8953_l12>; |
| 90 | qcom,vdd-io-voltage-level = <1800000 2950000>; |
| 91 | qcom,vdd-io-current-level = <200 22000>; |
| 92 | |
| 93 | pinctrl-names = "active", "sleep"; |
| 94 | pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; |
| 95 | pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>; |
| 96 | |
| 97 | #address-cells = <0>; |
| 98 | interrupt-parent = <&sdhc_2>; |
| 99 | interrupts = <0 1 2>; |
| 100 | #interrupt-cells = <1>; |
| 101 | interrupt-map-mask = <0xffffffff>; |
| 102 | interrupt-map = <0 &intc 0 125 0 |
| 103 | 1 &intc 0 221 0 |
| 104 | 2 &tlmm 133 0>; |
| 105 | interrupt-names = "hc_irq", "pwr_irq", "status_irq"; |
| 106 | cd-gpios = <&tlmm 133 0x1>; |
| 107 | |
| 108 | qcom,clk-rates = <400000 20000000 25000000 50000000 100000000 |
| 109 | 200000000>; |
| 110 | qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104"; |
| 111 | |
| 112 | status = "ok"; |
| 113 | }; |
Sachin Bhayare | e25c1f0 | 2018-01-16 14:04:54 +0530 | [diff] [blame] | 114 | |
| 115 | #include "msm8953-mdss-panels.dtsi" |
| 116 | |
| 117 | &mdss_mdp { |
| 118 | qcom,mdss-pref-prim-intf = "dsi"; |
| 119 | }; |
| 120 | |
| 121 | &mdss_dsi { |
| 122 | hw-config = "single_dsi"; |
| 123 | }; |
| 124 | |
| 125 | &mdss_dsi0 { |
| 126 | qcom,dsi-pref-prim-pan = <&dsi_truly_1080_vid>; |
| 127 | pinctrl-names = "mdss_default", "mdss_sleep"; |
| 128 | pinctrl-0 = <&mdss_dsi_active &mdss_te_active>; |
| 129 | pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>; |
| 130 | |
| 131 | qcom,platform-te-gpio = <&tlmm 24 0>; |
| 132 | qcom,platform-reset-gpio = <&tlmm 61 0>; |
| 133 | qcom,platform-bklight-en-gpio = <&tlmm 59 0>; |
| 134 | }; |
| 135 | |
| 136 | &mdss_dsi1 { |
| 137 | status = "disabled"; |
| 138 | qcom,dsi-pref-prim-pan = <&dsi_adv7533_1080p>; |
| 139 | pinctrl-names = "mdss_default", "mdss_sleep"; |
| 140 | pinctrl-0 = <&mdss_dsi_active &mdss_te_active>; |
| 141 | pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>; |
| 142 | |
| 143 | qcom,pluggable; |
| 144 | qcom,platform-te-gpio = <&tlmm 24 0>; |
| 145 | qcom,platform-reset-gpio = <&tlmm 61 0>; |
| 146 | qcom,platform-bklight-en-gpio = <&tlmm 59 0>; |
| 147 | }; |
| 148 | |
| 149 | &dsi_truly_1080_vid { |
| 150 | qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; |
| 151 | qcom,mdss-dsi-pan-enable-dynamic-fps; |
| 152 | qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp"; |
| 153 | }; |
| 154 | |
Vishnuvardhan Prodduturi | 886d44e | 2018-01-25 18:29:43 +0530 | [diff] [blame] | 155 | &dsi_hx8399c_truly_vid { |
| 156 | qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; |
| 157 | qcom,mdss-dsi-pan-enable-dynamic-fps; |
| 158 | qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp"; |
| 159 | }; |
| 160 | |
Sachin Bhayare | e25c1f0 | 2018-01-16 14:04:54 +0530 | [diff] [blame] | 161 | &dsi_truly_1080_cmd { |
| 162 | qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; |
| 163 | qcom,ulps-enabled; |
| 164 | qcom,partial-update-enabled; |
| 165 | qcom,panel-roi-alignment = <2 2 4 2 1080 2>; |
| 166 | }; |
| 167 | |
Shantanu Jain | 6cb0cbb | 2018-02-15 18:20:03 +0530 | [diff] [blame] | 168 | &soc { |
| 169 | gpio_keys { |
| 170 | compatible = "gpio-keys"; |
| 171 | input-name = "gpio-keys"; |
| 172 | pinctrl-names = "tlmm_gpio_key_active","tlmm_gpio_key_suspend"; |
| 173 | pinctrl-0 = <&gpio_key_active>; |
| 174 | pinctrl-1 = <&gpio_key_suspend>; |
| 175 | |
| 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>; |
| 182 | }; |
| 183 | |
| 184 | camera_snapshot { |
| 185 | label = "camera_snapshot"; |
| 186 | gpios = <&tlmm 86 0x1>; |
| 187 | linux,input-type = <1>; |
| 188 | linux,code = <0x2fe>; |
| 189 | debounce-interval = <15>; |
| 190 | }; |
| 191 | |
| 192 | vol_up { |
| 193 | label = "volume_up"; |
| 194 | gpios = <&tlmm 85 0x1>; |
| 195 | linux,input-type = <1>; |
| 196 | linux,code = <115>; |
| 197 | debounce-interval = <15>; |
| 198 | }; |
| 199 | |
| 200 | home { |
| 201 | label = "home"; |
| 202 | gpios = <&tlmm 88 0x1>; |
| 203 | linux,input-type = <1>; |
| 204 | linux,code = <102>; |
| 205 | debounce-interval = <15>; |
| 206 | }; |
| 207 | }; |
| 208 | }; |
| 209 | |
| 210 | &tlmm { |
| 211 | tlmm_gpio_key { |
| 212 | gpio_key_active: gpio_key_active { |
| 213 | mux { |
| 214 | pins = "gpio85", "gpio86", "gpio87", "gpio88"; |
| 215 | function = "gpio"; |
| 216 | }; |
| 217 | |
| 218 | config { |
| 219 | pins = "gpio85", "gpio86", "gpio87", "gpio88"; |
| 220 | }; |
| 221 | }; |
| 222 | |
| 223 | gpio_key_suspend: gpio_key_suspend { |
| 224 | mux { |
| 225 | pins = "gpio85", "gpio86", "gpio87", "gpio88"; |
| 226 | function = "gpio"; |
| 227 | }; |
| 228 | |
| 229 | config { |
| 230 | pins = "gpio85", "gpio86", "gpio87", "gpio88"; |
| 231 | }; |
| 232 | }; |
| 233 | }; |
| 234 | }; |
| 235 | |