0001 TI SOC based PWM Subsystem
0002
0003 Required properties:
0004 - compatible: Must be "ti,<soc>-pwmss".
0005 for am33xx - compatible = "ti,am33xx-pwmss";
0006 for am4372 - compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
0007 for dra746 - compatible = "ti,dra746-pwmss", "ti,am33xx-pwmss"
0008
0009 - reg: physical base address and size of the registers map.
0010 - address-cells: Specify the number of u32 entries needed in child nodes.
0011 Should set to 1.
0012 - size-cells: specify number of u32 entries needed to specify child nodes size
0013 in reg property. Should set to 1.
0014 - ranges: describes the address mapping of a memory-mapped bus. Should set to
0015 physical address map of child's base address, physical address within
0016 parent's address space and length of the address map. For am33xx,
0017 3 set of child register maps present, ECAP register space, EQEP
0018 register space, EHRPWM register space.
0019
0020 Also child nodes should also populated under PWMSS DT node.
0021
0022 Example:
0023 epwmss0: epwmss@48300000 { /* PWMSS for am33xx */
0024 compatible = "ti,am33xx-pwmss";
0025 reg = <0x48300000 0x10>;
0026 ti,hwmods = "epwmss0";
0027 #address-cells = <1>;
0028 #size-cells = <1>;
0029 ranges = <0x48300100 0x48300100 0x80 /* ECAP */
0030 0x48300180 0x48300180 0x80 /* EQEP */
0031 0x48300200 0x48300200 0x80>; /* EHRPWM */
0032
0033 /* child nodes go here */
0034 };
0035
0036 epwmss0: epwmss@48300000 { /* PWMSS for am4372 */
0037 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss"
0038 reg = <0x48300000 0x10>;
0039 ti,hwmods = "epwmss0";
0040 #address-cells = <1>;
0041 #size-cells = <1>;
0042 ranges = <0x48300100 0x48300100 0x80 /* ECAP */
0043 0x48300180 0x48300180 0x80 /* EQEP */
0044 0x48300200 0x48300200 0x80>; /* EHRPWM */
0045
0046 /* child nodes go here */
0047 };
0048
0049 epwmss0: epwmss@4843e000 { /* PWMSS for DRA7xx */
0050 compatible = "ti,dra746-pwmss", "ti,am33xx-pwmss";
0051 reg = <0x4843e000 0x30>;
0052 ti,hwmods = "epwmss0";
0053 #address-cells = <1>;
0054 #size-cells = <1>;
0055 ranges;
0056
0057 /* child nodes go here */
0058 };