motorola-cpcap-mapphone.dtsi 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. /*
  3. * Common CPCAP configuration used on Motorola phones
  4. */
  5. &mcspi1 {
  6. cpcap: pmic@0 {
  7. compatible = "motorola,cpcap", "st,6556002";
  8. reg = <0>; /* cs0 */
  9. interrupt-parent = <&gpio1>;
  10. interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
  11. interrupt-controller;
  12. #interrupt-cells = <2>;
  13. #address-cells = <1>;
  14. #size-cells = <0>;
  15. spi-max-frequency = <9600000>;
  16. spi-cs-high;
  17. spi-cpol;
  18. spi-cpha;
  19. cpcap_adc: adc {
  20. compatible = "motorola,mapphone-cpcap-adc";
  21. interrupts-extended = <&cpcap 8 0>;
  22. interrupt-names = "adcdone";
  23. #io-channel-cells = <1>;
  24. };
  25. cpcap_battery: battery {
  26. compatible = "motorola,cpcap-battery";
  27. interrupts-extended =
  28. <&cpcap 6 0>, <&cpcap 5 0>, <&cpcap 3 0>,
  29. <&cpcap 20 0>, <&cpcap 54 0>, <&cpcap 57 0>;
  30. interrupt-names =
  31. "eol", "lowbph", "lowbpl",
  32. "chrgcurr1", "battdetb", "cccal";
  33. io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>,
  34. <&cpcap_adc 5>, <&cpcap_adc 6>;
  35. io-channel-names = "battdetb", "battp",
  36. "chg_isense", "batti";
  37. power-supplies = <&cpcap_charger>;
  38. };
  39. cpcap_charger: charger {
  40. compatible = "motorola,mapphone-cpcap-charger";
  41. interrupts-extended =
  42. <&cpcap 13 0>, <&cpcap 12 0>, <&cpcap 29 0>,
  43. <&cpcap 28 0>, <&cpcap 22 0>, <&cpcap 21 0>,
  44. <&cpcap 20 0>, <&cpcap 19 0>, <&cpcap 54 0>;
  45. interrupt-names =
  46. "chrg_det", "rvrs_chrg", "chrg_se1b",
  47. "se0conn", "rvrs_mode", "chrgcurr2",
  48. "chrgcurr1", "vbusvld", "battdetb";
  49. mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>,
  50. <&gpio3 23 GPIO_ACTIVE_LOW>;
  51. io-channels = <&cpcap_adc 0>, <&cpcap_adc 1>,
  52. <&cpcap_adc 2>, <&cpcap_adc 5>,
  53. <&cpcap_adc 6>;
  54. io-channel-names = "battdetb", "battp",
  55. "vbus", "chg_isense",
  56. "batti";
  57. };
  58. cpcap_regulator: regulator {
  59. compatible = "motorola,mapphone-cpcap-regulator";
  60. cpcap_regulators: regulators {
  61. };
  62. };
  63. cpcap_audio: audio-codec {
  64. #sound-dai-cells = <1>;
  65. port@0 {
  66. cpcap_audio_codec0: endpoint {
  67. };
  68. };
  69. port@1 {
  70. cpcap_audio_codec1: endpoint {
  71. };
  72. };
  73. };
  74. cpcap_rtc: rtc {
  75. compatible = "motorola,cpcap-rtc";
  76. interrupt-parent = <&cpcap>;
  77. interrupts = <39 IRQ_TYPE_NONE>, <26 IRQ_TYPE_NONE>;
  78. };
  79. power_button: button {
  80. compatible = "motorola,cpcap-pwrbutton";
  81. interrupts = <23 IRQ_TYPE_NONE>;
  82. };
  83. cpcap_usb2_phy: phy {
  84. compatible = "motorola,mapphone-cpcap-usb-phy";
  85. pinctrl-0 = <&usb_gpio_mux_sel1>, <&usb_gpio_mux_sel2>;
  86. pinctrl-1 = <&usb_ulpi_pins>;
  87. pinctrl-2 = <&usb_utmi_pins>;
  88. pinctrl-3 = <&uart3_pins>;
  89. pinctrl-names = "default", "ulpi", "utmi", "uart";
  90. #phy-cells = <0>;
  91. interrupts-extended =
  92. <&cpcap 15 0>, <&cpcap 14 0>, <&cpcap 28 0>,
  93. <&cpcap 19 0>, <&cpcap 18 0>, <&cpcap 17 0>,
  94. <&cpcap 16 0>, <&cpcap 49 0>, <&cpcap 48 0>;
  95. interrupt-names =
  96. "id_ground", "id_float", "se0conn",
  97. "vbusvld", "sessvld", "sessend",
  98. "se1", "dm", "dp";
  99. mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,
  100. <&gpio1 0 GPIO_ACTIVE_HIGH>;
  101. io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>;
  102. io-channel-names = "vbus", "id";
  103. vusb-supply = <&vusb>;
  104. };
  105. led_red: led-red {
  106. compatible = "motorola,cpcap-led-red";
  107. vdd-supply = <&sw5>;
  108. label = "status-led:red";
  109. };
  110. led_green: led-green {
  111. compatible = "motorola,cpcap-led-green";
  112. vdd-supply = <&sw5>;
  113. label = "status-led:green";
  114. };
  115. led_blue: led-blue {
  116. compatible = "motorola,cpcap-led-blue";
  117. vdd-supply = <&sw5>;
  118. label = "status-led:blue";
  119. };
  120. led_adl: led-adl {
  121. compatible = "motorola,cpcap-led-adl";
  122. vdd-supply = <&sw5>;
  123. label = "button-backlight";
  124. };
  125. led_cp: led-cp {
  126. compatible = "motorola,cpcap-led-cp";
  127. vdd-supply = <&sw5>;
  128. label = "shift-key-light";
  129. };
  130. };
  131. };
  132. &cpcap_regulators {
  133. sw5: SW5 {
  134. regulator-min-microvolt = <5050000>;
  135. regulator-max-microvolt = <5050000>;
  136. regulator-enable-ramp-delay = <50000>;
  137. regulator-boot-on;
  138. };
  139. vcam: VCAM {
  140. regulator-min-microvolt = <2900000>;
  141. regulator-max-microvolt = <2900000>;
  142. regulator-enable-ramp-delay = <1000>;
  143. };
  144. /* Used by DSS and is the "zerov_regulator" trigger for SoC off mode */
  145. vcsi: VCSI {
  146. regulator-min-microvolt = <1800000>;
  147. regulator-max-microvolt = <1800000>;
  148. regulator-enable-ramp-delay = <1000>;
  149. regulator-always-on;
  150. };
  151. vdac: VDAC {
  152. regulator-min-microvolt = <1800000>;
  153. regulator-max-microvolt = <1800000>;
  154. regulator-enable-ramp-delay = <1000>;
  155. };
  156. vdig: VDIG {
  157. regulator-min-microvolt = <1875000>;
  158. regulator-max-microvolt = <1875000>;
  159. regulator-enable-ramp-delay = <1000>;
  160. };
  161. vfuse: VFUSE {
  162. regulator-min-microvolt = <1500000>;
  163. regulator-max-microvolt = <3150000>;
  164. regulator-enable-ramp-delay = <1000>;
  165. };
  166. vhvio: VHVIO {
  167. regulator-min-microvolt = <2775000>;
  168. regulator-max-microvolt = <2775000>;
  169. regulator-enable-ramp-delay = <1000>;
  170. regulator-always-on;
  171. };
  172. /* Used by eMMC at mmc2 */
  173. vsdio: VSDIO {
  174. regulator-min-microvolt = <2900000>;
  175. regulator-max-microvolt = <2900000>;
  176. regulator-enable-ramp-delay = <1000>;
  177. };
  178. vpll: VPLL {
  179. regulator-min-microvolt = <1200000>;
  180. regulator-max-microvolt = <1800000>;
  181. regulator-enable-ramp-delay = <100>;
  182. };
  183. vrf1: VRF1 {
  184. regulator-min-microvolt = <2775000>;
  185. regulator-max-microvolt = <2775000>;
  186. regulator-enable-ramp-delay = <1000>;
  187. };
  188. vrf2: VRF2 {
  189. regulator-min-microvolt = <2775000>;
  190. regulator-max-microvolt = <2775000>;
  191. regulator-enable-ramp-delay = <1000>;
  192. };
  193. vrfref: VRFREF {
  194. regulator-min-microvolt = <2500000>;
  195. regulator-max-microvolt = <2775000>;
  196. regulator-enable-ramp-delay = <100>;
  197. };
  198. vwlan1: VWLAN1 {
  199. regulator-min-microvolt = <1800000>;
  200. regulator-max-microvolt = <1900000>;
  201. regulator-enable-ramp-delay = <1000>;
  202. };
  203. /* Used by micro-SDIO at mmc1 */
  204. vwlan2: VWLAN2 {
  205. regulator-min-microvolt = <3000000>;
  206. regulator-max-microvolt = <3000000>;
  207. regulator-enable-ramp-delay = <1000>;
  208. };
  209. vsim: VSIM {
  210. regulator-min-microvolt = <1800000>;
  211. regulator-max-microvolt = <2900000>;
  212. regulator-enable-ramp-delay = <1000>;
  213. };
  214. vsimcard: VSIMCARD {
  215. regulator-min-microvolt = <1800000>;
  216. regulator-max-microvolt = <2900000>;
  217. regulator-enable-ramp-delay = <1000>;
  218. };
  219. vvib: VVIB {
  220. regulator-min-microvolt = <1300000>;
  221. regulator-max-microvolt = <3000000>;
  222. regulator-enable-ramp-delay = <500>;
  223. };
  224. vusb: VUSB {
  225. regulator-min-microvolt = <3300000>;
  226. regulator-max-microvolt = <3300000>;
  227. regulator-enable-ramp-delay = <1000>;
  228. };
  229. vaudio: VAUDIO {
  230. regulator-min-microvolt = <2775000>;
  231. regulator-max-microvolt = <2775000>;
  232. regulator-enable-ramp-delay = <1000>;
  233. regulator-initial-mode = <0x00>; /* NORMAL */
  234. };
  235. };