operating-points-v2-ti-cpu.yaml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/opp/operating-points-v2-ti-cpu.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: TI CPU OPP (Operating Performance Points)
  7. description:
  8. TI SoCs, like those in the AM335x, AM437x, AM57xx, AM62x, and DRA7xx
  9. families, the CPU frequencies subset and the voltage value of each
  10. OPP vary based on the silicon variant used. The data sheet sections
  11. corresponding to "Operating Performance Points" describe the frequency
  12. and voltage values based on device type and speed bin information
  13. blown in corresponding eFuse bits as referred to by the Technical
  14. Reference Manual.
  15. This document extends the operating-points-v2 binding by providing
  16. the hardware description for the scheme mentioned above.
  17. maintainers:
  18. - Dhruva Gole <d-gole@ti.com>
  19. allOf:
  20. - $ref: opp-v2-base.yaml#
  21. properties:
  22. compatible:
  23. const: operating-points-v2-ti-cpu
  24. syscon:
  25. $ref: /schemas/types.yaml#/definitions/phandle
  26. description: |
  27. points to syscon node representing the control module
  28. register space of the SoC.
  29. opp-shared: true
  30. patternProperties:
  31. '^opp(-?[0-9]+)*$':
  32. type: object
  33. additionalProperties: false
  34. properties:
  35. clock-latency-ns: true
  36. opp-hz: true
  37. opp-microvolt: true
  38. opp-supported-hw: true
  39. opp-suspend: true
  40. turbo-mode: true
  41. required:
  42. - opp-hz
  43. - opp-supported-hw
  44. required:
  45. - compatible
  46. - syscon
  47. additionalProperties: false
  48. examples:
  49. - |
  50. opp-table {
  51. compatible = "operating-points-v2-ti-cpu";
  52. syscon = <&scm_conf>;
  53. opp-300000000 {
  54. opp-hz = /bits/ 64 <300000000>;
  55. opp-microvolt = <1100000 1078000 1122000>;
  56. opp-supported-hw = <0x06 0x0020>;
  57. opp-suspend;
  58. };
  59. opp-500000000 {
  60. opp-hz = /bits/ 64 <500000000>;
  61. opp-microvolt = <1100000 1078000 1122000>;
  62. opp-supported-hw = <0x01 0xFFFF>;
  63. };
  64. opp-600000000 {
  65. opp-hz = /bits/ 64 <600000000>;
  66. opp-microvolt = <1100000 1078000 1122000>;
  67. opp-supported-hw = <0x06 0x0040>;
  68. };
  69. opp-1000000000 {
  70. opp-hz = /bits/ 64 <1000000000>;
  71. opp-microvolt = <1325000 1298500 1351500>;
  72. opp-supported-hw = <0x04 0x0200>;
  73. };
  74. };