pm8994.dtsi 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include <dt-bindings/iio/qcom,spmi-vadc.h>
  3. #include <dt-bindings/input/linux-event-codes.h>
  4. #include <dt-bindings/interrupt-controller/irq.h>
  5. #include <dt-bindings/spmi/spmi.h>
  6. / {
  7. thermal-zones {
  8. pm8994-thermal {
  9. polling-delay-passive = <250>;
  10. polling-delay = <1000>;
  11. thermal-sensors = <&pm8994_temp>;
  12. trips {
  13. pm8994_alert0: pm8994-alert0 {
  14. temperature = <95000>;
  15. hysteresis = <2000>;
  16. type = "passive";
  17. };
  18. pm8994_crit: pm8994-crit {
  19. temperature = <125000>;
  20. hysteresis = <2000>;
  21. type = "critical";
  22. };
  23. };
  24. };
  25. };
  26. };
  27. &spmi_bus {
  28. pmic@0 {
  29. compatible = "qcom,pm8994", "qcom,spmi-pmic";
  30. reg = <0x0 SPMI_USID>;
  31. #address-cells = <1>;
  32. #size-cells = <0>;
  33. rtc@6000 {
  34. compatible = "qcom,pm8941-rtc";
  35. reg = <0x6000>, <0x6100>;
  36. reg-names = "rtc", "alarm";
  37. interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>;
  38. };
  39. pm8994_pon: pon@800 {
  40. compatible = "qcom,pm8916-pon";
  41. reg = <0x800>;
  42. mode-bootloader = <0x2>;
  43. mode-recovery = <0x1>;
  44. pwrkey {
  45. compatible = "qcom,pm8941-pwrkey";
  46. interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>;
  47. debounce = <15625>;
  48. bias-pull-up;
  49. linux,code = <KEY_POWER>;
  50. };
  51. pm8994_resin: resin {
  52. compatible = "qcom,pm8941-resin";
  53. interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
  54. debounce = <15625>;
  55. bias-pull-up;
  56. status = "disabled";
  57. };
  58. };
  59. pm8994_temp: temp-alarm@2400 {
  60. compatible = "qcom,spmi-temp-alarm";
  61. reg = <0x2400>;
  62. interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>;
  63. io-channels = <&pm8994_vadc VADC_DIE_TEMP>;
  64. io-channel-names = "thermal";
  65. #thermal-sensor-cells = <0>;
  66. };
  67. pm8994_vadc: adc@3100 {
  68. compatible = "qcom,spmi-vadc";
  69. reg = <0x3100>;
  70. interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>;
  71. #address-cells = <1>;
  72. #size-cells = <0>;
  73. #io-channel-cells = <1>;
  74. adc-chan@7 {
  75. reg = <VADC_VSYS>;
  76. qcom,pre-scaling = <1 3>;
  77. label = "vph_pwr";
  78. };
  79. adc-chan@8 {
  80. reg = <VADC_DIE_TEMP>;
  81. label = "die_temp";
  82. };
  83. adc-chan@9 {
  84. reg = <VADC_REF_625MV>;
  85. label = "ref_625mv";
  86. };
  87. adc-chan@a {
  88. reg = <VADC_REF_1250MV>;
  89. label = "ref_1250mv";
  90. };
  91. adc-chan@e {
  92. reg = <VADC_GND_REF>;
  93. };
  94. adc-chan@f {
  95. reg = <VADC_VDD_VADC>;
  96. };
  97. };
  98. pm8994_gpios: gpios@c000 {
  99. compatible = "qcom,pm8994-gpio", "qcom,spmi-gpio";
  100. reg = <0xc000>;
  101. gpio-controller;
  102. gpio-ranges = <&pm8994_gpios 0 0 22>;
  103. #gpio-cells = <2>;
  104. interrupt-controller;
  105. #interrupt-cells = <2>;
  106. };
  107. pm8994_mpps: mpps@a000 {
  108. compatible = "qcom,pm8994-mpp", "qcom,spmi-mpp";
  109. reg = <0xa000>;
  110. gpio-controller;
  111. #gpio-cells = <2>;
  112. gpio-ranges = <&pm8994_mpps 0 0 8>;
  113. interrupt-controller;
  114. #interrupt-cells = <2>;
  115. };
  116. };
  117. pmic@1 {
  118. compatible = "qcom,pm8994", "qcom,spmi-pmic";
  119. reg = <0x1 SPMI_USID>;
  120. #address-cells = <1>;
  121. #size-cells = <0>;
  122. pm8994_lpg: pwm {
  123. compatible = "qcom,pm8994-lpg";
  124. #address-cells = <1>;
  125. #size-cells = <0>;
  126. #pwm-cells = <2>;
  127. status = "disabled";
  128. };
  129. pm8994_spmi_regulators: regulators {
  130. compatible = "qcom,pm8994-regulators";
  131. };
  132. };
  133. };