Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 49.96 KB | None | 0 0
  1. /* Copyright (c) 2014-2016, 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 <dt-bindings/interrupt-controller/arm-gic.h>
  14.  
  15. &rpm_bus {
  16. /* PM8994 S1 + S6 = 2 phase VDD_CX supply */
  17. rpm-regulator-smpa1 {
  18. status = "okay";
  19. pm8994_s1_corner: regulator-s1-corner {
  20. compatible = "qcom,rpm-smd-regulator";
  21. regulator-name = "pm8994_s1_corner";
  22. qcom,set = <3>;
  23. regulator-min-microvolt = <1>;
  24. regulator-max-microvolt = <7>;
  25. qcom,use-voltage-corner;
  26. };
  27.  
  28. pm8994_s1_floor_corner: regulator-s1-floor-corner {
  29. compatible = "qcom,rpm-smd-regulator";
  30. regulator-name = "pm8994_s1_floor_corner";
  31. qcom,set = <3>;
  32. regulator-min-microvolt = <1>;
  33. regulator-max-microvolt = <7>;
  34. qcom,use-voltage-floor-corner;
  35. qcom,always-send-voltage;
  36. };
  37.  
  38. pm8994_s1_corner_ao: regulator-s1-corner-ao {
  39. compatible = "qcom,rpm-smd-regulator";
  40. regulator-name = "pm8994_s1_corner_ao";
  41. qcom,set = <1>;
  42. regulator-min-microvolt = <1>;
  43. regulator-max-microvolt = <7>;
  44. qcom,use-voltage-corner;
  45. };
  46. };
  47.  
  48. /* PM8994 S2 + S12 = 2 phase VDD_MX supply */
  49. rpm-regulator-smpa2 {
  50. status = "okay";
  51. pm8994_s2_corner: regulator-s2-corner {
  52. compatible = "qcom,rpm-smd-regulator";
  53. regulator-name = "pm8994_s2_corner";
  54. qcom,set = <3>;
  55. regulator-min-microvolt = <1>;
  56. regulator-max-microvolt = <7>;
  57. qcom,use-voltage-corner;
  58. };
  59.  
  60. pm8994_s2_corner_ao: regulator-s2-corner-ao {
  61. compatible = "qcom,rpm-smd-regulator";
  62. regulator-name = "pm8994_s2_corner_ao";
  63. qcom,set = <1>;
  64. regulator-min-microvolt = <1>;
  65. regulator-max-microvolt = <7>;
  66. qcom,use-voltage-corner;
  67. };
  68. };
  69.  
  70. rpm-regulator-smpa3 {
  71. status = "okay";
  72. pm8994_s3: regulator-s3 {
  73. regulator-min-microvolt = <1300000>;
  74. regulator-max-microvolt = <1300000>;
  75. qcom,init-voltage = <1300000>;
  76. status = "okay";
  77. };
  78. };
  79.  
  80. rpm-regulator-smpa4 {
  81. status = "okay";
  82. pm8994_s4: regulator-s4 {
  83. regulator-min-microvolt = <1800000>;
  84. regulator-max-microvolt = <1800000>;
  85. qcom,init-voltage = <1800000>;
  86. status = "okay";
  87. };
  88. };
  89.  
  90. rpm-regulator-smpa5 {
  91. status = "okay";
  92. pm8994_s5: regulator-s5 {
  93. regulator-min-microvolt = <2150000>;
  94. regulator-max-microvolt = <2150000>;
  95. qcom,init-voltage = <2150000>;
  96. status = "okay";
  97. };
  98. };
  99.  
  100. rpm-regulator-smpa7 {
  101. status = "okay";
  102. pm8994_s7: regulator-s7 {
  103. regulator-min-microvolt = <800000>;
  104. regulator-max-microvolt = <800000>;
  105. qcom,init-voltage = <800000>;
  106. status = "okay";
  107. };
  108. };
  109.  
  110. rpm-regulator-ldoa1 {
  111. status = "okay";
  112. pm8994_l1: regulator-l1 {
  113. regulator-min-microvolt = <1000000>;
  114. regulator-max-microvolt = <1000000>;
  115. qcom,init-voltage = <1000000>;
  116. status = "okay";
  117. };
  118. };
  119.  
  120. rpm-regulator-ldoa2 {
  121. status = "okay";
  122. pm8994_l2: regulator-l2 {
  123. regulator-min-microvolt = <1250000>;
  124. regulator-max-microvolt = <1250000>;
  125. qcom,init-voltage = <1250000>;
  126. proxy-supply = <&pm8994_l2>;
  127. qcom,proxy-consumer-enable;
  128. qcom,proxy-consumer-current = <10000>;
  129. status = "okay";
  130. };
  131. };
  132.  
  133. rpm-regulator-ldoa3 {
  134. status = "okay";
  135. pm8994_l3: regulator-l3 {
  136. regulator-min-microvolt = <850000>;
  137. regulator-max-microvolt = <850000>;
  138. qcom,init-voltage = <850000>;
  139. status = "okay";
  140. };
  141. };
  142.  
  143. rpm-regulator-ldoa4 {
  144. status = "okay";
  145. pm8994_l4: regulator-l4 {
  146. regulator-min-microvolt = <1225000>;
  147. regulator-max-microvolt = <1225000>;
  148. qcom,init-voltage = <1225000>;
  149. status = "okay";
  150. };
  151. };
  152.  
  153. rpm-regulator-ldoa6 {
  154. status = "okay";
  155. pm8994_l6: regulator-l6 {
  156. regulator-min-microvolt = <1200000>;
  157. regulator-max-microvolt = <1200000>;
  158. qcom,init-voltage = <1200000>;
  159. status = "okay";
  160. };
  161. };
  162.  
  163. rpm-regulator-ldoa8 {
  164. status = "okay";
  165. pm8994_l8: regulator-l8 {
  166. regulator-min-microvolt = <1800000>;
  167. regulator-max-microvolt = <1800000>;
  168. qcom,init-voltage = <1800000>;
  169. status = "okay";
  170. };
  171. };
  172.  
  173. rpm-regulator-ldoa9 {
  174. status = "okay";
  175. pm8994_l9: regulator-l9 {
  176. regulator-min-microvolt = <1800000>;
  177. regulator-max-microvolt = <1800000>;
  178. qcom,init-voltage = <1800000>;
  179. status = "okay";
  180. };
  181. };
  182.  
  183. rpm-regulator-ldoa10 {
  184. status = "okay";
  185. pm8994_l10: regulator-l10 {
  186. regulator-min-microvolt = <1800000>;
  187. regulator-max-microvolt = <1800000>;
  188. qcom,init-voltage = <1800000>;
  189. status = "okay";
  190. };
  191. };
  192.  
  193. rpm-regulator-ldoa11 {
  194. status = "okay";
  195. pm8994_l11: regulator-l11 {
  196. regulator-min-microvolt = <1150000>;
  197. regulator-max-microvolt = <1150000>;
  198. qcom,init-voltage = <1150000>;
  199. status = "okay";
  200. };
  201. };
  202.  
  203. rpm-regulator-ldoa12 {
  204. status = "okay";
  205. pm8994_l12: regulator-l12 {
  206. regulator-min-microvolt = <1800000>;
  207. regulator-max-microvolt = <1800000>;
  208. qcom,init-voltage = <1800000>;
  209. proxy-supply = <&pm8994_l12>;
  210. qcom,proxy-consumer-enable;
  211. qcom,proxy-consumer-current = <10000>;
  212. status = "okay";
  213. };
  214. };
  215.  
  216. rpm-regulator-ldoa13 {
  217. status = "okay";
  218. pm8994_l13: regulator-l13 {
  219. regulator-min-microvolt = <1800000>;
  220. regulator-max-microvolt = <2950000>;
  221. qcom,init-voltage = <2950000>;
  222. status = "okay";
  223. };
  224. };
  225.  
  226. rpm-regulator-ldoa14 {
  227. status = "okay";
  228. pm8994_l14: regulator-l14 {
  229. regulator-min-microvolt = <1800000>;
  230. regulator-max-microvolt = <1800000>;
  231. qcom,init-voltage = <1800000>;
  232. proxy-supply = <&pm8994_l14>;
  233. qcom,proxy-consumer-enable;
  234. qcom,proxy-consumer-current = <10000>;
  235. status = "okay";
  236. };
  237. };
  238.  
  239. rpm-regulator-ldoa15 {
  240. status = "okay";
  241. pm8994_l15: regulator-l15 {
  242. regulator-min-microvolt = <1800000>;
  243. regulator-max-microvolt = <1800000>;
  244. qcom,init-voltage = <1800000>;
  245. status = "okay";
  246. };
  247. };
  248.  
  249. rpm-regulator-ldoa16 {
  250. status = "okay";
  251. pm8994_l16: regulator-l16 {
  252. regulator-min-microvolt = <2700000>;
  253. regulator-max-microvolt = <2700000>;
  254. qcom,init-voltage = <2700000>;
  255. status = "okay";
  256. };
  257. };
  258.  
  259. rpm-regulator-ldoa17 {
  260. status = "okay";
  261. pm8994_l17: regulator-l17 {
  262. regulator-min-microvolt = <2500000>;
  263. regulator-max-microvolt = <2500000>;
  264. qcom,init-voltage = <2500000>;
  265. status = "okay";
  266. };
  267. };
  268.  
  269. rpm-regulator-ldoa18 {
  270. status = "okay";
  271. pm8994_l18: regulator-l18 {
  272. regulator-min-microvolt = <2700000>;
  273. regulator-max-microvolt = <2900000>;
  274. qcom,init-voltage = <2700000>;
  275. status = "okay";
  276. };
  277.  
  278. pm8994_l18_pin_ctrl: regulator-l18-pin-ctrl {
  279. compatible = "qcom,rpm-smd-regulator";
  280. regulator-name = "pm8994_l18_pin_ctrl";
  281. qcom,set = <3>;
  282. regulator-min-microvolt = <2700000>;
  283. regulator-max-microvolt = <2900000>;
  284. qcom,init-voltage = <2700000>;
  285. /*
  286. * LDO 18 output is enabled when PM8994 GPIO 11 (HW_EN2)
  287. * is driven high.
  288. */
  289. qcom,enable-with-pin-ctrl = <0 4>;
  290. };
  291. };
  292.  
  293. rpm-regulator-ldoa19 {
  294. status = "okay";
  295. pm8994_l19: regulator-l19 {
  296. regulator-min-microvolt = <3000000>;
  297. regulator-max-microvolt = <3000000>;
  298. qcom,init-voltage = <3000000>;
  299. status = "okay";
  300. };
  301. };
  302.  
  303. rpm-regulator-ldoa20 {
  304. status = "okay";
  305. pm8994_l20: regulator-l20 {
  306. regulator-min-microvolt = <2950000>;
  307. regulator-max-microvolt = <2950000>;
  308. qcom,init-voltage = <2950000>;
  309. status = "okay";
  310. };
  311. };
  312.  
  313. rpm-regulator-ldoa21 {
  314. status = "okay";
  315. pm8994_l21: regulator-l21 {
  316. regulator-min-microvolt = <2950000>;
  317. regulator-max-microvolt = <2950000>;
  318. qcom,init-voltage = <2950000>;
  319. status = "okay";
  320. };
  321. };
  322.  
  323. rpm-regulator-ldoa22 {
  324. status = "okay";
  325. pm8994_l22: regulator-l22 {
  326. regulator-min-microvolt = <3300000>;
  327. regulator-max-microvolt = <3300000>;
  328. qcom,init-voltage = <3300000>;
  329. status = "okay";
  330. };
  331. };
  332.  
  333. rpm-regulator-ldoa23 {
  334. status = "okay";
  335. pm8994_l23: regulator-l23 {
  336. regulator-min-microvolt = <2800000>;
  337. regulator-max-microvolt = <2800000>;
  338. qcom,init-voltage = <2800000>;
  339. status = "okay";
  340. };
  341. };
  342.  
  343. rpm-regulator-ldoa24 {
  344. status = "okay";
  345. pm8994_l24: regulator-l24 {
  346. regulator-min-microvolt = <3075000>;
  347. regulator-max-microvolt = <3075000>;
  348. qcom,init-voltage = <3075000>;
  349. status = "okay";
  350. };
  351. };
  352.  
  353. rpm-regulator-ldoa25 {
  354. status = "okay";
  355. pm8994_l25: regulator-l25 {
  356. regulator-min-microvolt = <1200000>;
  357. regulator-max-microvolt = <1200000>;
  358. qcom,init-voltage = <1200000>;
  359. proxy-supply = <&pm8994_l25>;
  360. qcom,proxy-consumer-enable;
  361. qcom,proxy-consumer-current = <10000>;
  362. status = "okay";
  363. };
  364. };
  365.  
  366. /* PM8994 LDO26 = VDD_SS_CX supply */
  367. rpm-regulator-ldoa26 {
  368. status = "okay";
  369. pm8994_l26_corner: regulator-l26-corner {
  370. compatible = "qcom,rpm-smd-regulator";
  371. regulator-name = "pm8994_l26_corner";
  372. qcom,set = <3>;
  373. regulator-min-microvolt = <1>;
  374. regulator-max-microvolt = <7>;
  375. qcom,use-voltage-corner;
  376. };
  377.  
  378. pm8994_l26_floor_corner: regulator-l26-floor-corner {
  379. compatible = "qcom,rpm-smd-regulator";
  380. regulator-name = "pm8994_l26_floor_corner";
  381. qcom,set = <3>;
  382. regulator-min-microvolt = <1>;
  383. regulator-max-microvolt = <7>;
  384. qcom,use-voltage-floor-corner;
  385. qcom,always-send-voltage;
  386. };
  387. };
  388.  
  389. rpm-regulator-ldoa27 {
  390. status = "okay";
  391. pm8994_l27: regulator-l27 {
  392. regulator-min-microvolt = <1000000>;
  393. regulator-max-microvolt = <1000000>;
  394. qcom,init-voltage = <1000000>;
  395. status = "okay";
  396. };
  397. };
  398.  
  399. rpm-regulator-ldoa28 {
  400. status = "okay";
  401. pm8994_l28: regulator-l28 {
  402. regulator-min-microvolt = <925000>;
  403. regulator-max-microvolt = <925000>;
  404. qcom,init-voltage = <925000>;
  405. proxy-supply = <&pm8994_l28>;
  406. qcom,proxy-consumer-enable;
  407. qcom,proxy-consumer-current = <10000>;
  408. status = "okay";
  409. };
  410. };
  411.  
  412. rpm-regulator-ldoa29 {
  413. status = "okay";
  414. pm8994_l29: regulator-l29 {
  415. regulator-min-microvolt = <2800000>;
  416. regulator-max-microvolt = <2800000>;
  417. qcom,init-voltage = <2800000>;
  418. status = "okay";
  419. };
  420. };
  421.  
  422. rpm-regulator-ldoa30 {
  423. status = "okay";
  424. pm8994_l30: regulator-l30 {
  425. regulator-min-microvolt = <1800000>;
  426. regulator-max-microvolt = <1800000>;
  427. qcom,init-voltage = <1800000>;
  428. status = "okay";
  429. };
  430. };
  431.  
  432. rpm-regulator-ldoa32 {
  433. status = "okay";
  434. pm8994_l32: regulator-l32 {
  435. regulator-min-microvolt = <1800000>;
  436. regulator-max-microvolt = <1800000>;
  437. qcom,init-voltage = <1800000>;
  438. status = "okay";
  439. };
  440. };
  441.  
  442. rpm-regulator-vsa1 {
  443. status = "okay";
  444. pm8994_lvs1: regulator-lvs1 {
  445. status = "okay";
  446. };
  447. };
  448.  
  449. rpm-regulator-vsa2 {
  450. status = "okay";
  451. pm8994_lvs2: regulator-lvs2 {
  452. status = "okay";
  453. };
  454. };
  455.  
  456. rpm-regulator-smpb1 {
  457. status = "okay";
  458. pmi8994_s1: regulator-s1 {
  459. regulator-min-microvolt = <1025000>;
  460. regulator-max-microvolt = <1025000>;
  461. qcom,init-voltage = <1025000>;
  462. status = "okay";
  463. };
  464. };
  465.  
  466. rpm-regulator-bstb {
  467. status = "okay";
  468. pmi8994_boost_5v: regulator-bst {
  469. /*
  470. * When enabled, the PMI8994 Boost regulator always
  471. * outputs 5V. This takes precedence over the pin
  472. * control boost regulator request.
  473. */
  474. regulator-name = "pmi8994_boost_5v";
  475. parent-supply = <&pon_perph_reg>;
  476. status = "okay";
  477. };
  478. pmi8994_boost_pin_ctrl: regulator-bst-pin-ctrl {
  479. /*
  480. * When enabled, the output voltage of the PMI8994
  481. * boost regulator is determined by the state of the
  482. * REQ_5V_BST pin. If the pin signal is high, then the
  483. * regulator outputs 5V. If the pin signal is low, then
  484. * the regulator outputs VPH_PWR voltage.
  485. */
  486. compatible = "qcom,rpm-smd-regulator";
  487. regulator-name = "pmi8994_boost_pin_ctrl";
  488. parent-supply = <&pon_perph_reg>;
  489. qcom,set = <3>;
  490. qcom,enable-with-pin-ctrl = <0 1>;
  491. };
  492. };
  493.  
  494. rpm-regulator-bbyb {
  495. status = "okay";
  496. pmi8994_boostbypass: regulator-bby {
  497. status = "okay";
  498. regulator-min-microvolt = <3150000>;
  499. regulator-max-microvolt = <3600000>;
  500. qcom,init-voltage = <3150000>;
  501. };
  502. };
  503. };
  504.  
  505. /* SPM controlled regulators: */
  506. &spmi_bus {
  507. qcom,pm8994@1 {
  508. /*
  509. * PM8994 S8 + S9 + S10 + S11 = 4 phase VDD_APCC supply
  510. * S11 is the gang leader.
  511. */
  512. pm8994_s11: spm-regulator@3200 {
  513. compatible = "qcom,spm-regulator";
  514. reg = <0x3200 0x100>;
  515. regulator-name = "pm8994_s11";
  516. regulator-min-microvolt = <470000>;
  517. regulator-max-microvolt = <1140000>;
  518. qcom,max-voltage-step = <150000>;
  519. qcom,cpu-num = <0>;
  520. qcom,recal-mask = <3>;
  521.  
  522. pm8994_s11_limit: avs-limit-regulator {
  523. regulator-name = "pm8994_s11_avs_limit";
  524. regulator-min-microvolt = <470000>;
  525. regulator-max-microvolt = <1140000>;
  526. };
  527. };
  528. };
  529. };
  530.  
  531. /* SPMI controlled regulators: */
  532. &spmi_bus {
  533. qcom,pmi8994@3 {
  534. /* PMI8994 S2 + S3 = 2 phase VDD_GFX supply */
  535. pmi8994_s2: regulator@1700 {
  536. compatible = "qcom,qpnp-regulator";
  537. reg = <0x1700 0x100>;
  538. regulator-name = "pmi8994_s2";
  539. regulator-min-microvolt = <400000>;
  540. regulator-max-microvolt = <1015000>;
  541. qcom,enable-time = <500>;
  542. };
  543. };
  544.  
  545. qcom,pm8004@5 {
  546. spmi-slave-container;
  547. reg = <0x5>;
  548. #address-cells = <1>;
  549. #size-cells = <1>;
  550. /*
  551. * PM8004 S2 + S4 = 2 phase VDD_GFX supply when PM8004 is
  552. * present on the board.
  553. */
  554. pm8004_s2: regulator@1700 {
  555. compatible = "qcom,qpnp-regulator";
  556. reg = <0x1700 0x100>;
  557. regulator-name = "pm8004_s2";
  558. regulator-min-microvolt = <400000>;
  559. regulator-max-microvolt = <1015000>;
  560. qcom,enable-time = <500>;
  561. status = "disabled";
  562. };
  563. };
  564. };
  565.  
  566. &soc {
  567. /* CPR controlled regulators */
  568. apcc_cpr: cpr3-ctrl@99e8000 {
  569. compatible = "qcom,cpr3-msm8996-hmss-regulator";
  570. reg = <0x099e8000 0x4000>, <0x00074000 0x1000>;
  571. reg-names = "cpr_ctrl", "fuse_base";
  572. clocks = <&clock_gcc clk_gcc_hmss_rbcpr_clk>;
  573. clock-names = "core_clk";
  574. interrupts = <GIC_SPI 48 IRQ_TYPE_EDGE_RISING>,
  575. <GIC_SPI 47 IRQ_TYPE_EDGE_RISING>;
  576. interrupt-names = "cpr", "ceiling";
  577. qcom,cpr-ctrl-name = "apcc";
  578.  
  579. qcom,cpr-sensor-time = <1000>;
  580. qcom,cpr-loop-time = <5000000>;
  581. qcom,cpr-idle-cycles = <15>;
  582. qcom,cpr-up-down-delay-time = <3000>;
  583. qcom,cpr-step-quot-init-min = <11>;
  584. qcom,cpr-step-quot-init-max = <13>;
  585. qcom,cpr-count-mode = <0>; /* All-at-once min */
  586. qcom,cpr-count-repeat = <25>;
  587.  
  588. qcom,apm-ctrl = <&apc_apm>;
  589. qcom,apm-threshold-voltage = <850000>;
  590. qcom,apm-hysteresis-voltage = <5000>;
  591. qcom,system-supply-max-voltage = <1015000>;
  592. qcom,mem-acc-supply-threshold-voltage = <700000>;
  593. qcom,mem-acc-supply-corner-map = <1 2>;
  594.  
  595. vdd-supply = <&pm8994_s11>;
  596. qcom,voltage-step = <5000>;
  597. vdd-limit-supply = <&pm8994_s11_limit>;
  598. mem-acc-thread0-supply = <&apc0_pwrcl_mem_acc_vreg>;
  599. mem-acc-thread1-supply = <&apc1_perfcl_mem_acc_vreg>;
  600. mem-acc-supply = <&apcc_l3_mem_acc_vreg>;
  601. vdd-thread0-ldo-supply = <&kryo0_vreg>;
  602. vdd-thread1-ldo-supply = <&kryo1_vreg>;
  603. vdd-thread0-ldo-ret-supply = <&kryo0_retention_vreg>;
  604. vdd-thread1-ldo-ret-supply = <&kryo1_retention_vreg>;
  605. proxy-supply = <&apc0_cbf_vreg>;
  606.  
  607. qcom,cpr-enable;
  608. qcom,cpr-clock-throttling = <0x20>;
  609.  
  610. qcom,cpr-aging-ref-voltage = <905000>;
  611.  
  612. thread@0 {
  613. qcom,cpr-thread-id = <0>;
  614. qcom,cpr-consecutive-up = <0>;
  615. qcom,cpr-consecutive-down = <3>;
  616. qcom,cpr-up-threshold = <2>;
  617. qcom,cpr-down-threshold = <2>;
  618.  
  619. apc0_pwrcl_vreg: regulator-pwrcl {
  620. regulator-name = "apc0_pwrcl_corner";
  621. regulator-min-microvolt = <1>;
  622. regulator-max-microvolt = <16>;
  623.  
  624. qcom,cpr-pd-bypass-mask = <0x07>;
  625. qcom,cpr-fuse-corners = <5>;
  626. qcom,cpr-fuse-combos = <16>;
  627. qcom,cpr-speed-bins = <2>;
  628. qcom,cpr-speed-bin-corners = <16 13>;
  629. qcom,cpr-corners =
  630. /* Speed bin 0 */
  631. <16 16 16 16 16 16 16 16>,
  632.  
  633. /* Speed bin 1 */
  634. <13 13 13 13 13 13 13 13>;
  635.  
  636. qcom,ldo-min-headroom-voltage = <150000>;
  637. qcom,ldo-max-headroom-voltage = <470000>;
  638. qcom,ldo-max-voltage = <890000>;
  639. qcom,uses-mem-acc;
  640.  
  641. qcom,cpr-corner-fmax-map =
  642. /* Speed bin 0 */
  643. <1 2 7 12 16>,
  644.  
  645. /* Speed bin 1 */
  646. <1 2 7 12 13>;
  647.  
  648. qcom,cpr-voltage-ceiling =
  649. /* Speed bin 0 */
  650. <670000 670000 745000 745000 745000
  651. 745000 745000 905000 905000 905000
  652. 905000 905000 1140000 1140000 1140000
  653. 1140000>,
  654.  
  655. /* Speed bin 1 */
  656. <670000 670000 745000 745000 745000
  657. 745000 745000 905000 905000 905000
  658. 905000 905000 1140000>;
  659.  
  660. qcom,cpr-voltage-floor =
  661. /* Speed bin 0 */
  662. <625000 625000 625000 625000 625000
  663. 625000 625000 625000 625000 625000
  664. 625000 625000 625000 625000 625000
  665. 625000>,
  666. <625000 625000 625000 625000 625000
  667. 625000 625000 625000 625000 625000
  668. 625000 625000 625000 625000 625000
  669. 625000>,
  670. <625000 625000 625000 625000 625000
  671. 625000 625000 625000 625000 625000
  672. 625000 625000 625000 625000 625000
  673. 625000>,
  674. <625000 625000 625000 625000 625000
  675. 625000 625000 625000 625000 625000
  676. 625000 625000 625000 625000 625000
  677. 625000>,
  678. <625000 625000 625000 625000 625000
  679. 625000 625000 625000 625000 625000
  680. 625000 625000 625000 625000 625000
  681. 625000>,
  682. <625000 625000 625000 625000 625000
  683. 625000 625000 625000 625000 625000
  684. 625000 625000 625000 625000 625000
  685. 625000>,
  686. <470000 470000 470000 470000 470000
  687. 470000 470000 470000 470000 470000
  688. 470000 470000 470000 470000 470000
  689. 470000>,
  690. <470000 470000 470000 470000 470000
  691. 470000 470000 470000 470000 470000
  692. 470000 470000 470000 470000 470000
  693. 470000>,
  694.  
  695. /* Speed bin 1 */
  696. <625000 625000 625000 625000 625000
  697. 625000 625000 625000 625000 625000
  698. 625000 625000 625000>,
  699. <625000 625000 625000 625000 625000
  700. 625000 625000 625000 625000 625000
  701. 625000 625000 625000>,
  702. <625000 625000 625000 625000 625000
  703. 625000 625000 625000 625000 625000
  704. 625000 625000 625000>,
  705. <625000 625000 625000 625000 625000
  706. 625000 625000 625000 625000 625000
  707. 625000 625000 625000>,
  708. <625000 625000 625000 625000 625000
  709. 625000 625000 625000 625000 625000
  710. 625000 625000 625000>,
  711. <625000 625000 625000 625000 625000
  712. 625000 625000 625000 625000 625000
  713. 625000 625000 625000>,
  714. <470000 470000 470000 470000 470000
  715. 470000 470000 470000 470000 470000
  716. 470000 470000 470000>,
  717. <470000 470000 470000 470000 470000
  718. 470000 470000 470000 470000 470000
  719. 470000 470000 470000>;
  720.  
  721. qcom,cpr-floor-to-ceiling-max-range =
  722. /* Speed bin 0 */
  723. <50000 50000 80000 80000 80000
  724. 80000 80000 80000 80000 80000
  725. 80000 80000 80000 80000 80000
  726. 80000>,
  727.  
  728. /* Speed bin 1 */
  729. <50000 50000 80000 80000 80000
  730. 80000 80000 80000 80000 80000
  731. 80000 80000 80000>;
  732.  
  733. qcom,corner-frequencies =
  734. /* Speed bin 0 */
  735. <307200000 422400000 480000000
  736. 556800000 652800000 729600000
  737. 844800000 960000000 1036800000
  738. 1113600000 1190400000 1228800000
  739. 1324800000 1401600000 1478400000
  740. 1593600000>,
  741.  
  742. /* Speed bin 1 */
  743. <307200000 422400000 480000000
  744. 556800000 652800000 729600000
  745. 844800000 960000000 1036800000
  746. 1113600000 1190400000 1228800000
  747. 1363200000>;
  748.  
  749. qcom,cpr-ro-scaling-factor =
  750. < 0 0 3112 2666 2947 2543 2271 1979
  751. 2623 2317 2772 2450 0 0 0 0>,
  752. < 0 0 3112 2666 2947 2543 2271 1979
  753. 2623 2317 2772 2450 0 0 0 0>,
  754. < 0 0 3112 2666 2947 2543 2271 1979
  755. 2623 2317 2772 2450 0 0 0 0>,
  756. < 0 0 3112 2666 2947 2543 2271 1979
  757. 2623 2317 2772 2450 0 0 0 0>,
  758. < 0 0 2889 2528 2740 2426 2310 2040
  759. 2519 2257 2668 2372 0 0 0 0>;
  760.  
  761. qcom,cpr-open-loop-voltage-fuse-adjustment =
  762. /* Speed bin 0 */
  763. <40000 20000 45000 15000 10000>,
  764. <40000 20000 45000 15000 10000>,
  765. <40000 20000 45000 15000 10000>,
  766. <55000 20000 60000 30000 25000>,
  767. <55000 20000 60000 30000 25000>,
  768. <55000 20000 60000 30000 25000>,
  769. <55000 20000 60000 30000 25000>,
  770. <55000 20000 60000 30000 25000>,
  771.  
  772. /* Speed bin 1 */
  773. <40000 20000 45000 15000 10000>,
  774. <40000 20000 45000 15000 10000>,
  775. <40000 20000 45000 15000 10000>,
  776. <55000 20000 60000 30000 25000>,
  777. <55000 20000 60000 30000 25000>,
  778. <55000 20000 60000 30000 25000>,
  779. <55000 20000 60000 30000 25000>,
  780. <55000 20000 60000 30000 25000>;
  781.  
  782. qcom,cpr-closed-loop-voltage-fuse-adjustment =
  783. /* Speed bin 0 */
  784. <55000 55000 60000 60000 60000>,
  785. <40000 30000 25000 15000 15000>,
  786. <40000 30000 25000 15000 15000>,
  787. <40000 30000 25000 15000 15000>,
  788. <40000 30000 25000 15000 15000>,
  789. <40000 30000 25000 15000 15000>,
  790. <40000 30000 25000 15000 15000>,
  791. <40000 30000 25000 15000 15000>,
  792.  
  793. /* Speed bin 1 */
  794. <55000 55000 60000 60000 60000>,
  795. <40000 30000 25000 15000 15000>,
  796. <40000 30000 25000 15000 15000>,
  797. <40000 30000 25000 15000 15000>,
  798. <40000 30000 25000 15000 15000>,
  799. <40000 30000 25000 15000 15000>,
  800. <40000 30000 25000 15000 15000>,
  801. <40000 30000 25000 15000 15000>;
  802.  
  803. qcom,cpr-open-loop-voltage-adjustment =
  804. /* Speed bin 0 */
  805. <(-15000) (-15000) (-15000) (-15000)
  806. (-13000) (-14000) (-15000) (-18000)
  807. (-20000) (-22000) (-24000) (-25000)
  808. (-26000) (-27000) (-28000) (-30000)>,
  809.  
  810. /* Speed bin 1 */
  811. <(-15000) (-15000) (-15000) (-15000)
  812. (-13000) (-14000) (-15000) (-18000)
  813. (-20000) (-22000) (-24000) (-25000)
  814. (-26000)>;
  815.  
  816. qcom,cpr-open-loop-voltage-min-diff =
  817. /* Speed bin 0 */
  818. <0 0 0 0 (-50000) 0 0 0 0 0 0 0 0 0 0 0>,
  819.  
  820. /* Speed bin 1 */
  821. <0 0 0 0 (-50000) 0 0 0 0 0 0 0 0>;
  822.  
  823. qcom,cpr-closed-loop-voltage-adjustment =
  824. /* Speed bin 0 */
  825. <(-15000) (-15000) (-15000) (-15000)
  826. (-13000) (-14000) (-15000) (-18000)
  827. (-20000) (-22000) (-24000) (-25000)
  828. (-26000) (-27000) (-28000) (-30000)>,
  829.  
  830. /* Speed bin 1 */
  831. <(-15000) (-15000) (-15000) (-15000)
  832. (-13000) (-14000) (-15000) (-18000)
  833. (-20000) (-22000) (-24000) (-25000)
  834. (-26000)>;
  835.  
  836. qcom,allow-voltage-interpolation;
  837. qcom,allow-quotient-interpolation;
  838. qcom,cpr-scaled-open-loop-voltage-as-ceiling;
  839.  
  840. qcom,cpr-aging-max-voltage-adjustment = <15000>;
  841. qcom,cpr-aging-ref-corner = <12 12>;
  842. qcom,cpr-aging-ro-scaling-factor = <3200>;
  843. qcom,allow-aging-voltage-adjustment =
  844. /* Speed bin 0 */
  845. <0 0 0 1 1 1 1 1>,
  846.  
  847. /* Speed bin 1 */
  848. <0 0 0 1 1 1 1 1>;
  849. };
  850.  
  851. apc0_cbf_vreg: regulator-cbf {
  852. regulator-name = "apc0_cbf_corner";
  853. regulator-min-microvolt = <1>;
  854. regulator-max-microvolt = <19>;
  855.  
  856. qcom,proxy-consumer-enable;
  857. qcom,proxy-consumer-voltage = <13 19>;
  858.  
  859. qcom,cpr-pd-bypass-mask = <0x18>;
  860. qcom,cpr-fuse-corners = <5>;
  861. qcom,cpr-fuse-combos = <16>;
  862. qcom,cpr-speed-bins = <2>;
  863. qcom,cpr-speed-bin-corners = <19 15>;
  864. qcom,cpr-corners =
  865. /* Speed bin 0 */
  866. <19 19 19 19 19 19 19 19>,
  867.  
  868. /* Speed bin 1 */
  869. <15 15 15 15 15 15 15 15>;
  870.  
  871. qcom,cpr-corner-fmax-map =
  872. /* Speed bin 0 */
  873. <1 2 5 13 19>,
  874.  
  875. /* Speed bin 1 */
  876. <1 2 5 13 15>;
  877.  
  878. qcom,cpr-voltage-ceiling =
  879. /* Speed bin 0 */
  880. <670000 670000 745000 745000 745000
  881. 905000 905000 905000 905000 905000
  882. 905000 905000 905000 1140000 1140000
  883. 1140000 1140000 1140000 1140000>,
  884.  
  885. /* Speed bin 1 */
  886. <670000 670000 745000 745000 745000
  887. 905000 905000 905000 905000 905000
  888. 905000 905000 905000 1140000 1140000>;
  889.  
  890. qcom,cpr-voltage-floor =
  891. /* Speed bin 0 */
  892. <625000 625000 625000 625000 625000
  893. 625000 625000 625000 625000 625000
  894. 625000 625000 625000 625000 625000
  895. 625000 625000 625000 625000>,
  896. <625000 625000 625000 625000 625000
  897. 625000 625000 625000 625000 625000
  898. 625000 625000 625000 625000 625000
  899. 625000 625000 625000 625000>,
  900. <625000 625000 625000 625000 625000
  901. 625000 625000 625000 625000 625000
  902. 625000 625000 625000 625000 625000
  903. 625000 625000 625000 625000>,
  904. <625000 625000 625000 625000 625000
  905. 625000 625000 625000 625000 625000
  906. 625000 625000 625000 625000 625000
  907. 625000 625000 625000 625000>,
  908. <625000 625000 625000 625000 625000
  909. 625000 625000 625000 625000 625000
  910. 625000 625000 625000 625000 625000
  911. 625000 625000 625000 625000>,
  912. <625000 625000 625000 625000 625000
  913. 625000 625000 625000 625000 625000
  914. 625000 625000 625000 625000 625000
  915. 625000 625000 625000 625000>,
  916. <470000 470000 470000 470000 470000
  917. 470000 470000 470000 470000 470000
  918. 470000 470000 470000 470000 470000
  919. 470000 470000 470000 470000>,
  920. <470000 470000 470000 470000 470000
  921. 470000 470000 470000 470000 470000
  922. 470000 470000 470000 470000 470000
  923. 470000 470000 470000 470000>,
  924.  
  925. /* Speed bin 1 */
  926. <625000 625000 625000 625000 625000
  927. 625000 625000 625000 625000 625000
  928. 625000 625000 625000 625000 625000>,
  929. <625000 625000 625000 625000 625000
  930. 625000 625000 625000 625000 625000
  931. 625000 625000 625000 625000 625000>,
  932. <625000 625000 625000 625000 625000
  933. 625000 625000 625000 625000 625000
  934. 625000 625000 625000 625000 625000>,
  935. <625000 625000 625000 625000 625000
  936. 625000 625000 625000 625000 625000
  937. 625000 625000 625000 625000 625000>,
  938. <625000 625000 625000 625000 625000
  939. 625000 625000 625000 625000 625000
  940. 625000 625000 625000 625000 625000>,
  941. <625000 625000 625000 625000 625000
  942. 625000 625000 625000 625000 625000
  943. 625000 625000 625000 625000 625000>,
  944. <470000 470000 470000 470000 470000
  945. 470000 470000 470000 470000 470000
  946. 470000 470000 470000 470000 470000>,
  947. <470000 470000 470000 470000 470000
  948. 470000 470000 470000 470000 470000
  949. 470000 470000 470000 470000 470000>;
  950.  
  951. qcom,cpr-floor-to-ceiling-max-range =
  952. /* Speed bin 0 */
  953. <50000 50000 80000 80000 80000
  954. 80000 80000 80000 80000 80000
  955. 80000 80000 80000 80000 80000
  956. 80000 80000 80000 80000>,
  957.  
  958. /* Speed bin 1 */
  959. <50000 50000 80000 80000 80000
  960. 80000 80000 80000 80000 80000
  961. 80000 80000 80000 80000 80000>;
  962.  
  963. qcom,corner-frequencies =
  964. /* Speed bin 0 */
  965. <307200000 384000000 460800000
  966. 537600000 595200000 672000000
  967. 748800000 825600000 902400000
  968. 979200000 1056000000 1132800000
  969. 1190400000 1228800000 1305600000
  970. 1382400000 1459200000 1536000000
  971. 1593600000>,
  972.  
  973. /* Speed bin 1 */
  974. <307200000 384000000 460800000
  975. 537600000 595200000 672000000
  976. 748800000 825600000 902400000
  977. 979200000 1056000000 1132800000
  978. 1190400000 1228800000 1305600000>;
  979.  
  980. qcom,cpr-ro-scaling-factor =
  981. < 0 0 3112 2666 2947 2543 2271 1979
  982. 2623 2317 2772 2450 0 0 0 0>,
  983. < 0 0 3112 2666 2947 2543 2271 1979
  984. 2623 2317 2772 2450 0 0 0 0>,
  985. < 0 0 3112 2666 2947 2543 2271 1979
  986. 2623 2317 2772 2450 0 0 0 0>,
  987. < 0 0 3112 2666 2947 2543 2271 1979
  988. 2623 2317 2772 2450 0 0 0 0>,
  989. < 0 0 2889 2528 2740 2426 2310 2040
  990. 2519 2257 2668 2372 0 0 0 0>;
  991.  
  992. qcom,cpr-open-loop-voltage-fuse-adjustment =
  993. /* Speed bin 0 */
  994. <50000 20000 10000 10000 (-20000)>,
  995. <50000 20000 10000 10000 (-20000)>,
  996. <50000 20000 10000 10000 (-20000)>,
  997. <65000 20000 25000 25000 ( -5000)>,
  998. <65000 20000 25000 25000 ( -5000)>,
  999. <65000 20000 25000 25000 ( -5000)>,
  1000. <65000 20000 25000 25000 ( -5000)>,
  1001. <65000 20000 25000 25000 ( -5000)>,
  1002.  
  1003. /* Speed bin 1 */
  1004. <50000 20000 10000 10000 (-20000)>,
  1005. <50000 20000 10000 10000 (-20000)>,
  1006. <50000 20000 10000 10000 (-20000)>,
  1007. <65000 20000 25000 25000 ( -5000)>,
  1008. <65000 20000 25000 25000 ( -5000)>,
  1009. <65000 20000 25000 25000 ( -5000)>,
  1010. <65000 20000 25000 25000 ( -5000)>,
  1011. <65000 20000 25000 25000 ( -5000)>;
  1012.  
  1013. qcom,cpr-closed-loop-voltage-fuse-adjustment =
  1014. /* Speed bin 0 */
  1015. <30000 25000 20000 20000 20000>,
  1016. <30000 25000 0 20000 (-15000)>,
  1017. <30000 25000 0 20000 (-15000)>,
  1018. <30000 25000 0 20000 (-15000)>,
  1019. <30000 25000 0 20000 (-15000)>,
  1020. <30000 25000 0 20000 (-15000)>,
  1021. <30000 25000 0 20000 (-15000)>,
  1022. <30000 25000 0 20000 (-15000)>,
  1023.  
  1024. /* Speed bin 1 */
  1025. <30000 25000 20000 20000 20000>,
  1026. <30000 25000 0 20000 (-15000)>,
  1027. <30000 25000 0 20000 (-15000)>,
  1028. <30000 25000 0 20000 (-15000)>,
  1029. <30000 25000 0 20000 (-15000)>,
  1030. <30000 25000 0 20000 (-15000)>,
  1031. <30000 25000 0 20000 (-15000)>,
  1032. <30000 25000 0 20000 (-15000)>;
  1033.  
  1034. qcom,allow-voltage-interpolation;
  1035. qcom,allow-quotient-interpolation;
  1036. qcom,cpr-scaled-open-loop-voltage-as-ceiling;
  1037.  
  1038. qcom,cpr-aging-max-voltage-adjustment = <15000>;
  1039. qcom,cpr-aging-ref-corner = <13 13>;
  1040. qcom,cpr-aging-ro-scaling-factor = <3200>;
  1041. qcom,allow-aging-voltage-adjustment =
  1042. /* Speed bin 0 */
  1043. <0 0 0 1 1 1 1 1>,
  1044.  
  1045. /* Speed bin 1 */
  1046. <0 0 0 1 1 1 1 1>;
  1047. };
  1048. };
  1049.  
  1050. thread@1 {
  1051. qcom,cpr-thread-id = <1>;
  1052. qcom,cpr-consecutive-up = <0>;
  1053. qcom,cpr-consecutive-down = <3>;
  1054. qcom,cpr-up-threshold = <2>;
  1055. qcom,cpr-down-threshold = <2>;
  1056.  
  1057. apc1_vreg: regulator {
  1058. regulator-name = "apc1_corner";
  1059. regulator-min-microvolt = <1>;
  1060. regulator-max-microvolt = <25>;
  1061.  
  1062. qcom,cpr-pd-bypass-mask = <0xe0>;
  1063. qcom,cpr-fuse-corners = <5>;
  1064. qcom,cpr-fuse-combos = <16>;
  1065. qcom,cpr-speed-bins = <2>;
  1066. qcom,cpr-speed-bin-corners = <25 21>;
  1067. qcom,cpr-corners =
  1068. /* Speed bin 0 */
  1069. <25 25 25 25 25 25 25 25>,
  1070.  
  1071. /* Speed bin 1 */
  1072. <21 21 21 21 21 21 21 21>;
  1073.  
  1074. qcom,ldo-min-headroom-voltage = <150000>;
  1075. qcom,ldo-max-headroom-voltage = <470000>;
  1076. qcom,ldo-max-voltage = <890000>;
  1077. qcom,uses-mem-acc;
  1078.  
  1079. qcom,cpr-corner-fmax-map =
  1080. /* Speed bin 0 */
  1081. <1 4 9 13 25>,
  1082.  
  1083. /* Speed bin 1 */
  1084. <1 4 9 13 21>;
  1085.  
  1086. qcom,cpr-voltage-ceiling =
  1087. /* Speed bin 0 */
  1088. <670000 670000 670000 670000 745000
  1089. 745000 745000 745000 745000 905000
  1090. 905000 905000 905000 1140000 1140000
  1091. 1140000 1140000 1140000 1140000 1140000
  1092. 1140000 1140000 1140000 1140000 1140000>,
  1093.  
  1094. /* Speed bin 1 */
  1095. <670000 670000 670000 670000 745000
  1096. 745000 745000 745000 745000 905000
  1097. 905000 905000 905000 1140000 1140000
  1098. 1140000 1140000 1140000 1140000 1140000
  1099. 1140000>;
  1100.  
  1101. qcom,cpr-voltage-floor =
  1102. /* Speed bin 0 */
  1103. <625000 625000 625000 625000 625000
  1104. 625000 625000 625000 625000 625000
  1105. 625000 625000 625000 625000 625000
  1106. 625000 625000 625000 625000 625000
  1107. 625000 625000 625000 625000 625000>,
  1108. <625000 625000 625000 625000 625000
  1109. 625000 625000 625000 625000 625000
  1110. 625000 625000 625000 625000 625000
  1111. 625000 625000 625000 625000 625000
  1112. 625000 625000 625000 625000 625000>,
  1113. <625000 625000 625000 625000 625000
  1114. 625000 625000 625000 625000 625000
  1115. 625000 625000 625000 625000 625000
  1116. 625000 625000 625000 625000 625000
  1117. 625000 625000 625000 625000 625000>,
  1118. <625000 625000 625000 625000 625000
  1119. 625000 625000 625000 625000 625000
  1120. 625000 625000 625000 625000 625000
  1121. 625000 625000 625000 625000 625000
  1122. 625000 625000 625000 625000 625000>,
  1123. <625000 625000 625000 625000 625000
  1124. 625000 625000 625000 625000 625000
  1125. 625000 625000 625000 625000 625000
  1126. 625000 625000 625000 625000 625000
  1127. 625000 625000 625000 625000 625000>,
  1128. <625000 625000 625000 625000 625000
  1129. 625000 625000 625000 625000 625000
  1130. 625000 625000 625000 625000 625000
  1131. 625000 625000 625000 625000 625000
  1132. 625000 625000 625000 625000 625000>,
  1133. <470000 470000 470000 470000 470000
  1134. 470000 470000 470000 470000 470000
  1135. 470000 470000 470000 470000 470000
  1136. 470000 470000 470000 470000 470000
  1137. 470000 470000 470000 470000 470000>,
  1138. <470000 470000 470000 470000 470000
  1139. 470000 470000 470000 470000 470000
  1140. 470000 470000 470000 470000 470000
  1141. 470000 470000 470000 470000 470000
  1142. 470000 470000 470000 470000 470000>,
  1143.  
  1144. /* Speed bin 1 */
  1145. <625000 625000 625000 625000 625000
  1146. 625000 625000 625000 625000 625000
  1147. 625000 625000 625000 625000 625000
  1148. 625000 625000 625000 625000 625000
  1149. 625000>,
  1150. <625000 625000 625000 625000 625000
  1151. 625000 625000 625000 625000 625000
  1152. 625000 625000 625000 625000 625000
  1153. 625000 625000 625000 625000 625000
  1154. 625000>,
  1155. <625000 625000 625000 625000 625000
  1156. 625000 625000 625000 625000 625000
  1157. 625000 625000 625000 625000 625000
  1158. 625000 625000 625000 625000 625000
  1159. 625000>,
  1160. <625000 625000 625000 625000 625000
  1161. 625000 625000 625000 625000 625000
  1162. 625000 625000 625000 625000 625000
  1163. 625000 625000 625000 625000 625000
  1164. 625000>,
  1165. <625000 625000 625000 625000 625000
  1166. 625000 625000 625000 625000 625000
  1167. 625000 625000 625000 625000 625000
  1168. 625000 625000 625000 625000 625000
  1169. 625000>,
  1170. <625000 625000 625000 625000 625000
  1171. 625000 625000 625000 625000 625000
  1172. 625000 625000 625000 625000 625000
  1173. 625000 625000 625000 625000 625000
  1174. 625000>,
  1175. <470000 470000 470000 470000 470000
  1176. 470000 470000 470000 470000 470000
  1177. 470000 470000 470000 470000 470000
  1178. 470000 470000 470000 470000 470000
  1179. 470000>,
  1180. <470000 470000 470000 470000 470000
  1181. 470000 470000 470000 470000 470000
  1182. 470000 470000 470000 470000 470000
  1183. 470000 470000 470000 470000 470000
  1184. 470000>;
  1185.  
  1186. qcom,cpr-floor-to-ceiling-max-range =
  1187. /* Speed bin 0 */
  1188. <50000 50000 50000 50000 80000
  1189. 80000 80000 80000 80000 80000
  1190. 80000 80000 80000 80000 80000
  1191. 80000 80000 80000 80000 80000
  1192. 80000 80000 80000 80000 80000>,
  1193.  
  1194. /* Speed bin 1 */
  1195. <50000 50000 50000 50000 80000
  1196. 80000 80000 80000 80000 80000
  1197. 80000 80000 80000 80000 80000
  1198. 80000 80000 80000 80000 80000
  1199. 80000>;
  1200.  
  1201. qcom,corner-frequencies =
  1202. /* Speed bin 0 */
  1203. <307200000 403200000 480000000
  1204. 556800000 652800000 729600000
  1205. 806400000 883200000 940800000
  1206. 1036800000 1113600000 1190400000
  1207. 1248000000 1324800000 1401600000
  1208. 1478400000 1555200000 1632000000
  1209. 1708800000 1785600000 1824000000
  1210. 1920000000 1996800000 2073600000
  1211. 2150400000>,
  1212.  
  1213. /* Speed bin 1 */
  1214. <307200000 403200000 480000000
  1215. 556800000 652800000 729600000
  1216. 806400000 883200000 940800000
  1217. 1036800000 1113600000 1190400000
  1218. 1248000000 1324800000 1401600000
  1219. 1478400000 1555200000 1632000000
  1220. 1708800000 1785600000 1804800000>;
  1221.  
  1222. qcom,cpr-ro-scaling-factor =
  1223. < 0 0 3112 2666 2947 2543 2271 1979
  1224. 2623 2317 2772 2450 0 0 0 0>,
  1225. < 0 0 3112 2666 2947 2543 2271 1979
  1226. 2623 2317 2772 2450 0 0 0 0>,
  1227. < 0 0 3112 2666 2947 2543 2271 1979
  1228. 2623 2317 2772 2450 0 0 0 0>,
  1229. < 0 0 3112 2666 2947 2543 2271 1979
  1230. 2623 2317 2772 2450 0 0 0 0>,
  1231. < 0 0 2889 2528 2740 2426 2310 2040
  1232. 2519 2257 2668 2372 0 0 0 0>;
  1233.  
  1234. qcom,cpr-open-loop-voltage-fuse-adjustment =
  1235. /* Speed bin 0 */
  1236. <40000 20000 35000 (-35000) 20000>,
  1237. <40000 20000 35000 (-35000) 20000>,
  1238. <40000 20000 35000 20000 20000>,
  1239. <55000 20000 50000 35000 35000>,
  1240. <55000 20000 50000 35000 35000>,
  1241. <55000 20000 50000 35000 35000>,
  1242. <55000 20000 50000 35000 35000>,
  1243. <55000 20000 50000 35000 35000>,
  1244.  
  1245. /* Speed bin 1 */
  1246. <40000 20000 35000 (-35000) 20000>,
  1247. <40000 20000 35000 (-35000) 20000>,
  1248. <40000 20000 35000 20000 20000>,
  1249. <55000 20000 50000 35000 35000>,
  1250. <55000 20000 50000 35000 35000>,
  1251. <55000 20000 50000 35000 35000>,
  1252. <55000 20000 50000 35000 35000>,
  1253. <55000 20000 50000 35000 35000>;
  1254.  
  1255. qcom,cpr-closed-loop-voltage-fuse-adjustment =
  1256. /* Speed bin 0 */
  1257. <55000 55000 60000 (-10000) 60000>,
  1258. <20000 20000 20000 (-50000) 20000>,
  1259. <20000 20000 20000 20000 20000>,
  1260. <20000 20000 20000 20000 20000>,
  1261. <20000 20000 20000 20000 20000>,
  1262. <20000 20000 20000 20000 20000>,
  1263. <20000 20000 20000 20000 20000>,
  1264. <20000 20000 20000 20000 20000>,
  1265.  
  1266. /* Speed bin 1 */
  1267. <55000 55000 60000 (-10000) 60000>,
  1268. <20000 20000 20000 (-50000) 20000>,
  1269. <20000 20000 20000 20000 20000>,
  1270. <20000 20000 20000 20000 20000>,
  1271. <20000 20000 20000 20000 20000>,
  1272. <20000 20000 20000 20000 20000>,
  1273. <20000 20000 20000 20000 20000>,
  1274. <20000 20000 20000 20000 20000>;
  1275.  
  1276. qcom,cpr-open-loop-voltage-adjustment =
  1277. /* Speed bin 0 */
  1278. <(-15000) (-15000) (-15000) (-15000)
  1279. (-11000) (-12000) (-13000) (-14000)
  1280. (-15000) (-18000) (-21000) (-23000)
  1281. (-25000) (-25000) (-26000) (-26000)
  1282. (-27000) (-27000) (-28000) (-28000)
  1283. (-28000) (-29000) (-29000) (-30000)
  1284. (-30000)>,
  1285.  
  1286. /* Speed bin 1 */
  1287. <(-15000) (-15000) (-15000) (-15000)
  1288. (-11000) (-12000) (-13000) (-14000)
  1289. (-15000) (-18000) (-21000) (-23000)
  1290. (-25000) (-25000) (-26000) (-26000)
  1291. (-27000) (-27000) (-28000) (-28000)
  1292. (-28000)>;
  1293. qcom,cpr-open-loop-voltage-min-diff =
  1294. /* Speed bin 0 */
  1295. <0 0 0 0 (-50000) 0 0 0 0 0 0 0 0 0 0 0
  1296. 0 0 0 0 0 0 0 0 0>,
  1297.  
  1298. /* Speed bin 1 */
  1299. <0 0 0 0 (-50000) 0 0 0 0 0 0 0 0 0 0 0
  1300. 0 0 0 0 0>;
  1301.  
  1302. qcom,cpr-closed-loop-voltage-adjustment =
  1303. /* Speed bin 0 */
  1304. <(-15000) (-15000) (-15000) (-15000)
  1305. (-11000) (-12000) (-13000) (-14000)
  1306. (-15000) (-18000) (-21000) (-23000)
  1307. (-25000) (-25000) (-26000) (-26000)
  1308. (-27000) (-27000) (-28000) (-28000)
  1309. (-28000) (-29000) (-29000) (-30000)
  1310. (-30000)>,
  1311.  
  1312. /* Speed bin 1 */
  1313. <(-15000) (-15000) (-15000) (-15000)
  1314. (-11000) (-12000) (-13000) (-14000)
  1315. (-15000) (-18000) (-21000) (-23000)
  1316. (-25000) (-25000) (-26000) (-26000)
  1317. (-27000) (-27000) (-28000) (-28000)
  1318. (-28000)>;
  1319.  
  1320. qcom,allow-voltage-interpolation;
  1321. qcom,allow-quotient-interpolation;
  1322. qcom,cpr-scaled-open-loop-voltage-as-ceiling;
  1323.  
  1324. qcom,cpr-aging-max-voltage-adjustment = <15000>;
  1325. qcom,cpr-aging-ref-corner = <13 13>;
  1326. qcom,cpr-aging-ro-scaling-factor = <3200>;
  1327. qcom,allow-aging-voltage-adjustment =
  1328. /* Speed bin 0 */
  1329. <0 0 0 1 1 1 1 1>,
  1330.  
  1331. /* Speed bin 1 */
  1332. <0 0 0 1 1 1 1 1>;
  1333.  
  1334. qcom,cpr-dynamic-floor-corner = <1>;
  1335. };
  1336. };
  1337. };
  1338.  
  1339. gfx_cpr: cpr3-ctrl@838000 {
  1340. compatible = "qcom,cpr3-msm8996-mmss-regulator";
  1341. reg = <0x00838000 0x4000>, <0x00074000 0x1000>;
  1342. reg-names = "cpr_ctrl", "fuse_base";
  1343. clocks = <&clock_mmss clk_mmss_rbcpr_clk>,
  1344. <&clock_mmss clk_mmss_rbcpr_ahb_clk>,
  1345. <&clock_mmss clk_mmss_mmagic_ahb_clk>;
  1346. clock-names = "core_clk", "iface_clk", "bus_clk";
  1347. interrupts = <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>;
  1348. interrupt-names = "cpr";
  1349. qcom,cpr-ctrl-name = "gfx";
  1350.  
  1351. qcom,cpr-sensor-time = <1000>;
  1352. qcom,cpr-loop-time = <5000000>;
  1353. qcom,cpr-idle-cycles = <15>;
  1354. qcom,cpr-step-quot-init-min = <10>;
  1355. qcom,cpr-step-quot-init-max = <13>;
  1356. qcom,cpr-count-mode = <2>; /* Staggered */
  1357.  
  1358. vdd-supply = <&pmi8994_s2>;
  1359. mem-acc-supply = <&gfx_mem_acc_vreg>;
  1360.  
  1361. qcom,voltage-step = <5000>;
  1362.  
  1363. qcom,cpr-enable;
  1364.  
  1365. qcom,cpr-aging-ref-voltage = <905000>;
  1366.  
  1367. thread@0 {
  1368. qcom,cpr-thread-id = <0>;
  1369. qcom,cpr-consecutive-up = <0>;
  1370. qcom,cpr-consecutive-down = <2>;
  1371. qcom,cpr-up-threshold = <0>;
  1372. qcom,cpr-down-threshold = <2>;
  1373.  
  1374. gfx_vreg: regulator {
  1375. regulator-name = "gfx_corner";
  1376. regulator-min-microvolt = <2>;
  1377. regulator-max-microvolt = <8>;
  1378.  
  1379. qcom,cpr-fuse-corners = <4>;
  1380. qcom,cpr-fuse-combos = <8>;
  1381. qcom,cpr-corners = <8>;
  1382.  
  1383. qcom,cpr-corner-fmax-map = <2 4 6 8>;
  1384.  
  1385. qcom,cpr-voltage-ceiling =
  1386. <400000 670000 670000 745000 825000
  1387. 905000 960000 1015000>;
  1388. qcom,cpr-voltage-floor =
  1389. <400000 520000 520000 520000 520000
  1390. 520000 520000 520000>;
  1391.  
  1392. qcom,mem-acc-voltage = <1 1 1 1 2 2 2 2>;
  1393.  
  1394. qcom,corner-frequencies =
  1395. <0 133000000 214000000 315000000
  1396. 401800000 510000000 560000000
  1397. 624000000>;
  1398.  
  1399. qcom,cpr-target-quotients =
  1400. < 0 0 0 0 0 0 0 0
  1401. 0 0 0 0 0 0 0 0>,
  1402. < 0 0 0 0 0 0 185 179
  1403. 291 299 304 319 0 0 0 0>,
  1404. < 0 0 0 0 0 0 287 273
  1405. 425 426 443 453 0 0 0 0>,
  1406. < 0 0 0 0 0 0 414 392
  1407. 584 576 608 612 0 0 0 0>,
  1408. < 0 0 0 0 0 0 459 431
  1409. 684 644 692 679 0 0 0 0>,
  1410. < 0 0 0 0 0 0 577 543
  1411. 798 768 823 810 0 0 0 0>,
  1412. < 0 0 0 0 0 0 669 629
  1413. 886 864 924 911 0 0 0 0>,
  1414. < 0 0 0 0 0 0 771 725
  1415. 984 970 1036 1024 0 0 0 0>;
  1416.  
  1417. qcom,cpr-ro-scaling-factor =
  1418. < 0 0 0 0 0 0 2035 1917
  1419. 1959 2131 2246 2253 0 0 0 0>,
  1420. < 0 0 0 0 0 0 2035 1917
  1421. 1959 2131 2246 2253 0 0 0 0>,
  1422. < 0 0 0 0 0 0 2035 1917
  1423. 1959 2131 2246 2253 0 0 0 0>,
  1424. < 0 0 0 0 0 0 2035 1917
  1425. 1959 2131 2246 2253 0 0 0 0>,
  1426. < 0 0 0 0 0 0 2035 1917
  1427. 1959 2131 2246 2253 0 0 0 0>,
  1428. < 0 0 0 0 0 0 2035 1917
  1429. 1959 2131 2246 2253 0 0 0 0>,
  1430. < 0 0 0 0 0 0 2035 1917
  1431. 1959 2131 2246 2253 0 0 0 0>,
  1432. < 0 0 0 0 0 0 2035 1917
  1433. 1959 2131 2246 2253 0 0 0 0>;
  1434.  
  1435. qcom,cpr-open-loop-voltage-fuse-adjustment =
  1436. < 0 0 30000 (-10000)>,
  1437. <(-30000) (-30000) 0 (-10000)>,
  1438. <(-30000) (-30000) 0 (-10000)>,
  1439. <(-70000) 0 0 0>,
  1440. <(-70000) 0 0 0>,
  1441. <(-70000) 0 0 0>,
  1442. <(-70000) 0 0 0>,
  1443. <(-70000) 0 0 0>;
  1444. qcom,cpr-closed-loop-voltage-adjustment =
  1445. < 0 45000 (-5000) 20000 20000 30000
  1446. 10000 (-5000)>,
  1447. < 0 45000 (-5000) 20000 20000 30000
  1448. 10000 (-5000)>,
  1449. < 0 30000 60000 40000 40000 45000
  1450. 25000 35000>,
  1451. < 0 0 30000 10000 10000 45000
  1452. 25000 25000>,
  1453. < 0 0 30000 10000 10000 45000
  1454. 25000 25000>,
  1455. < 0 0 30000 10000 10000 45000
  1456. 25000 25000>,
  1457. < 0 0 30000 10000 10000 45000
  1458. 25000 25000>,
  1459. < 0 0 30000 10000 10000 45000
  1460. 25000 25000>;
  1461. qcom,cpr-floor-to-ceiling-max-range =
  1462. <0 70000 70000 75000 80000 90000 95000
  1463. 100000>;
  1464.  
  1465. qcom,cpr-fused-closed-loop-voltage-adjustment-map =
  1466. <0 0 0 0 0 0 0 0>,
  1467. <0 0 0 0 0 0 0 0>,
  1468. <0 0 0 0 0 0 0 0>,
  1469. <0 0 0 0 0 0 0 0>,
  1470. <0 2 2 2 2 0 0 4>,
  1471. <0 2 2 2 2 0 0 4>,
  1472. <0 2 2 2 2 0 0 4>,
  1473. <0 2 2 2 2 0 0 4>;
  1474.  
  1475. qcom,allow-voltage-interpolation;
  1476. qcom,cpr-scaled-open-loop-voltage-as-ceiling;
  1477.  
  1478. qcom,cpr-aging-max-voltage-adjustment = <15000>;
  1479. qcom,cpr-aging-ref-corner = <6>;
  1480. qcom,cpr-aging-ro-scaling-factor = <2950>;
  1481. qcom,allow-aging-voltage-adjustment =
  1482. <0 0 0 1 1 1 1 1>;
  1483. };
  1484. };
  1485. };
  1486. /* Memory accelerator regulators */
  1487. apc0_pwrcl_mem_acc_vreg: apc0-pwrcl-mem-acc-regulator {
  1488. compatible = "qcom,mem-acc-regulator";
  1489. reg = <0x099e00c0 0x4>;
  1490. reg-names = "acc-sel-l1";
  1491. regulator-name = "apc0_pwrcl_mem_acc_corner";
  1492. regulator-min-microvolt = <1>;
  1493. regulator-max-microvolt = <2>;
  1494. qcom,corner-acc-map = <0x2 0x0>;
  1495.  
  1496. qcom,acc-sel-l1-bit-pos = <0>;
  1497. qcom,acc-sel-l1-bit-size = <2>;
  1498. };
  1499.  
  1500. apc1_perfcl_mem_acc_vreg: apc1-perfcl-mem-acc-regulator {
  1501. compatible = "qcom,mem-acc-regulator";
  1502. reg = <0x099e00c0 0x4>;
  1503. reg-names = "acc-sel-l1";
  1504. regulator-name = "apc1_perfcl_mem_acc_corner";
  1505. regulator-min-microvolt = <1>;
  1506. regulator-max-microvolt = <2>;
  1507. qcom,corner-acc-map = <0x2 0x0>;
  1508.  
  1509. qcom,acc-sel-l1-bit-pos = <2>;
  1510. qcom,acc-sel-l1-bit-size = <2>;
  1511. };
  1512.  
  1513. apcc_l3_mem_acc_vreg: apcc-l3-mem-acc-regulator {
  1514. compatible = "qcom,mem-acc-regulator";
  1515. reg = <0x099e00c0 0x4>;
  1516. reg-names = "acc-sel-l1";
  1517. regulator-name = "apcc_l3_mem_acc_corner";
  1518. regulator-min-microvolt = <1>;
  1519. regulator-max-microvolt = <2>;
  1520. qcom,corner-acc-map = <0x1 0x0>;
  1521.  
  1522. qcom,acc-sel-l1-bit-pos = <4>;
  1523. qcom,acc-sel-l1-bit-size = <1>;
  1524. };
  1525.  
  1526. gfx_mem_acc_vreg: regulator@007af004 {
  1527. compatible = "qcom,mem-acc-regulator";
  1528. reg = <0x007af004 0x4>;
  1529. reg-names = "acc-sel-l1";
  1530. regulator-name = "gfx_mem_acc_corner";
  1531. regulator-min-microvolt = <1>;
  1532. regulator-max-microvolt = <2>;
  1533.  
  1534. qcom,corner-acc-map = <0x1 0x0>;
  1535. qcom,acc-sel-l1-bit-pos = <0>;
  1536. qcom,acc-sel-l1-bit-size = <1>;
  1537. };
  1538.  
  1539. /* Kryo regulators */
  1540. kryo0_vreg: regulator@99a2000 {
  1541. compatible = "qcom,kryo-regulator";
  1542. regulator-name = "kryo0";
  1543. reg = <0x99a2000 0x1000>, <0x99e0000 0x1000>,
  1544. <0x9820000 0x1000>;
  1545. reg-names = "pm-apc", "pm-apcc", "apcs-csr";
  1546. regulator-min-microvolt = <468197>;
  1547. regulator-max-microvolt = <892467>;
  1548. qcom,ldo-default-voltage = <750000>;
  1549. qcom,retention-voltage = <520000>;
  1550. qcom,ldo-headroom-voltage = <150000>;
  1551. qcom,vref-functional-step-voltage = <4466>;
  1552. qcom,vref-functional-min-voltage = <325285>;
  1553. qcom,vref-retention-step-voltage = <4466>;
  1554. qcom,vref-retention-min-voltage = <325285>;
  1555. qcom,ldo-config-init = <0xf1f0e471>;
  1556. qcom,apm-config-init = <0x0>;
  1557. qcom,cluster-num = <0>;
  1558. kryo0_retention_vreg: regulator {
  1559. regulator-name = "kryo0-retention";
  1560. regulator-min-microvolt = <468197>;
  1561. regulator-max-microvolt = <892467>;
  1562. };
  1563. };
  1564.  
  1565. kryo1_vreg: regulator@99d2000 {
  1566. compatible = "qcom,kryo-regulator";
  1567. regulator-name = "kryo1";
  1568. reg = <0x99d2000 0x1000>, <0x99e0000 0x1000>,
  1569. <0x9820000 0x1000>;
  1570. reg-names = "pm-apc", "pm-apcc", "apcs-csr";
  1571. regulator-min-microvolt = <468197>;
  1572. regulator-max-microvolt = <892467>;
  1573. qcom,ldo-default-voltage = <750000>;
  1574. qcom,retention-voltage = <520000>;
  1575. qcom,ldo-headroom-voltage = <150000>;
  1576. qcom,vref-functional-step-voltage = <4466>;
  1577. qcom,vref-functional-min-voltage = <325285>;
  1578. qcom,vref-retention-step-voltage = <4466>;
  1579. qcom,vref-retention-min-voltage = <325285>;
  1580. qcom,cluster-num = <1>;
  1581. qcom,ldo-config-init = <0xf1f0e471>;
  1582. qcom,apm-config-init = <0x0>;
  1583. kryo1_retention_vreg: regulator {
  1584. regulator-name = "kryo1-retention";
  1585. regulator-min-microvolt = <468197>;
  1586. regulator-max-microvolt = <892467>;
  1587. };
  1588. };
  1589.  
  1590. /* Miscellaneous regulators */
  1591. spi_eth_vreg: spi_eth_phy_vreg {
  1592. compatible = "regulator-fixed";
  1593. regulator-name = "ethernet_phy";
  1594. gpio = <&pm8994_mpps 5 0>;
  1595. enable-active-high;
  1596. status = "disabled";
  1597. };
  1598.  
  1599. usb_otg_switch: usb-otg-switch {
  1600. compatible = "regulator-fixed";
  1601. regulator-name = "usb_otg_vreg";
  1602. vin-supply = <&smbcharger_external_otg>;
  1603. enable-active-high;
  1604. gpio = <&pmi8994_gpios 5 0>;
  1605. status = "disabled";
  1606. };
  1607.  
  1608. /* Rome 3.3V supply */
  1609. rome_vreg: rome_vreg {
  1610. compatible = "regulator-fixed";
  1611. regulator-name = "rome_vreg";
  1612. startup-delay-us = <4000>;
  1613. enable-active-high;
  1614. gpio = <&pm8994_gpios 9 0>;
  1615. };
  1616.  
  1617. wlan_en_vreg: wlan_en_vreg {
  1618. compatible = "regulator-fixed";
  1619. regulator-name = "wlan_en_vreg";
  1620. enable-active-high;
  1621. gpio = <&pm8994_gpios 8 0>;
  1622. };
  1623. };
  1624.  
  1625. &pmi8994_charger {
  1626. otg-parent-supply = <&pmi8994_boost_5v>;
  1627. smbcharger_charger_otg: qcom,smbcharger-boost-otg {
  1628. regulator-name = "smbcharger_charger_otg";
  1629. };
  1630.  
  1631. smbcharger_external_otg: qcom,smbcharger-external-otg {
  1632. regulator-name = "smbcharger_external_otg";
  1633. };
  1634. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement