nxp,tpm-timer.yaml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/timer/nxp,tpm-timer.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: NXP Low Power Timer/Pulse Width Modulation Module (TPM)
  7. maintainers:
  8. - Dong Aisheng <aisheng.dong@nxp.com>
  9. description: |
  10. The Timer/PWM Module (TPM) supports input capture, output compare,
  11. and the generation of PWM signals to control electric motor and power
  12. management applications. The counter, compare and capture registers
  13. are clocked by an asynchronous clock that can remain enabled in low
  14. power modes. TPM can support global counter bus where one TPM drives
  15. the counter bus for the others, provided bit width is the same.
  16. properties:
  17. compatible:
  18. oneOf:
  19. - const: fsl,imx7ulp-tpm
  20. - items:
  21. - const: fsl,imx8ulp-tpm
  22. - const: fsl,imx7ulp-tpm
  23. reg:
  24. maxItems: 1
  25. interrupts:
  26. maxItems: 1
  27. clocks:
  28. items:
  29. - description: SoC TPM ipg clock
  30. - description: SoC TPM per clock
  31. clock-names:
  32. items:
  33. - const: ipg
  34. - const: per
  35. required:
  36. - compatible
  37. - reg
  38. - interrupts
  39. - clocks
  40. - clock-names
  41. additionalProperties: false
  42. examples:
  43. - |
  44. #include <dt-bindings/clock/imx7ulp-clock.h>
  45. #include <dt-bindings/interrupt-controller/arm-gic.h>
  46. timer@40260000 {
  47. compatible = "fsl,imx7ulp-tpm";
  48. reg = <0x40260000 0x1000>;
  49. interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
  50. clocks = <&scg1 IMX7ULP_CLK_NIC1_BUS_DIV>,
  51. <&pcc2 IMX7ULP_CLK_LPTPM5>;
  52. clock-names = "ipg", "per";
  53. };