Archit Saxena | 6ce4739 | 2018-06-19 18:11:57 +0530 | [diff] [blame] | 1 | /* |
Nagireddy Annem | 297a002 | 2019-04-25 15:42:10 +0530 | [diff] [blame] | 2 | * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. |
Archit Saxena | 6ce4739 | 2018-06-19 18:11:57 +0530 | [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 | |
| 14 | /dts-v1/; |
| 15 | |
| 16 | #include "msm8909-mtp.dtsi" |
| 17 | #include "msm8909w-gpu.dtsi" |
| 18 | #include "msm8909w.dtsi" |
| 19 | #include "msm8909w-bg-memory.dtsi" |
| 20 | #include "8909w-pm660.dtsi" |
| 21 | #include "msm8909-audio-bg_codec.dtsi" |
| 22 | |
| 23 | / { |
| 24 | model = "Qualcomm Technologies, Inc. MSM8909W BG 1GB WTP SDW3100"; |
| 25 | compatible = "qcom,msm8909-mtp", "qcom,msm8909", "qcom,mtp"; |
| 26 | qcom,msm-id = <245 0>, |
| 27 | <258 0>, |
| 28 | <275 0>, |
| 29 | <300 0>; |
Nagireddy Annem | 297a002 | 2019-04-25 15:42:10 +0530 | [diff] [blame] | 30 | qcom,board-id = <8 0xf>, |
| 31 | <8 0x17>; |
Archit Saxena | 6ce4739 | 2018-06-19 18:11:57 +0530 | [diff] [blame] | 32 | qcom,pmic-id = <0x0001001b 0x0 0x0 0x0>, |
| 33 | <0x0001011b 0x0 0x0 0x0>; |
| 34 | }; |
| 35 | |
| 36 | &soc { |
| 37 | i2c@78b9000 { /* BLSP1 QUP5 */ |
| 38 | synaptics@20 { |
| 39 | compatible = "synaptics,dsx-i2c"; |
| 40 | reg = <0x20>; |
| 41 | interrupt-parent = <&msm_gpio>; |
| 42 | interrupts = <98 0x2008>; |
| 43 | vdd_ana-supply = <&pm660_l18>; |
| 44 | vcc_i2c-supply = <&pm660_l13>; |
| 45 | synaptics,pwr-reg-name = "vdd_ana"; |
| 46 | synaptics,bus-reg-name = "vcc_i2c"; |
| 47 | pinctrl-names = "pmx_ts_active", "pmx_ts_suspend", |
| 48 | "pmx_ts_release"; |
| 49 | pinctrl-0 = <&ts_int_active &ts_reset_active>; |
| 50 | pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; |
| 51 | pinctrl-2 = <&ts_release>; |
| 52 | synaptics,irq-gpio = <&msm_gpio 98 0x2008>; |
| 53 | synaptics,irq-on-state = <0>; |
| 54 | synaptics,irq-flags = <0x2008>; |
| 55 | synaptics,power-delay-ms = <200>; |
| 56 | synaptics,reset-delay-ms = <200>; |
| 57 | synaptics,max-y-for-2d = <389>; |
| 58 | synaptics,bus-lpm-cur-uA = <450>; |
| 59 | synaptics,do-not-disable-regulators; |
| 60 | synaptics,wakeup-gestures-en; |
| 61 | synaptics,resume-in-workqueue; |
Shantanu Jain | a48ab61 | 2018-08-28 16:59:02 +0530 | [diff] [blame] | 62 | synaptics,fw-name = "PR1814809-s1222_30303032.img"; |
Archit Saxena | 6ce4739 | 2018-06-19 18:11:57 +0530 | [diff] [blame] | 63 | /delete-property/ synaptics,reset-gpio; |
| 64 | /delete-property/ synaptics,display-coords; |
| 65 | /delete-property/ synaptics,panel-coords; |
| 66 | /delete-property/ synaptics,power-down; |
| 67 | /delete-property/ synaptics,disable-gpios; |
| 68 | /delete-property/ synaptics,is_wake; |
| 69 | }; |
| 70 | |
| 71 | /delete-node/ it7260@46; |
| 72 | }; |
| 73 | |
| 74 | qcom,blackghost { |
| 75 | compatible = "qcom,pil-blackghost"; |
| 76 | |
| 77 | qcom,pil-force-shutdown; |
| 78 | qcom,firmware-name = "bg-wear"; |
| 79 | /* GPIO inputs from blackghost */ |
| 80 | qcom,bg2ap-status-gpio = <&msm_gpio 97 0>; |
| 81 | qcom,bg2ap-errfatal-gpio = <&msm_gpio 95 0>; |
| 82 | /* GPIO output to blackghost */ |
| 83 | qcom,ap2bg-status-gpio = <&msm_gpio 17 0>; |
| 84 | qcom,ap2bg-errfatal-gpio = <&msm_gpio 23 0>; |
| 85 | }; |
| 86 | |
| 87 | qcom,msm-ssc-sensors { |
| 88 | compatible = "qcom,msm-ssc-sensors"; |
| 89 | }; |
| 90 | |
| 91 | qcom,glink-bgcom-xprt-bg { |
| 92 | compatible = "qcom,glink-bgcom-xprt"; |
| 93 | label = "bg"; |
| 94 | qcom,qos-config = <&glink_qos_bg>; |
| 95 | qcom,ramp-time = <0x10>, |
| 96 | <0x20>, |
| 97 | <0x30>, |
| 98 | <0x40>; |
| 99 | }; |
| 100 | |
| 101 | glink_qos_bg: qcom,glink-qos-config-bg { |
| 102 | compatible = "qcom,glink-qos-config"; |
| 103 | qcom,flow-info = <0x80 0x0>, |
| 104 | <0x70 0x1>, |
| 105 | <0x60 0x2>, |
| 106 | <0x50 0x3>; |
| 107 | qcom,mtu-size = <0x800>; |
| 108 | qcom,tput-stats-cycle = <0xa>; |
| 109 | }; |
| 110 | |
| 111 | qcom,glink_pkt { |
| 112 | compatible = "qcom,glinkpkt"; |
| 113 | |
| 114 | qcom,glinkpkt-bg-daemon { |
| 115 | qcom,glinkpkt-transport = "bgcom"; |
| 116 | qcom,glinkpkt-edge = "bg"; |
| 117 | qcom,glinkpkt-ch-name = "bg-daemon"; |
| 118 | qcom,glinkpkt-dev-name = "glink_pkt_bg_daemon"; |
| 119 | }; |
| 120 | |
| 121 | qcom,glinkpkt-bg-display-ctrl { |
| 122 | qcom,glinkpkt-transport = "bgcom"; |
| 123 | qcom,glinkpkt-edge = "bg"; |
| 124 | qcom,glinkpkt-ch-name = "display-ctrl"; |
| 125 | qcom,glinkpkt-dev-name = "glink_pkt_bg_display_ctrl"; |
| 126 | }; |
| 127 | |
| 128 | qcom,glinkpkt-bg-display-data { |
| 129 | qcom,glinkpkt-transport = "bgcom"; |
| 130 | qcom,glinkpkt-edge = "bg"; |
| 131 | qcom,glinkpkt-ch-name = "display-data"; |
| 132 | qcom,glinkpkt-dev-name = "glink_pkt_bg_display_data"; |
| 133 | }; |
| 134 | |
| 135 | qcom,glinkpkt-bg-rsb-ctrl { |
| 136 | qcom,glinkpkt-transport = "bgcom"; |
| 137 | qcom,glinkpkt-edge = "bg"; |
| 138 | qcom,glinkpkt-ch-name = "RSB_CTRL"; |
| 139 | qcom,glinkpkt-dev-name = "glink_pkt_bg_rsb_ctrl"; |
| 140 | }; |
Arjun Singh | e4cc5b0 | 2018-10-24 11:47:27 +0530 | [diff] [blame] | 141 | |
| 142 | qcom,glinkpkt-bg-sso-ctrl { |
| 143 | qcom,glinkpkt-transport = "bgcom"; |
| 144 | qcom,glinkpkt-edge = "bg"; |
| 145 | qcom,glinkpkt-ch-name = "sso-ctrl"; |
| 146 | qcom,glinkpkt-dev-name = "glink_pkt_bg_sso_ctrl"; |
| 147 | }; |
Archit Saxena | 6ce4739 | 2018-06-19 18:11:57 +0530 | [diff] [blame] | 148 | }; |
| 149 | |
| 150 | spi@78B8000 { /* BLSP1 QUP4 */ |
| 151 | status = "ok"; |
| 152 | qcom,bg-spi { |
| 153 | compatible = "qcom,bg-spi"; |
| 154 | reg = <0>; |
| 155 | spi-max-frequency = <16000000>; |
| 156 | interrupt-parent = <&msm_gpio>; |
| 157 | qcom,irq-gpio = <&msm_gpio 110 1>; |
| 158 | }; |
| 159 | }; |
| 160 | |
| 161 | qcom,msm-thermal { |
| 162 | vdd-dig-supply = <&pm660_s2_floor_corner>; |
| 163 | |
| 164 | msm_thermal_freq: qcom,vdd-apps-rstr { |
| 165 | qcom,vdd-rstr-reg = "vdd-apps"; |
| 166 | qcom,levels = <1094400>; |
| 167 | qcom,freq-req; |
| 168 | }; |
| 169 | }; |
| 170 | |
| 171 | qcom,bg-rsb { |
| 172 | compatible = "qcom,bg-rsb"; |
| 173 | vdd-ldo1-supply = <&pm660_l11>; |
| 174 | vdd-ldo2-supply = <&pm660_l15>; |
| 175 | }; |
| 176 | |
| 177 | qcom,bg-daemon { |
| 178 | compatible = "qcom,bg-daemon"; |
| 179 | qcom,bg-reset-gpio = <&pm660_gpios 5 0>; |
| 180 | ssr-reg1-supply = <&pm660_l3>; |
| 181 | ssr-reg2-supply = <&pm660_l9>; |
| 182 | }; |
| 183 | |
| 184 | qcom,bcl { |
| 185 | compatible = "qcom,bcl"; |
| 186 | qcom,bcl-enable; |
| 187 | qcom,bcl-framework-interface; |
| 188 | qcom,bcl-freq-control-list = <&CPU0 &CPU1 &CPU2 &CPU3>; |
| 189 | qcom,bcl-hotplug-list = <&CPU2 &CPU3>; |
| 190 | qcom,bcl-soc-hotplug-list = <&CPU2 &CPU3>; |
| 191 | qcom,ibat-monitor { |
| 192 | qcom,low-threshold-uamp = <1000000>; |
| 193 | qcom,high-threshold-uamp = <2000000>; |
| 194 | qcom,mitigation-freq-khz = <1094400>; |
| 195 | qcom,vph-high-threshold-uv = <3500000>; |
| 196 | qcom,vph-low-threshold-uv = <3200000>; |
| 197 | qcom,soc-low-threshold = <10>; |
| 198 | qcom,thermal-handle = <&msm_thermal_freq>; |
| 199 | }; |
| 200 | }; |
| 201 | }; |
| 202 | |
| 203 | &audio_codec_mtp { |
| 204 | status = "disabled"; |
| 205 | }; |
| 206 | |
| 207 | &audio_codec_bg { |
| 208 | status = "ok"; |
| 209 | }; |
| 210 | |
| 211 | &bg_cdc { |
| 212 | status = "ok"; |
| 213 | vdd-spkr-supply = <&pm660_l11>; |
| 214 | }; |
| 215 | |
| 216 | &i2c_1 { |
| 217 | status = "okay"; |
| 218 | nq@28 { |
| 219 | compatible = "qcom,nq-nci"; |
| 220 | reg = <0x28>; |
| 221 | qcom,nq-irq = <&msm_gpio 50 0x00>; |
| 222 | qcom,nq-ven = <&msm_gpio 36 0x00>; |
| 223 | qcom,nq-firm = <&msm_gpio 38 0x00>; |
| 224 | qcom,nq-esepwr = <&msm_gpio 49 0x00>; |
| 225 | qcom,nq-clkreq = <&pm660_gpios 4 0x00>; |
| 226 | qcom,clk-src = "BBCLK3"; |
| 227 | interrupt-parent = <&msm_gpio>; |
| 228 | interrupts = <50 0>; |
| 229 | interrupt-names = "nfc_irq"; |
| 230 | pinctrl-names = "nfc_active","nfc_suspend"; |
| 231 | pinctrl-0 = <&nfcw_int_active &nfcw_disable_active |
| 232 | &nfc_clk_default>; |
| 233 | pinctrl-1 = <&nfcw_int_suspend &nfcw_disable_suspend>; |
| 234 | clocks = <&clock_rpm clk_bb_clk3_pin>; |
| 235 | clock-names = "ref_clk"; |
| 236 | }; |
| 237 | }; |
| 238 | |
| 239 | &spi_0 { |
| 240 | status = "disabled"; |
| 241 | }; |
| 242 | |
| 243 | &i2c_3 { |
| 244 | status = "disabled"; |
| 245 | }; |
| 246 | |
| 247 | &i2c_4 { |
| 248 | status = "disabled"; |
| 249 | }; |
| 250 | |
| 251 | &i2c_2 { |
| 252 | status = "disabled"; |
| 253 | }; |
| 254 | |
| 255 | &sdc1_clk_off { |
| 256 | config { |
| 257 | pins = "sdc1_clk"; |
| 258 | bias-disable; /* NO pull */ |
| 259 | drive-strength = <2>; /* 2 MA */ |
| 260 | output-low; |
| 261 | }; |
| 262 | }; |
| 263 | |
| 264 | &sdc1_cmd_off { |
| 265 | config { |
| 266 | pins = "sdc1_cmd"; |
| 267 | bias-disable; /* NO pull */ |
| 268 | drive-strength = <2>; /* 2 MA */ |
| 269 | output-low; |
| 270 | }; |
| 271 | }; |
| 272 | |
| 273 | &sdc1_data_off { |
| 274 | config { |
| 275 | pins = "sdc1_data"; |
| 276 | bias-disable; /* NO pull */ |
| 277 | drive-strength = <2>; /* 2 MA */ |
| 278 | output-low; |
| 279 | }; |
| 280 | }; |
| 281 | |
| 282 | &sdhc_2 { |
| 283 | status = "disabled"; |
| 284 | }; |
| 285 | |
| 286 | &blsp1_uart1 { |
| 287 | status = "ok"; |
| 288 | pinctrl-names = "default"; |
| 289 | pinctrl-0 = <&uart_console_sleep>; |
| 290 | }; |
| 291 | |
| 292 | /* Pinctrl dt nodes for interrupt & reset gpio for Synaptics touch controller */ |
| 293 | &ts_int_active { |
| 294 | mux { |
| 295 | pins = "gpio98"; |
| 296 | }; |
| 297 | |
| 298 | config { |
| 299 | pins = "gpio98"; |
| 300 | }; |
| 301 | }; |
| 302 | |
| 303 | &ts_int_suspend { |
| 304 | mux { |
| 305 | pins = "gpio98"; |
| 306 | }; |
| 307 | |
| 308 | config { |
| 309 | pins = "gpio98"; |
| 310 | /delete-property/ bias-pull-down; |
| 311 | bias-disable; /* No PULL */ |
| 312 | }; |
| 313 | }; |
| 314 | |
| 315 | &ts_reset_active { |
| 316 | mux { |
| 317 | pins = "gpio16"; |
| 318 | }; |
| 319 | |
| 320 | config { |
| 321 | pins = "gpio16"; |
| 322 | }; |
| 323 | }; |
| 324 | |
| 325 | &ts_reset_suspend { |
| 326 | mux { |
| 327 | pins = "gpio16"; |
| 328 | }; |
| 329 | |
| 330 | config { |
| 331 | pins = "gpio16"; |
| 332 | }; |
| 333 | }; |
| 334 | |
| 335 | &ts_release { |
| 336 | mux { |
| 337 | pins = "gpio98", "gpio16"; |
| 338 | }; |
| 339 | |
| 340 | config { |
| 341 | pins = "gpio98", "gpio16"; |
| 342 | }; |
| 343 | }; |
| 344 | |
| 345 | &spi4_cs0_active { |
| 346 | mux { |
| 347 | pins = "gpio14"; |
| 348 | function = "blsp_spi4"; |
| 349 | }; |
| 350 | config { |
| 351 | pins = "gpio14"; |
| 352 | drive-strength = <2>; |
| 353 | bias-disable; /* No PULL */ |
| 354 | output-high; |
| 355 | }; |
| 356 | }; |
| 357 | |
| 358 | &mdss_dsi0 { |
| 359 | qcom,dsi-pref-prim-pan = <&dsi_auo_390p_cmd>; |
| 360 | qcom,platform-bklight-en-gpio = <&msm_gpio 52 0>; |
| 361 | qcom,platform-enable-gpio = <&msm_gpio 59 0>; |
| 362 | }; |