qcom-msm8960-cdp.dts 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include <dt-bindings/input/input.h>
  3. #include "qcom-msm8960.dtsi"
  4. / {
  5. model = "Qualcomm MSM8960 CDP";
  6. compatible = "qcom,msm8960-cdp", "qcom,msm8960";
  7. aliases {
  8. serial0 = &gsbi5_serial;
  9. };
  10. chosen {
  11. stdout-path = "serial0:115200n8";
  12. };
  13. regulators {
  14. compatible = "simple-bus";
  15. ext_l2: gpio-regulator@91 {
  16. compatible = "regulator-fixed";
  17. regulator-name = "ext_l2";
  18. gpio = <&msmgpio 91 0>;
  19. startup-delay-us = <10000>;
  20. enable-active-high;
  21. };
  22. };
  23. };
  24. &gsbi1 {
  25. qcom,mode = <GSBI_PROT_SPI>;
  26. pinctrl-names = "default";
  27. pinctrl-0 = <&spi1_default>;
  28. status = "okay";
  29. };
  30. &gsbi1_spi {
  31. status = "okay";
  32. ethernet@0 {
  33. compatible = "micrel,ks8851";
  34. reg = <0>;
  35. interrupt-parent = <&msmgpio>;
  36. interrupts = <90 8>;
  37. spi-max-frequency = <5400000>;
  38. vdd-supply = <&ext_l2>;
  39. vdd-io-supply = <&pm8921_lvs6>;
  40. reset-gpios = <&msmgpio 89 0>;
  41. };
  42. };
  43. &gsbi5 {
  44. qcom,mode = <GSBI_PROT_I2C_UART>;
  45. status = "okay";
  46. };
  47. &gsbi5_serial {
  48. status = "okay";
  49. };
  50. &msmgpio {
  51. spi1_default: spi1_default {
  52. mux {
  53. pins = "gpio6", "gpio7", "gpio9";
  54. function = "gsbi1";
  55. };
  56. mosi {
  57. pins = "gpio6";
  58. drive-strength = <12>;
  59. bias-disable;
  60. };
  61. miso {
  62. pins = "gpio7";
  63. drive-strength = <12>;
  64. bias-disable;
  65. };
  66. cs {
  67. pins = "gpio8";
  68. drive-strength = <12>;
  69. bias-disable;
  70. output-low;
  71. };
  72. clk {
  73. pins = "gpio9";
  74. drive-strength = <12>;
  75. bias-disable;
  76. };
  77. };
  78. };
  79. &pmicintc {
  80. keypad@148 {
  81. linux,keymap = <
  82. MATRIX_KEY(0, 0, KEY_VOLUMEUP)
  83. MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
  84. MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
  85. MATRIX_KEY(0, 3, KEY_CAMERA)
  86. >;
  87. keypad,num-rows = <1>;
  88. keypad,num-columns = <5>;
  89. };
  90. };
  91. &rpm {
  92. regulators {
  93. compatible = "qcom,rpm-pm8921-regulators";
  94. vin_lvs1_3_6-supply = <&pm8921_s4>;
  95. vin_lvs2-supply = <&pm8921_s4>;
  96. vin_lvs4_5_7-supply = <&pm8921_s4>;
  97. vdd_ncp-supply = <&pm8921_l6>;
  98. vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
  99. vdd_l21_l23_l29-supply = <&pm8921_s8>;
  100. vdd_l24-supply = <&pm8921_s1>;
  101. vdd_l25-supply = <&pm8921_s1>;
  102. vdd_l27-supply = <&pm8921_s7>;
  103. vdd_l28-supply = <&pm8921_s7>;
  104. /* Buck SMPS */
  105. pm8921_s1: s1 {
  106. regulator-always-on;
  107. regulator-min-microvolt = <1225000>;
  108. regulator-max-microvolt = <1225000>;
  109. qcom,switch-mode-frequency = <3200000>;
  110. bias-pull-down;
  111. };
  112. pm8921_s2: s2 {
  113. regulator-min-microvolt = <1300000>;
  114. regulator-max-microvolt = <1300000>;
  115. qcom,switch-mode-frequency = <1600000>;
  116. bias-pull-down;
  117. };
  118. pm8921_s3: s3 {
  119. regulator-min-microvolt = <500000>;
  120. regulator-max-microvolt = <1150000>;
  121. qcom,switch-mode-frequency = <4800000>;
  122. bias-pull-down;
  123. };
  124. pm8921_s4: s4 {
  125. regulator-always-on;
  126. regulator-min-microvolt = <1800000>;
  127. regulator-max-microvolt = <1800000>;
  128. qcom,switch-mode-frequency = <1600000>;
  129. bias-pull-down;
  130. qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
  131. };
  132. pm8921_s7: s7 {
  133. regulator-min-microvolt = <1150000>;
  134. regulator-max-microvolt = <1150000>;
  135. qcom,switch-mode-frequency = <3200000>;
  136. bias-pull-down;
  137. };
  138. pm8921_s8: s8 {
  139. regulator-always-on;
  140. regulator-min-microvolt = <2050000>;
  141. regulator-max-microvolt = <2050000>;
  142. qcom,switch-mode-frequency = <1600000>;
  143. bias-pull-down;
  144. };
  145. /* PMOS LDO */
  146. pm8921_l1: l1 {
  147. regulator-always-on;
  148. regulator-min-microvolt = <1050000>;
  149. regulator-max-microvolt = <1050000>;
  150. bias-pull-down;
  151. };
  152. pm8921_l2: l2 {
  153. regulator-min-microvolt = <1200000>;
  154. regulator-max-microvolt = <1200000>;
  155. bias-pull-down;
  156. };
  157. pm8921_l3: l3 {
  158. regulator-min-microvolt = <3075000>;
  159. regulator-max-microvolt = <3075000>;
  160. bias-pull-down;
  161. };
  162. pm8921_l4: l4 {
  163. regulator-always-on;
  164. regulator-min-microvolt = <1800000>;
  165. regulator-max-microvolt = <1800000>;
  166. bias-pull-down;
  167. };
  168. pm8921_l5: l5 {
  169. regulator-min-microvolt = <2950000>;
  170. regulator-max-microvolt = <2950000>;
  171. bias-pull-down;
  172. };
  173. pm8921_l6: l6 {
  174. regulator-min-microvolt = <2950000>;
  175. regulator-max-microvolt = <2950000>;
  176. bias-pull-down;
  177. };
  178. pm8921_l7: l7 {
  179. regulator-always-on;
  180. regulator-min-microvolt = <1850000>;
  181. regulator-max-microvolt = <2950000>;
  182. bias-pull-down;
  183. };
  184. pm8921_l8: l8 {
  185. regulator-min-microvolt = <2800000>;
  186. regulator-max-microvolt = <3000000>;
  187. bias-pull-down;
  188. };
  189. pm8921_l9: l9 {
  190. regulator-min-microvolt = <3000000>;
  191. regulator-max-microvolt = <3000000>;
  192. bias-pull-down;
  193. };
  194. pm8921_l10: l10 {
  195. regulator-min-microvolt = <3000000>;
  196. regulator-max-microvolt = <3000000>;
  197. bias-pull-down;
  198. };
  199. pm8921_l11: l11 {
  200. regulator-min-microvolt = <2850000>;
  201. regulator-max-microvolt = <2850000>;
  202. bias-pull-down;
  203. };
  204. pm8921_l12: l12 {
  205. regulator-min-microvolt = <1200000>;
  206. regulator-max-microvolt = <1200000>;
  207. bias-pull-down;
  208. };
  209. pm8921_l14: l14 {
  210. regulator-min-microvolt = <1800000>;
  211. regulator-max-microvolt = <1800000>;
  212. bias-pull-down;
  213. };
  214. pm8921_l15: l15 {
  215. regulator-min-microvolt = <1800000>;
  216. regulator-max-microvolt = <2950000>;
  217. bias-pull-down;
  218. };
  219. pm8921_l16: l16 {
  220. regulator-min-microvolt = <2800000>;
  221. regulator-max-microvolt = <2800000>;
  222. bias-pull-down;
  223. };
  224. pm8921_l17: l17 {
  225. regulator-min-microvolt = <1800000>;
  226. regulator-max-microvolt = <2950000>;
  227. bias-pull-down;
  228. };
  229. pm8921_l18: l18 {
  230. regulator-min-microvolt = <1300000>;
  231. regulator-max-microvolt = <1300000>;
  232. bias-pull-down;
  233. };
  234. pm8921_l21: l21 {
  235. regulator-min-microvolt = <1900000>;
  236. regulator-max-microvolt = <1900000>;
  237. bias-pull-down;
  238. };
  239. pm8921_l22: l22 {
  240. regulator-min-microvolt = <2750000>;
  241. regulator-max-microvolt = <2750000>;
  242. bias-pull-down;
  243. };
  244. pm8921_l23: l23 {
  245. regulator-always-on;
  246. regulator-min-microvolt = <1800000>;
  247. regulator-max-microvolt = <1800000>;
  248. bias-pull-down;
  249. };
  250. pm8921_l24: l24 {
  251. regulator-min-microvolt = <750000>;
  252. regulator-max-microvolt = <1150000>;
  253. bias-pull-down;
  254. };
  255. pm8921_l25: l25 {
  256. regulator-always-on;
  257. regulator-min-microvolt = <1250000>;
  258. regulator-max-microvolt = <1250000>;
  259. bias-pull-down;
  260. };
  261. /* Low Voltage Switch */
  262. pm8921_lvs1: lvs1 {
  263. bias-pull-down;
  264. };
  265. pm8921_lvs2: lvs2 {
  266. bias-pull-down;
  267. };
  268. pm8921_lvs3: lvs3 {
  269. bias-pull-down;
  270. };
  271. pm8921_lvs4: lvs4 {
  272. bias-pull-down;
  273. };
  274. pm8921_lvs5: lvs5 {
  275. bias-pull-down;
  276. };
  277. pm8921_lvs6: lvs6 {
  278. bias-pull-down;
  279. };
  280. pm8921_lvs7: lvs7 {
  281. bias-pull-down;
  282. };
  283. pm8921_ncp: ncp {
  284. regulator-min-microvolt = <1800000>;
  285. regulator-max-microvolt = <1800000>;
  286. qcom,switch-mode-frequency = <1600000>;
  287. };
  288. };
  289. };
  290. /* eMMC */
  291. &sdcc1 {
  292. status = "okay";
  293. };
  294. /* External micro SD card */
  295. &sdcc3 {
  296. status = "okay";
  297. };