richucj

msm8909-mtp.dtsi

Nov 11th, 2019
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.81 KB | None | 0 0
  1. /* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
  2. *
  3. * This program is free software; you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License version 2 and
  5. * only version 2 as published by the Free Software Foundation.
  6. *
  7. * This program is distributed in the hope that it will be useful,
  8. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. * GNU General Public License for more details.
  11. */
  12.  
  13. #include "msm8909.dtsi"
  14. #include "msm8909-pinctrl.dtsi"
  15. #include "msm8909-camera-sensor-mtp.dtsi"
  16. #include "msm8909-regulator.dtsi"
  17.  
  18. &soc {
  19. gpio-clock {
  20. compatible = "qcom,gpio_clk";
  21. pwm-gpio = <31>;
  22. };
  23.  
  24. /*
  25. * DT node to add support for SMB135x charger and integrate
  26. * with VM-BMS.
  27. */
  28. i2c@78b8000 {
  29. smb1357_otg_vreg: smb1357-charger@57 {
  30. compatible = "qcom,smb1357-charger";
  31. reg = <0x57>;
  32. interrupt-parent = <&msm_gpio>;
  33. interrupts = <58 8>;
  34. pinctrl-names = "default";
  35. pinctrl-0 = <&smb_int_default>;
  36.  
  37. qcom,bmd-algo-disabled;
  38. qcom,float-voltage-mv = <4200>;
  39. qcom,charging-timeout = <1536>;
  40. qcom,recharge-thresh-mv = <100>;
  41. regulator-name = "smb1357_otg_vreg";
  42. qcom,soft-vfloat-comp-disabled;
  43. qcom,thermal-mitigation = <1500 700 600 0>;
  44.  
  45. qcom,bms-psy-name = "bms";
  46.  
  47. /*
  48. * Disable SMB1357 based charging termination as BMS
  49. * controls charging.
  50. */
  51. qcom,iterm-disabled;
  52.  
  53. /*
  54. * Disable charge inhibit feature to start chargin on
  55. * charger insertion independent of battery voltage.
  56. */
  57. qcom,inhibit-disabled;
  58.  
  59. /* BMS is controlling charging/re-charge */
  60. qcom,bms-controlled-charging;
  61.  
  62. /*
  63. * To enable charger node:
  64. * set status = "ok" and
  65. * add 'qcom,use-external-charger' to pm8909_chg node
  66. */
  67. status = "disabled";
  68. };
  69. };
  70.  
  71. i2c@78b9000 { /* BLSP1 QUP5 */
  72. goodix@5d {
  73. compatible = "goodix,gt9xx";
  74. reg = <0x5d>;
  75. interrupt-parent = <&msm_gpio>;
  76. interrupts = <13 0x2008>;
  77. reset-gpios = <&msm_gpio 12 0x0>;
  78. interrupt-gpios = <&msm_gpio 13 0x2008>;
  79. power-gpios = <&msm_gpio 33 0x0>;
  80. vcc-i2c-supply = <&pm8909_l6>;
  81. goodix,panel-coords = <0 0 719 1405>;
  82. goodix,display-coords = <0 0 719 1279>;
  83. goodix,button-map= <139 172 158>;
  84. goodix,enable-power-off;
  85. goodix,product-id = "9147";
  86. goodix,fw_name = "gtp_fw.bin";
  87. pinctrl-names = "pmx_ts_active","pmx_ts_suspend";
  88. pinctrl-0 = <&ts_int_active &ts_reset_active>;
  89. pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
  90. goodix,cfg-data0 = [
  91. 5C D0 02 00 05 05 35 00 01 08
  92. 1E 0F 50 32 03 05 00 00 00 00
  93. 11 11 00 17 19 1C 14 89 29 0E
  94. 50 52 0F 0A 00 00 00 9A 02 1C
  95. 00 01 05 00 00 00 00 09 11 00
  96. 00 3E 6C 8F F5 02 07 00 00 04
  97. D9 41 00 AE 49 00 8A 51 00 70
  98. 5B 00 5C 66 00 5C 00 00 00 00
  99. F0 4A 3A FF FF 27 00 00 00 00
  100. 00 00 00 00 00 00 00 00 00 00
  101. 00 00 00 00 00 00 00 00 00 00
  102. 00 00 1C 1A 18 16 14 12 10 0E
  103. 0C 0A 08 06 04 02 00 00 00 00
  104. 00 00 00 00 00 00 00 00 00 00
  105. 00 00 00 02 04 06 08 0A 0F 10
  106. 12 22 21 20 1F 1E 1D 1C 18 16
  107. FF FF FF FF FF FF FF FF 00 00
  108. 00 00 00 00 00 00 00 00 00 00
  109. 00 00 00 00 35 01
  110. ];
  111. goodix,have-touch-key;
  112. goodix,driver-send-cfg;
  113. };
  114. };
  115.  
  116. gen-vkeys {
  117. compatible = "qcom,gen-vkeys";
  118. label = "synaptics_dsx";
  119. qcom,disp-maxx = <719>;
  120. qcom,disp-maxy = <1279>;
  121. qcom,panel-maxx = <719>;
  122. qcom,panel-maxy = <1405>;
  123. qcom,key-codes = <158 139 172 217>;
  124. };
  125.  
  126. gpio_keys {
  127. compatible = "gpio-keys";
  128. input-name = "gpio-keys";
  129. pinctrl-names = "tlmm_gpio_key_active","tlmm_gpio_key_suspend";
  130. pinctrl-0 = <&gpio_key_active>;
  131. pinctrl-1 = <&gpio_key_suspend>;
  132.  
  133. camera_focus {
  134. label = "camera_focus";
  135. gpios = <&msm_gpio 93 0x1>;
  136. linux,input-type = <1>;
  137. linux,code = <0x210>;
  138. // gpio-key,wakeup; //law:del for system sleep abnormal,before modify sleep-current is 22mA ,after sleep-current is 7mA 2015-12-19
  139. debounce-interval = <15>;
  140. };
  141.  
  142. camera_snapshot {
  143. label = "camera_snapshot";
  144. gpios = <&msm_gpio 92 0x1>;
  145. linux,input-type = <1>;
  146. linux,code = <0x2fe>;
  147. gpio-key,wakeup;
  148. debounce-interval = <15>;
  149. };
  150.  
  151. vol_up {
  152. label = "volume_up";
  153. gpios = <&msm_gpio 90 0x1>;
  154. linux,input-type = <1>;
  155. linux,code = <115>;
  156. gpio-key,wakeup;
  157. debounce-interval = <15>;
  158. };
  159.  
  160. vol_down {
  161. label = "volume_down";
  162. gpios = <&msm_gpio 91 0x1>;
  163. linux,input-type = <1>;
  164. linux,code = <114>;
  165. gpio-key,wakeup;
  166. debounce-interval = <15>;
  167. };
  168. home {
  169. label = "home";
  170. gpios = <&msm_gpio 11 0x1>;
  171. linux,input-type = <1>;
  172. linux,code = <102>;
  173. gpio-key,wakeup;
  174. debounce-interval = <15>;
  175. };
  176.  
  177. menu {
  178. label = "menu";
  179. gpios = <&msm_gpio 17 0x1>;
  180. linux,input-type = <1>;
  181. linux,code = <139>;
  182. // gpio-key,wakeup; //law:del for system sleep abnormal,before modify sleep-current is 22mA ,after sleep-current is 7mA 2015-12-19
  183. debounce-interval = <15>;
  184. };
  185.  
  186. back {
  187. label = "back";
  188. gpios = <&msm_gpio 98 0x1>;
  189. linux,input-type = <1>;
  190. linux,code = <158>;
  191. gpio-key,wakeup;
  192. debounce-interval = <15>;
  193. };
  194. };
  195.  
  196. audio_codec_mtp: sound {
  197. compatible = "qcom,msm8x16-audio-codec";
  198. qcom,model = "msm8909-snd-card";
  199. qcom,msm-snd-card-id = <0>;
  200. qcom,msm-codec-type = "internal";
  201. qcom,msm-ext-pa = "primary";
  202. qcom,msm-mclk-freq = <9600000>;
  203. qcom,msm-mbhc-hphl-swh = <1>; /*joseph modified*/
  204. qcom,msm-mbhc-gnd-swh = <0>;
  205. qcom,msm-hs-micbias-type = "internal";
  206. qcom,msm-micbias1-ext-cap;
  207. qcom,audio-routing =
  208. "RX_BIAS", "MCLK",
  209. "SPK_RX_BIAS", "MCLK",
  210. "INT_LDO_H", "MCLK",
  211. "MIC BIAS Internal1", "Handset Mic", /**joseph modified for internal bias**/
  212. "MIC BIAS Internal2", "Headset Mic",
  213. "MIC BIAS Internal1", "Secondary Mic",
  214. "AMIC1", "MIC BIAS Internal1",
  215. "AMIC2", "MIC BIAS Internal2",
  216. "AMIC3", "MIC BIAS Internal1";
  217. pinctrl-names = "cdc_lines_act",
  218. "cdc_lines_sus",
  219. "cross_conn_det_act",
  220. "cross_conn_det_sus";
  221. pinctrl-0 = <&cdc_pdm_lines_act>;
  222. pinctrl-1 = <&cdc_pdm_lines_sus>;
  223. pinctrl-2 = <&cross_conn_det_act>;
  224. pinctrl-3 = <&cross_conn_det_sus>;
  225. qcom,cdc-us-euro-gpios = <&msm_gpio 97 0>;
  226. asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>,
  227. <&loopback>, <&compress>, <&hostless>,
  228. <&afe>, <&lsm>, <&routing>, <&lpa>,
  229. <&voice_svc>;
  230. asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
  231. "msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback",
  232. "msm-compress-dsp", "msm-pcm-hostless", "msm-pcm-afe",
  233. "msm-lsm-client", "msm-pcm-routing", "msm-pcm-lpa",
  234. "msm-voice-svc";
  235. asoc-cpu = <&dai_pri_auxpcm>, <&dai_hdmi>,
  236. <&dai_mi2s0>, <&dai_mi2s1>, <&dai_mi2s2>, <&dai_mi2s3>,
  237. <&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>,
  238. <&sb_3_rx>, <&sb_3_tx>, <&sb_4_rx>, <&sb_4_tx>,
  239. <&bt_sco_rx>, <&bt_sco_tx>,<&bt_a2dp_rx>,
  240. <&int_fm_rx>, <&int_fm_tx>,
  241. <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>,
  242. <&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>,
  243. <&incall_music_2_rx>;
  244. asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-hdmi.8",
  245. "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
  246. "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
  247. "msm-dai-q6-dev.16384", "msm-dai-q6-dev.16385",
  248. "msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387",
  249. "msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391",
  250. "msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393",
  251. "msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289",
  252. "msm-dai-q6-dev.12290", "msm-dai-q6-dev.12292",
  253. "msm-dai-q6-dev.12293", "msm-dai-q6-dev.224",
  254. "msm-dai-q6-dev.225", "msm-dai-q6-dev.241",
  255. "msm-dai-q6-dev.240", "msm-dai-q6-dev.32771",
  256. "msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773",
  257. "msm-dai-q6-dev.32770";
  258. asoc-codec = <&stub_codec>, <&pm8909_conga_dig>;
  259. asoc-codec-names = "msm-stub-codec.1", "tombak_codec";
  260. };
  261. };
  262.  
  263. &blsp1_uart1 {
  264. status = "ok";
  265. pinctrl-names = "default";
  266. pinctrl-0 = <&uart_console_sleep>;
  267. };
  268.  
  269. /*add by evan.hai for ttyHSL1*/
  270. &blsp1_uart2 {
  271. status = "ok";
  272. pinctrl-names = "default";
  273. pinctrl-0 = <&uart_console_sleep1>;
  274. };
  275.  
  276. / {
  277. mtp_batterydata: qcom,battery-data {
  278. qcom,rpull-up-kohm = <100>;
  279. qcom,vref-batt-therm = <1800000>;
  280.  
  281. #include "batterydata-palladium.dtsi"
  282. };
  283. };
  284.  
  285. &qcom_rng {
  286. status = "okay";
  287. };
  288.  
  289. &qcom_crypto {
  290. status = "okay";
  291. };
  292.  
  293. &qcom_cedev {
  294. status = "okay";
  295. };
  296.  
  297. &qcom_seecom {
  298. status = "okay";
  299. };
  300.  
  301. &qcom_tzlog {
  302. status = "okay";
  303. };
  304.  
  305. &sdhc_1 {
  306. vdd-supply = <&pm8909_l8>;
  307. qcom,vdd-voltage-level = <2900000 2900000>;
  308. qcom,vdd-current-level = <200 400000>;
  309.  
  310. vdd-io-supply = <&pm8909_l5>;
  311. qcom,vdd-io-always-on;
  312. qcom,vdd-io-lpm-sup;
  313. qcom,vdd-io-voltage-level = <1800000 1800000>;
  314. qcom,vdd-io-current-level = <200 60000>;
  315.  
  316. pinctrl-names = "active", "sleep";
  317. pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
  318. pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
  319.  
  320. qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
  321. qcom,nonremovable;
  322.  
  323. status = "ok";
  324. };
  325. //law---2016.4.14-11:47----modify for usb otg-------
  326.  
  327. &usb_otg {
  328. interrupts = <0 134 0>,<0 140 0>,<0 136 0>;
  329. interrupt-names = "core_irq", "async_irq", "phy_irq";
  330.  
  331. qcom,hsusb-otg-mode = <3>;
  332. vbus_otg-supply = <&oem_otg_ext_vreg>;
  333. };
  334. //------------------end-----------------------------
  335. &sdhc_2 {
  336. #address-cells = <0>;
  337. interrupt-parent = <&sdhc_2>;
  338. interrupts = <0 1 2>;
  339. #interrupt-cells = <1>;
  340. interrupt-map-mask = <0xffffffff>;
  341. interrupt-map = <0 &intc 0 125 0
  342. 1 &intc 0 221 0
  343. 2 &msm_gpio 38 0>;
  344. interrupt-names = "hc_irq", "pwr_irq", "status_irq";
  345. cd-gpios = <&msm_gpio 38 0x1>;
  346.  
  347. vdd-supply = <&pm8909_l11>;
  348. qcom,vdd-voltage-level = <1800000 2950000>;
  349. qcom,vdd-current-level = <15000 400000>;
  350.  
  351. vdd-io-supply = <&pm8909_l12>;
  352. qcom,vdd-io-voltage-level = <1800000 2950000>;
  353. qcom,vdd-io-current-level = <200 50000>;
  354.  
  355. pinctrl-names = "active", "sleep";
  356. pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
  357. pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
  358.  
  359. status = "ok";
  360. };
  361.  
  362. &tlmm_pinmux {
  363. mpu6050_int_pin {
  364. qcom,pins = <&gp 96>;
  365. qcom,pin-func = <0>;
  366. qcom,num-grp-pins = <1>;
  367. label = "mpu6050-irq";
  368. mpu6050_default: mpu6050_default {
  369. drive-strength = <6>;
  370. bias-pull-down;
  371. };
  372. mpu6050_sleep: mpu6050_sleep {
  373. drive-strength = <2>;
  374. bias-pull-down;
  375. };
  376. };
  377.  
  378. apds99xx_int_pin {
  379. qcom,pins = <&gp 94>;
  380. qcom,pin-func = <0>;
  381. qcom,num-grp-pins = <1>;
  382. label = "apds99xx-irq";
  383. apds99xx_default: apds99xx_default {
  384. drive-strength = <6>;
  385. bias-pull-up;
  386. };
  387. apds99xx_sleep: apds99xx_sleep {
  388. drive-strength = <2>;
  389. bias-pull-down;
  390. };
  391. };
  392.  
  393. ak8963_int_pin {
  394. qcom,pins = <&gp 65>;
  395. qcom,pin-func = <0>;
  396. qcom,num-grp-pins = <1>;
  397. label = "ak8963-irq";
  398. ak8963_default: ak8963_default {
  399. drive-strength = <6>;
  400. bias-pull-up;
  401. };
  402. ak8963_sleep: ak8963_sleep {
  403. drive-strength = <2>;
  404. bias-pull-down;
  405. };
  406. };
  407. };
  408.  
  409. &i2c_1 { /* BLSP1 QUP1 */
  410. mpu6050@68 { /* Gyroscope and accelerometer sensor combo */
  411. compatible = "invn,mpu6050";
  412. reg = <0x68>;
  413. pinctrl-names = "mpu_default","mpu_sleep";
  414. pinctrl-0 = <&mpu6050_default>;
  415. pinctrl-1 = <&mpu6050_sleep>;
  416. interrupt-parent = <&msm_gpio>;
  417. interrupts = <96 0x1>;
  418. vdd-supply = <&pm8909_l17>;
  419. vlogic-supply = <&pm8909_l6>;
  420. invn,gpio-int = <&msm_gpio 96 0x1>;
  421. invn,place = "Portrait Down";
  422. };
  423.  
  424. nfc:pn547@28 {/*PN7150 NFC*/
  425. compatible = "nxp,pn544";
  426. reg = <0x28>;
  427. pinctrl-names = "nfc_active","nfc_suspend";
  428. pinctrl-0 = <&nfc_int_active &nfc_disable_active>;
  429. pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>;
  430. interrupt-parent = <&msm_gpio>;
  431. interrupts = <14 0x2>;
  432. enable-gpios = <&msm_gpio 92 0x1>;
  433. interrupt-gpios = <&msm_gpio 14 0x1>;
  434. };
  435.  
  436. avago@39 { /* Ambient light and proximity sensor */
  437. compatible = "avago,apds9900";
  438. reg = <0x39>;
  439. pinctrl-names = "default","sleep";
  440. pinctrl-0 = <&apds99xx_default>;
  441. pinctrl-1 = <&apds99xx_sleep>;
  442. interrupt-parent = <&msm_gpio>;
  443. interrupts = <94 0x2002>;
  444. vdd-supply = <&pm8909_l17>;
  445. vio-supply = <&pm8909_l6>;
  446. avago,irq-gpio = <&msm_gpio 94 0x2002>;
  447. avago,ps-threshold = <600>;
  448. avago,ps-hysteresis-threshold = <500>;
  449. avago,ps-pulse = <8>;
  450. avago,ps-pgain = <0>;
  451. avago,als-B = <186>;
  452. avago,als-C = <75>;
  453. avago,als-D = <129>;
  454. avago,ga-value = <256>;
  455. };
  456.  
  457. memsic@30 { /* Magnetic field sensor */
  458. compatible = "memsic,mmc3416x";
  459. reg = <0x30>;
  460. vdd-supply = <&pm8909_l17>;
  461. vio-supply = <&pm8909_l6>;
  462. memsic,dir = "obverse-x-axis-forward";
  463. memsic,auto-report;
  464. };
  465.  
  466. akm@c { /* Magnetic field sensor */
  467. compatible = "ak,ak8963";
  468. reg = <0x0c>;
  469. pinctrl-names = "ak8963_default", "ak8963_sleep";
  470. pinctrl-0 = <&ak8963_default>;
  471. pinctrl-1 = <&ak8963_sleep>;
  472. interrupt-parent = <&msm_gpio>;
  473. interrupts = <65 0x2>;
  474. vdd-supply = <&pm8909_l17>;
  475. vio-supply = <&pm8909_l6>;
  476. ak,layout = <0x6>;
  477. ak,auto-report;
  478. };
  479.  
  480. stk@48 {/*law modify for p-sensor--------2015.11.18-13:07*/
  481. compatible = "stk,stk3x1x";
  482. reg = <0x48>;
  483. interrupt-parent = <&msm_gpio>;
  484. interrupts = <94 0x2>;
  485. vdd-supply = <&pm8909_l17>;
  486. vio-supply = <&pm8909_l6>;
  487. stk,irq-gpio = <&msm_gpio 94 0x02>;
  488. stk,transmittance = <500>;
  489. stk,state-reg = <0x00>;
  490. stk,psctrl-reg = <0x71>;
  491. stk,alsctrl-reg = <0x38>;
  492. stk,ledctrl-reg = <0xFF>;
  493. stk,wait-reg = <0x07>;
  494. stk,ps-thdh = <1700>;
  495. stk,ps-thdl = <1500>;
  496. stk,use-fir;
  497. };
  498.  
  499. };
  500.  
  501. #include "dsi-panel-auo-qvga-cmd.dtsi"
  502. #include "dsi-panel-auo-cx-qvga-cmd.dtsi"
  503. #include "dsi-panel-hx8394d-480p-video.dtsi"
  504. #include "dsi-panel-hx8394d-720p-video.dtsi"
  505. #include "dsi-panel-hx8394d-qhd-video.dtsi"
  506. #include "dsi-panel-ili9881c-720p-video.dtsi"/* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
  507. *
  508. * This program is free software; you can redistribute it and/or modify
  509. * it under the terms of the GNU General Public License version 2 and
  510. * only version 2 as published by the Free Software Foundation.
  511. *
  512. * This program is distributed in the hope that it will be useful,
  513. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  514. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  515. * GNU General Public License for more details.
  516. */
  517.  
  518. #include "msm8909.dtsi"
  519. #include "msm8909-pinctrl.dtsi"
  520. #include "msm8909-camera-sensor-mtp.dtsi"
  521. #include "msm8909-regulator.dtsi"
  522.  
  523. &soc {
  524. gpio-clock {
  525. compatible = "qcom,gpio_clk";
  526. pwm-gpio = <31>;
  527. };
  528.  
  529. /*
  530. * DT node to add support for SMB135x charger and integrate
  531. * with VM-BMS.
  532. */
  533. i2c@78b8000 {
  534. smb1357_otg_vreg: smb1357-charger@57 {
  535. compatible = "qcom,smb1357-charger";
  536. reg = <0x57>;
  537. interrupt-parent = <&msm_gpio>;
  538. interrupts = <58 8>;
  539. pinctrl-names = "default";
  540. pinctrl-0 = <&smb_int_default>;
  541.  
  542. qcom,bmd-algo-disabled;
  543. qcom,float-voltage-mv = <4200>;
  544. qcom,charging-timeout = <1536>;
  545. qcom,recharge-thresh-mv = <100>;
  546. regulator-name = "smb1357_otg_vreg";
  547. qcom,soft-vfloat-comp-disabled;
  548. qcom,thermal-mitigation = <1500 700 600 0>;
  549.  
  550. qcom,bms-psy-name = "bms";
  551.  
  552. /*
  553. * Disable SMB1357 based charging termination as BMS
  554. * controls charging.
  555. */
  556. qcom,iterm-disabled;
  557.  
  558. /*
  559. * Disable charge inhibit feature to start chargin on
  560. * charger insertion independent of battery voltage.
  561. */
  562. qcom,inhibit-disabled;
  563.  
  564. /* BMS is controlling charging/re-charge */
  565. qcom,bms-controlled-charging;
  566.  
  567. /*
  568. * To enable charger node:
  569. * set status = "ok" and
  570. * add 'qcom,use-external-charger' to pm8909_chg node
  571. */
  572. status = "disabled";
  573. };
  574. };
  575.  
  576. i2c@78b9000 { /* BLSP1 QUP5 */
  577. goodix@5d {
  578. compatible = "goodix,gt9xx";
  579. reg = <0x5d>;
  580. interrupt-parent = <&msm_gpio>;
  581. interrupts = <13 0x2008>;
  582. reset-gpios = <&msm_gpio 12 0x0>;
  583. interrupt-gpios = <&msm_gpio 13 0x2008>;
  584. power-gpios = <&msm_gpio 33 0x0>;
  585. vcc-i2c-supply = <&pm8909_l6>;
  586. goodix,panel-coords = <0 0 719 1405>;
  587. goodix,display-coords = <0 0 719 1279>;
  588. goodix,button-map= <139 172 158>;
  589. goodix,enable-power-off;
  590. goodix,product-id = "9147";
  591. goodix,fw_name = "gtp_fw.bin";
  592. pinctrl-names = "pmx_ts_active","pmx_ts_suspend";
  593. pinctrl-0 = <&ts_int_active &ts_reset_active>;
  594. pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
  595. goodix,cfg-data0 = [
  596. 5C D0 02 00 05 05 35 00 01 08
  597. 1E 0F 50 32 03 05 00 00 00 00
  598. 11 11 00 17 19 1C 14 89 29 0E
  599. 50 52 0F 0A 00 00 00 9A 02 1C
  600. 00 01 05 00 00 00 00 09 11 00
  601. 00 3E 6C 8F F5 02 07 00 00 04
  602. D9 41 00 AE 49 00 8A 51 00 70
  603. 5B 00 5C 66 00 5C 00 00 00 00
  604. F0 4A 3A FF FF 27 00 00 00 00
  605. 00 00 00 00 00 00 00 00 00 00
  606. 00 00 00 00 00 00 00 00 00 00
  607. 00 00 1C 1A 18 16 14 12 10 0E
  608. 0C 0A 08 06 04 02 00 00 00 00
  609. 00 00 00 00 00 00 00 00 00 00
  610. 00 00 00 02 04 06 08 0A 0F 10
  611. 12 22 21 20 1F 1E 1D 1C 18 16
  612. FF FF FF FF FF FF FF FF 00 00
  613. 00 00 00 00 00 00 00 00 00 00
  614. 00 00 00 00 35 01
  615. ];
  616. goodix,have-touch-key;
  617. goodix,driver-send-cfg;
  618. };
  619. };
  620.  
  621. gen-vkeys {
  622. compatible = "qcom,gen-vkeys";
  623. label = "synaptics_dsx";
  624. qcom,disp-maxx = <719>;
  625. qcom,disp-maxy = <1279>;
  626. qcom,panel-maxx = <719>;
  627. qcom,panel-maxy = <1405>;
  628. qcom,key-codes = <158 139 172 217>;
  629. };
  630.  
  631. gpio_keys {
  632. compatible = "gpio-keys";
  633. input-name = "gpio-keys";
  634. pinctrl-names = "tlmm_gpio_key_active","tlmm_gpio_key_suspend";
  635. pinctrl-0 = <&gpio_key_active>;
  636. pinctrl-1 = <&gpio_key_suspend>;
  637.  
  638. camera_focus {
  639. label = "camera_focus";
  640. gpios = <&msm_gpio 93 0x1>;
  641. linux,input-type = <1>;
  642. linux,code = <0x210>;
  643. // gpio-key,wakeup; //law:del for system sleep abnormal,before modify sleep-current is 22mA ,after sleep-current is 7mA 2015-12-19
  644. debounce-interval = <15>;
  645. };
  646.  
  647. camera_snapshot {
  648. label = "camera_snapshot";
  649. gpios = <&msm_gpio 92 0x1>;
  650. linux,input-type = <1>;
  651. linux,code = <0x2fe>;
  652. gpio-key,wakeup;
  653. debounce-interval = <15>;
  654. };
  655.  
  656. vol_up {
  657. label = "volume_up";
  658. gpios = <&msm_gpio 90 0x1>;
  659. linux,input-type = <1>;
  660. linux,code = <115>;
  661. gpio-key,wakeup;
  662. debounce-interval = <15>;
  663. };
  664.  
  665. vol_down {
  666. label = "volume_down";
  667. gpios = <&msm_gpio 91 0x1>;
  668. linux,input-type = <1>;
  669. linux,code = <114>;
  670. gpio-key,wakeup;
  671. debounce-interval = <15>;
  672. };
  673. home {
  674. label = "home";
  675. gpios = <&msm_gpio 11 0x1>;
  676. linux,input-type = <1>;
  677. linux,code = <102>;
  678. gpio-key,wakeup;
  679. debounce-interval = <15>;
  680. };
  681.  
  682. menu {
  683. label = "menu";
  684. gpios = <&msm_gpio 17 0x1>;
  685. linux,input-type = <1>;
  686. linux,code = <139>;
  687. // gpio-key,wakeup; //law:del for system sleep abnormal,before modify sleep-current is 22mA ,after sleep-current is 7mA 2015-12-19
  688. debounce-interval = <15>;
  689. };
  690.  
  691. back {
  692. label = "back";
  693. gpios = <&msm_gpio 98 0x1>;
  694. linux,input-type = <1>;
  695. linux,code = <158>;
  696. gpio-key,wakeup;
  697. debounce-interval = <15>;
  698. };
  699. };
  700.  
  701. audio_codec_mtp: sound {
  702. compatible = "qcom,msm8x16-audio-codec";
  703. qcom,model = "msm8909-snd-card";
  704. qcom,msm-snd-card-id = <0>;
  705. qcom,msm-codec-type = "internal";
  706. qcom,msm-ext-pa = "primary";
  707. qcom,msm-mclk-freq = <9600000>;
  708. qcom,msm-mbhc-hphl-swh = <1>; /*joseph modified*/
  709. qcom,msm-mbhc-gnd-swh = <0>;
  710. qcom,msm-hs-micbias-type = "internal";
  711. qcom,msm-micbias1-ext-cap;
  712. qcom,audio-routing =
  713. "RX_BIAS", "MCLK",
  714. "SPK_RX_BIAS", "MCLK",
  715. "INT_LDO_H", "MCLK",
  716. "MIC BIAS Internal1", "Handset Mic", /**joseph modified for internal bias**/
  717. "MIC BIAS Internal2", "Headset Mic",
  718. "MIC BIAS Internal1", "Secondary Mic",
  719. "AMIC1", "MIC BIAS Internal1",
  720. "AMIC2", "MIC BIAS Internal2",
  721. "AMIC3", "MIC BIAS Internal1";
  722. pinctrl-names = "cdc_lines_act",
  723. "cdc_lines_sus",
  724. "cross_conn_det_act",
  725. "cross_conn_det_sus";
  726. pinctrl-0 = <&cdc_pdm_lines_act>;
  727. pinctrl-1 = <&cdc_pdm_lines_sus>;
  728. pinctrl-2 = <&cross_conn_det_act>;
  729. pinctrl-3 = <&cross_conn_det_sus>;
  730. qcom,cdc-us-euro-gpios = <&msm_gpio 97 0>;
  731. asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>,
  732. <&loopback>, <&compress>, <&hostless>,
  733. <&afe>, <&lsm>, <&routing>, <&lpa>,
  734. <&voice_svc>;
  735. asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
  736. "msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback",
  737. "msm-compress-dsp", "msm-pcm-hostless", "msm-pcm-afe",
  738. "msm-lsm-client", "msm-pcm-routing", "msm-pcm-lpa",
  739. "msm-voice-svc";
  740. asoc-cpu = <&dai_pri_auxpcm>, <&dai_hdmi>,
  741. <&dai_mi2s0>, <&dai_mi2s1>, <&dai_mi2s2>, <&dai_mi2s3>,
  742. <&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>,
  743. <&sb_3_rx>, <&sb_3_tx>, <&sb_4_rx>, <&sb_4_tx>,
  744. <&bt_sco_rx>, <&bt_sco_tx>,<&bt_a2dp_rx>,
  745. <&int_fm_rx>, <&int_fm_tx>,
  746. <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>,
  747. <&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>,
  748. <&incall_music_2_rx>;
  749. asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-hdmi.8",
  750. "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
  751. "msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
  752. "msm-dai-q6-dev.16384", "msm-dai-q6-dev.16385",
  753. "msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387",
  754. "msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391",
  755. "msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393",
  756. "msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289",
  757. "msm-dai-q6-dev.12290", "msm-dai-q6-dev.12292",
  758. "msm-dai-q6-dev.12293", "msm-dai-q6-dev.224",
  759. "msm-dai-q6-dev.225", "msm-dai-q6-dev.241",
  760. "msm-dai-q6-dev.240", "msm-dai-q6-dev.32771",
  761. "msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773",
  762. "msm-dai-q6-dev.32770";
  763. asoc-codec = <&stub_codec>, <&pm8909_conga_dig>;
  764. asoc-codec-names = "msm-stub-codec.1", "tombak_codec";
  765. };
  766. };
  767.  
  768. &blsp1_uart1 {
  769. status = "ok";
  770. pinctrl-names = "default";
  771. pinctrl-0 = <&uart_console_sleep>;
  772. };
  773.  
  774. /*add by evan.hai for ttyHSL1*/
  775. &blsp1_uart2 {
  776. status = "ok";
  777. pinctrl-names = "default";
  778. pinctrl-0 = <&uart_console_sleep1>;
  779. };
  780.  
  781. / {
  782. mtp_batterydata: qcom,battery-data {
  783. qcom,rpull-up-kohm = <100>;
  784. qcom,vref-batt-therm = <1800000>;
  785.  
  786. #include "batterydata-palladium.dtsi"
  787. };
  788. };
  789.  
  790. &qcom_rng {
  791. status = "okay";
  792. };
  793.  
  794. &qcom_crypto {
  795. status = "okay";
  796. };
  797.  
  798. &qcom_cedev {
  799. status = "okay";
  800. };
  801.  
  802. &qcom_seecom {
  803. status = "okay";
  804. };
  805.  
  806. &qcom_tzlog {
  807. status = "okay";
  808. };
  809.  
  810. &sdhc_1 {
  811. vdd-supply = <&pm8909_l8>;
  812. qcom,vdd-voltage-level = <2900000 2900000>;
  813. qcom,vdd-current-level = <200 400000>;
  814.  
  815. vdd-io-supply = <&pm8909_l5>;
  816. qcom,vdd-io-always-on;
  817. qcom,vdd-io-lpm-sup;
  818. qcom,vdd-io-voltage-level = <1800000 1800000>;
  819. qcom,vdd-io-current-level = <200 60000>;
  820.  
  821. pinctrl-names = "active", "sleep";
  822. pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
  823. pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
  824.  
  825. qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v";
  826. qcom,nonremovable;
  827.  
  828. status = "ok";
  829. };
  830. //law---2016.4.14-11:47----modify for usb otg-------
  831.  
  832. &usb_otg {
  833. interrupts = <0 134 0>,<0 140 0>,<0 136 0>;
  834. interrupt-names = "core_irq", "async_irq", "phy_irq";
  835.  
  836. qcom,hsusb-otg-mode = <3>;
  837. vbus_otg-supply = <&oem_otg_ext_vreg>;
  838. };
  839. //------------------end-----------------------------
  840. &sdhc_2 {
  841. #address-cells = <0>;
  842. interrupt-parent = <&sdhc_2>;
  843. interrupts = <0 1 2>;
  844. #interrupt-cells = <1>;
  845. interrupt-map-mask = <0xffffffff>;
  846. interrupt-map = <0 &intc 0 125 0
  847. 1 &intc 0 221 0
  848. 2 &msm_gpio 38 0>;
  849. interrupt-names = "hc_irq", "pwr_irq", "status_irq";
  850. cd-gpios = <&msm_gpio 38 0x1>;
  851.  
  852. vdd-supply = <&pm8909_l11>;
  853. qcom,vdd-voltage-level = <1800000 2950000>;
  854. qcom,vdd-current-level = <15000 400000>;
  855.  
  856. vdd-io-supply = <&pm8909_l12>;
  857. qcom,vdd-io-voltage-level = <1800000 2950000>;
  858. qcom,vdd-io-current-level = <200 50000>;
  859.  
  860. pinctrl-names = "active", "sleep";
  861. pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
  862. pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
  863.  
  864. status = "ok";
  865. };
  866.  
  867. &tlmm_pinmux {
  868. mpu6050_int_pin {
  869. qcom,pins = <&gp 96>;
  870. qcom,pin-func = <0>;
  871. qcom,num-grp-pins = <1>;
  872. label = "mpu6050-irq";
  873. mpu6050_default: mpu6050_default {
  874. drive-strength = <6>;
  875. bias-pull-down;
  876. };
  877. mpu6050_sleep: mpu6050_sleep {
  878. drive-strength = <2>;
  879. bias-pull-down;
  880. };
  881. };
  882.  
  883. apds99xx_int_pin {
  884. qcom,pins = <&gp 94>;
  885. qcom,pin-func = <0>;
  886. qcom,num-grp-pins = <1>;
  887. label = "apds99xx-irq";
  888. apds99xx_default: apds99xx_default {
  889. drive-strength = <6>;
  890. bias-pull-up;
  891. };
  892. apds99xx_sleep: apds99xx_sleep {
  893. drive-strength = <2>;
  894. bias-pull-down;
  895. };
  896. };
  897.  
  898. ak8963_int_pin {
  899. qcom,pins = <&gp 65>;
  900. qcom,pin-func = <0>;
  901. qcom,num-grp-pins = <1>;
  902. label = "ak8963-irq";
  903. ak8963_default: ak8963_default {
  904. drive-strength = <6>;
  905. bias-pull-up;
  906. };
  907. ak8963_sleep: ak8963_sleep {
  908. drive-strength = <2>;
  909. bias-pull-down;
  910. };
  911. };
  912. };
  913.  
  914. &i2c_1 { /* BLSP1 QUP1 */
  915. mpu6050@68 { /* Gyroscope and accelerometer sensor combo */
  916. compatible = "invn,mpu6050";
  917. reg = <0x68>;
  918. pinctrl-names = "mpu_default","mpu_sleep";
  919. pinctrl-0 = <&mpu6050_default>;
  920. pinctrl-1 = <&mpu6050_sleep>;
  921. interrupt-parent = <&msm_gpio>;
  922. interrupts = <96 0x1>;
  923. vdd-supply = <&pm8909_l17>;
  924. vlogic-supply = <&pm8909_l6>;
  925. invn,gpio-int = <&msm_gpio 96 0x1>;
  926. invn,place = "Portrait Down";
  927. };
  928.  
  929. nfc:pn547@28 {/*PN7150 NFC*/
  930. compatible = "nxp,pn544";
  931. reg = <0x28>;
  932. pinctrl-names = "nfc_active","nfc_suspend";
  933. pinctrl-0 = <&nfc_int_active &nfc_disable_active>;
  934. pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>;
  935. interrupt-parent = <&msm_gpio>;
  936. interrupts = <14 0x2>;
  937. enable-gpios = <&msm_gpio 92 0x1>;
  938. interrupt-gpios = <&msm_gpio 14 0x1>;
  939. };
  940.  
  941. avago@39 { /* Ambient light and proximity sensor */
  942. compatible = "avago,apds9900";
  943. reg = <0x39>;
  944. pinctrl-names = "default","sleep";
  945. pinctrl-0 = <&apds99xx_default>;
  946. pinctrl-1 = <&apds99xx_sleep>;
  947. interrupt-parent = <&msm_gpio>;
  948. interrupts = <94 0x2002>;
  949. vdd-supply = <&pm8909_l17>;
  950. vio-supply = <&pm8909_l6>;
  951. avago,irq-gpio = <&msm_gpio 94 0x2002>;
  952. avago,ps-threshold = <600>;
  953. avago,ps-hysteresis-threshold = <500>;
  954. avago,ps-pulse = <8>;
  955. avago,ps-pgain = <0>;
  956. avago,als-B = <186>;
  957. avago,als-C = <75>;
  958. avago,als-D = <129>;
  959. avago,ga-value = <256>;
  960. };
  961.  
  962. memsic@30 { /* Magnetic field sensor */
  963. compatible = "memsic,mmc3416x";
  964. reg = <0x30>;
  965. vdd-supply = <&pm8909_l17>;
  966. vio-supply = <&pm8909_l6>;
  967. memsic,dir = "obverse-x-axis-forward";
  968. memsic,auto-report;
  969. };
  970.  
  971. akm@c { /* Magnetic field sensor */
  972. compatible = "ak,ak8963";
  973. reg = <0x0c>;
  974. pinctrl-names = "ak8963_default", "ak8963_sleep";
  975. pinctrl-0 = <&ak8963_default>;
  976. pinctrl-1 = <&ak8963_sleep>;
  977. interrupt-parent = <&msm_gpio>;
  978. interrupts = <65 0x2>;
  979. vdd-supply = <&pm8909_l17>;
  980. vio-supply = <&pm8909_l6>;
  981. ak,layout = <0x6>;
  982. ak,auto-report;
  983. };
  984.  
  985. stk@48 {/*law modify for p-sensor--------2015.11.18-13:07*/
  986. compatible = "stk,stk3x1x";
  987. reg = <0x48>;
  988. interrupt-parent = <&msm_gpio>;
  989. interrupts = <94 0x2>;
  990. vdd-supply = <&pm8909_l17>;
  991. vio-supply = <&pm8909_l6>;
  992. stk,irq-gpio = <&msm_gpio 94 0x02>;
  993. stk,transmittance = <500>;
  994. stk,state-reg = <0x00>;
  995. stk,psctrl-reg = <0x71>;
  996. stk,alsctrl-reg = <0x38>;
  997. stk,ledctrl-reg = <0xFF>;
  998. stk,wait-reg = <0x07>;
  999. stk,ps-thdh = <1700>;
  1000. stk,ps-thdl = <1500>;
  1001. stk,use-fir;
  1002. };
  1003.  
  1004. };
  1005.  
  1006. #include "dsi-panel-auo-qvga-cmd.dtsi"
  1007. #include "dsi-panel-auo-cx-qvga-cmd.dtsi"
  1008. #include "dsi-panel-hx8394d-480p-video.dtsi"
  1009. #include "dsi-panel-hx8394d-720p-video.dtsi"
  1010. #include "dsi-panel-hx8394d-qhd-video.dtsi"
  1011. #include "dsi-panel-ili9881c-720p-video.dtsi"
  1012. #include "dsi-panel-hx8394f-720p-video.dtsi"
  1013.  
  1014. &mdss_mdp {
  1015. qcom,mdss-pref-prim-intf = "dsi";
  1016. };
  1017.  
  1018. &dsi_hx8394f_720p_video {
  1019. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1020. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1021. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1022. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1023. qcom,cont-splash-enabled;
  1024. };
  1025.  
  1026. &dsi_ili9881c_720p_video {
  1027. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1028. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1029. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1030. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1031. qcom,cont-splash-enabled;
  1032. };
  1033.  
  1034. &dsi_auo_cx_qvga_cmd {
  1035. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
  1036. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1037. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1038. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1039. qcom,cont-splash-enabled;
  1040. };
  1041.  
  1042. &dsi_auo_qvga_cmd {
  1043. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
  1044. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1045. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1046. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1047. qcom,cont-splash-enabled;
  1048. };
  1049.  
  1050. &dsi_hx8394d_480_vid {
  1051. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1052. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1053. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1054. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1055. qcom,cont-splash-enabled;
  1056. };
  1057.  
  1058. &dsi_hx8394d_720_vid {
  1059. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1060. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1061. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1062. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1063. qcom,cont-splash-enabled;
  1064. };
  1065.  
  1066. &dsi_hx8394d_qhd_vid {
  1067. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1068. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1069. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1070. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1071. qcom,cont-splash-enabled;
  1072. };
  1073.  
  1074. &pmx_mdss {
  1075. qcom,num-grp-pins = <2>;
  1076. qcom,pins = <&gp 25>, <&gp 95>;
  1077. };
  1078.  
  1079. &pmx_mdss_te {
  1080. qcom,num-grp-pins = <1>;
  1081. qcom,pins = <&gp 24>;
  1082. };
  1083.  
  1084. &mdss_dsi0 {
  1085. qcom,dsi-pref-prim-pan = <&dsi_ili9881c_720p_video>;
  1086. pinctrl-names = "mdss_default", "mdss_sleep";
  1087. pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
  1088. pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
  1089.  
  1090. qcom,platform-enable-gpio = <&msm_gpio 95 0>;
  1091. qcom,platform-reset-gpio = <&msm_gpio 25 0>;
  1092. qcom,platform-iovcc-gpio = <&msm_gpio 28 0>;
  1093. //qcom,platform-bklight-en-gpio = <&msm_gpio 37 0>;
  1094. };
  1095.  
  1096. /* CoreSight */
  1097. &tpiu {
  1098. pinctrl-names = "sdcard", "trace", "swduart",
  1099. "swdtrc", "jtag", "spmi";
  1100. /* NIDnT */
  1101. pinctrl-0 = <&qdsd_clk_sdcard &qdsd_cmd_sdcard
  1102. &qdsd_data0_sdcard &qdsd_data1_sdcard
  1103. &qdsd_data2_sdcard &qdsd_data3_sdcard>;
  1104. pinctrl-1 = <&qdsd_clk_trace &qdsd_cmd_trace
  1105. &qdsd_data0_trace &qdsd_data1_trace
  1106. &qdsd_data2_trace &qdsd_data3_trace>;
  1107. pinctrl-2 = <&qdsd_cmd_swduart &qdsd_data0_swduart
  1108. &qdsd_data1_swduart &qdsd_data2_swduart
  1109. &qdsd_data3_swduart>;
  1110. pinctrl-3 = <&qdsd_clk_swdtrc &qdsd_cmd_swdtrc
  1111. &qdsd_data0_swdtrc &qdsd_data1_swdtrc
  1112. &qdsd_data2_swdtrc &qdsd_data3_swdtrc>;
  1113. pinctrl-4 = <&qdsd_cmd_jtag &qdsd_data0_jtag
  1114. &qdsd_data1_jtag &qdsd_data2_jtag
  1115. &qdsd_data3_jtag>;
  1116. pinctrl-5 = <&qdsd_clk_spmi &qdsd_cmd_spmi
  1117. &qdsd_data0_spmi &qdsd_data3_spmi>;
  1118. };
  1119.  
  1120. #include "dsi-panel-hx8394f-720p-video.dtsi"
  1121.  
  1122. &mdss_mdp {
  1123. qcom,mdss-pref-prim-intf = "dsi";
  1124. };
  1125.  
  1126. &dsi_hx8394f_720p_video {
  1127. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1128. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1129. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1130. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1131. qcom,cont-splash-enabled;
  1132. };
  1133.  
  1134. &dsi_ili9881c_720p_video {
  1135. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1136. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1137. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1138. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1139. qcom,cont-splash-enabled;
  1140. };
  1141.  
  1142. &dsi_auo_cx_qvga_cmd {
  1143. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
  1144. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1145. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1146. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1147. qcom,cont-splash-enabled;
  1148. };
  1149.  
  1150. &dsi_auo_qvga_cmd {
  1151. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
  1152. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1153. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1154. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1155. qcom,cont-splash-enabled;
  1156. };
  1157.  
  1158. &dsi_hx8394d_480_vid {
  1159. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1160. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1161. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1162. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1163. qcom,cont-splash-enabled;
  1164. };
  1165.  
  1166. &dsi_hx8394d_720_vid {
  1167. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1168. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1169. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1170. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1171. qcom,cont-splash-enabled;
  1172. };
  1173.  
  1174. &dsi_hx8394d_qhd_vid {
  1175. qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm";
  1176. qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>;
  1177. qcom,mdss-dsi-bl-pmic-bank-select = <0>;
  1178. qcom,mdss-dsi-pwm-gpio = <&pm8909_mpps 2 0>;
  1179. qcom,cont-splash-enabled;
  1180. };
  1181.  
  1182. &pmx_mdss {
  1183. qcom,num-grp-pins = <2>;
  1184. qcom,pins = <&gp 25>, <&gp 95>;
  1185. };
  1186.  
  1187. &pmx_mdss_te {
  1188. qcom,num-grp-pins = <1>;
  1189. qcom,pins = <&gp 24>;
  1190. };
  1191.  
  1192. &mdss_dsi0 {
  1193. qcom,dsi-pref-prim-pan = <&dsi_ili9881c_720p_video>;
  1194. pinctrl-names = "mdss_default", "mdss_sleep";
  1195. pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
  1196. pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
  1197.  
  1198. qcom,platform-enable-gpio = <&msm_gpio 95 0>;
  1199. qcom,platform-reset-gpio = <&msm_gpio 25 0>;
  1200. qcom,platform-iovcc-gpio = <&msm_gpio 28 0>;
  1201. //qcom,platform-bklight-en-gpio = <&msm_gpio 37 0>;
  1202. };
  1203.  
  1204. /* CoreSight */
  1205. &tpiu {
  1206. pinctrl-names = "sdcard", "trace", "swduart",
  1207. "swdtrc", "jtag", "spmi";
  1208. /* NIDnT */
  1209. pinctrl-0 = <&qdsd_clk_sdcard &qdsd_cmd_sdcard
  1210. &qdsd_data0_sdcard &qdsd_data1_sdcard
  1211. &qdsd_data2_sdcard &qdsd_data3_sdcard>;
  1212. pinctrl-1 = <&qdsd_clk_trace &qdsd_cmd_trace
  1213. &qdsd_data0_trace &qdsd_data1_trace
  1214. &qdsd_data2_trace &qdsd_data3_trace>;
  1215. pinctrl-2 = <&qdsd_cmd_swduart &qdsd_data0_swduart
  1216. &qdsd_data1_swduart &qdsd_data2_swduart
  1217. &qdsd_data3_swduart>;
  1218. pinctrl-3 = <&qdsd_clk_swdtrc &qdsd_cmd_swdtrc
  1219. &qdsd_data0_swdtrc &qdsd_data1_swdtrc
  1220. &qdsd_data2_swdtrc &qdsd_data3_swdtrc>;
  1221. pinctrl-4 = <&qdsd_cmd_jtag &qdsd_data0_jtag
  1222. &qdsd_data1_jtag &qdsd_data2_jtag
  1223. &qdsd_data3_jtag>;
  1224. pinctrl-5 = <&qdsd_clk_spmi &qdsd_cmd_spmi
  1225. &qdsd_data0_spmi &qdsd_data3_spmi>;
  1226. };
Add Comment
Please, Sign In to add comment