qcom,pm8008.yaml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/mfd/qcom,pm8008.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Qualcomm Technologies, Inc. PM8008 PMIC
  7. maintainers:
  8. - Guru Das Srinagesh <quic_gurus@quicinc.com>
  9. description: |
  10. Qualcomm Technologies, Inc. PM8008 is a dedicated camera PMIC that integrates
  11. all the necessary power management, housekeeping, and interface support
  12. functions into a single IC.
  13. properties:
  14. compatible:
  15. const: qcom,pm8008
  16. reg:
  17. maxItems: 1
  18. interrupts:
  19. maxItems: 1
  20. reset-gpios:
  21. maxItems: 1
  22. vdd-l1-l2-supply: true
  23. vdd-l3-l4-supply: true
  24. vdd-l5-supply: true
  25. vdd-l6-supply: true
  26. vdd-l7-supply: true
  27. gpio-controller: true
  28. "#gpio-cells":
  29. const: 2
  30. gpio-ranges:
  31. maxItems: 1
  32. interrupt-controller: true
  33. "#interrupt-cells":
  34. const: 2
  35. "#thermal-sensor-cells":
  36. const: 0
  37. pinctrl:
  38. type: object
  39. additionalProperties: false
  40. patternProperties:
  41. "-state$":
  42. type: object
  43. allOf:
  44. - $ref: /schemas/pinctrl/pinmux-node.yaml
  45. - $ref: /schemas/pinctrl/pincfg-node.yaml
  46. properties:
  47. pins:
  48. items:
  49. pattern: "^gpio[12]$"
  50. function:
  51. items:
  52. - enum:
  53. - normal
  54. required:
  55. - pins
  56. - function
  57. additionalProperties: false
  58. regulators:
  59. type: object
  60. additionalProperties: false
  61. patternProperties:
  62. "^ldo[1-7]$":
  63. type: object
  64. $ref: /schemas/regulator/regulator.yaml#
  65. unevaluatedProperties: false
  66. required:
  67. - compatible
  68. - reg
  69. - interrupts
  70. - vdd-l1-l2-supply
  71. - vdd-l3-l4-supply
  72. - vdd-l5-supply
  73. - vdd-l6-supply
  74. - vdd-l7-supply
  75. - gpio-controller
  76. - "#gpio-cells"
  77. - gpio-ranges
  78. - interrupt-controller
  79. - "#interrupt-cells"
  80. - "#thermal-sensor-cells"
  81. additionalProperties: false
  82. examples:
  83. - |
  84. #include <dt-bindings/gpio/gpio.h>
  85. #include <dt-bindings/interrupt-controller/irq.h>
  86. i2c {
  87. #address-cells = <1>;
  88. #size-cells = <0>;
  89. pm8008: pmic@8 {
  90. compatible = "qcom,pm8008";
  91. reg = <0x8>;
  92. interrupt-parent = <&tlmm>;
  93. interrupts = <32 IRQ_TYPE_EDGE_RISING>;
  94. reset-gpios = <&tlmm 42 GPIO_ACTIVE_LOW>;
  95. vdd-l1-l2-supply = <&vreg_s8b_1p2>;
  96. vdd-l3-l4-supply = <&vreg_s1b_1p8>;
  97. vdd-l5-supply = <&vreg_bob>;
  98. vdd-l6-supply = <&vreg_bob>;
  99. vdd-l7-supply = <&vreg_bob>;
  100. gpio-controller;
  101. #gpio-cells = <2>;
  102. gpio-ranges = <&pm8008 0 0 2>;
  103. interrupt-controller;
  104. #interrupt-cells = <2>;
  105. #thermal-sensor-cells = <0>;
  106. pinctrl {
  107. gpio-keys-state {
  108. pins = "gpio1";
  109. function = "normal";
  110. };
  111. };
  112. regulators {
  113. ldo1 {
  114. regulator-name = "vreg_l1";
  115. regulator-min-microvolt = <950000>;
  116. regulator-max-microvolt = <1300000>;
  117. };
  118. };
  119. };
  120. };
  121. ...