syscon-common.yaml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. # SPDX-License-Identifier: GPL-2.0
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/mfd/syscon-common.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: System Controller Registers R/W Common Properties
  7. description:
  8. System controller node represents a register region containing a set
  9. of miscellaneous registers. The registers are not cohesive enough to
  10. represent as any specific type of device. The typical use-case is
  11. for some other node's driver, or platform-specific code, to acquire
  12. a reference to the syscon node (e.g. by phandle, node path, or
  13. search using a specific compatible value), interrogate the node (or
  14. associated OS driver) to determine the location of the registers,
  15. and access the registers directly.
  16. maintainers:
  17. - Lee Jones <lee@kernel.org>
  18. select:
  19. properties:
  20. compatible:
  21. contains:
  22. const: syscon
  23. required:
  24. - compatible
  25. properties:
  26. compatible:
  27. contains:
  28. const: syscon
  29. minItems: 2
  30. maxItems: 5 # Should be enough
  31. reg-io-width:
  32. description:
  33. The size (in bytes) of the IO accesses that should be performed
  34. on the device.
  35. enum: [1, 2, 4, 8]
  36. required:
  37. - compatible
  38. - reg
  39. allOf:
  40. - if:
  41. properties:
  42. compatible:
  43. contains:
  44. const: simple-mfd
  45. then:
  46. properties:
  47. compatible:
  48. minItems: 3
  49. maxItems: 5
  50. additionalProperties: true
  51. examples:
  52. - |
  53. syscon: syscon@1c00000 {
  54. compatible = "allwinner,sun8i-h3-system-controller", "syscon";
  55. reg = <0x01c00000 0x1000>;
  56. };
  57. ...