socionext,uniphier-sysctrl.yaml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/soc/socionext/socionext,uniphier-sysctrl.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Socionext UniPhier system controller
  7. maintainers:
  8. - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
  9. description: |+
  10. System controller implemented on Socionext UniPhier SoCs has multiple
  11. functions such as clock control, reset control, internal watchdog timer,
  12. thermal management, and so on.
  13. properties:
  14. compatible:
  15. items:
  16. - enum:
  17. - socionext,uniphier-ld4-sysctrl
  18. - socionext,uniphier-pro4-sysctrl
  19. - socionext,uniphier-pro5-sysctrl
  20. - socionext,uniphier-pxs2-sysctrl
  21. - socionext,uniphier-sld8-sysctrl
  22. - socionext,uniphier-ld11-sysctrl
  23. - socionext,uniphier-ld20-sysctrl
  24. - socionext,uniphier-pxs3-sysctrl
  25. - socionext,uniphier-nx1-sysctrl
  26. - const: simple-mfd
  27. - const: syscon
  28. reg:
  29. maxItems: 1
  30. clock-controller:
  31. $ref: /schemas/clock/socionext,uniphier-clock.yaml#
  32. reset-controller:
  33. $ref: /schemas/reset/socionext,uniphier-reset.yaml#
  34. watchdog:
  35. $ref: /schemas/watchdog/socionext,uniphier-wdt.yaml#
  36. thermal-sensor:
  37. $ref: /schemas/thermal/socionext,uniphier-thermal.yaml#
  38. allOf:
  39. - if:
  40. properties:
  41. compatible:
  42. contains:
  43. const: socionext,uniphier-ld4-sysctrl
  44. then:
  45. properties:
  46. watchdog: false
  47. - if:
  48. properties:
  49. compatible:
  50. contains:
  51. enum:
  52. - socionext,uniphier-ld4-sysctrl
  53. - socionext,uniphier-pro4-sysctrl
  54. - socionext,uniphier-sld8-sysctrl
  55. - socionext,uniphier-ld11-sysctrl
  56. then:
  57. properties:
  58. thermal-sensor: false
  59. additionalProperties: false
  60. required:
  61. - compatible
  62. - reg
  63. examples:
  64. - |
  65. #include <dt-bindings/interrupt-controller/arm-gic.h>
  66. syscon@61840000 {
  67. compatible = "socionext,uniphier-ld20-sysctrl",
  68. "simple-mfd", "syscon";
  69. reg = <0x61840000 0x4000>;
  70. clock-controller {
  71. compatible = "socionext,uniphier-ld20-clock";
  72. #clock-cells = <1>;
  73. };
  74. reset-controller {
  75. compatible = "socionext,uniphier-ld20-reset";
  76. #reset-cells = <1>;
  77. };
  78. watchdog {
  79. compatible = "socionext,uniphier-wdt";
  80. };
  81. thermal-sensor {
  82. compatible = "socionext,uniphier-ld20-thermal";
  83. interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
  84. #thermal-sensor-cells = <0>;
  85. };
  86. };