xref: /freebsd-src/sys/contrib/device-tree/Bindings/pwm/pwm-tiehrpwm.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotTI SOC EHRPWM based PWM controller
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotRequired properties:
4*c66ec88fSEmmanuel Vadot- compatible: Must be "ti,<soc>-ehrpwm".
5*c66ec88fSEmmanuel Vadot  for am33xx  - compatible = "ti,am3352-ehrpwm", "ti,am33xx-ehrpwm";
6*c66ec88fSEmmanuel Vadot  for am4372  - compatible = "ti,am4372-ehrpwm", "ti-am3352-ehrpwm", "ti,am33xx-ehrpwm";
7*c66ec88fSEmmanuel Vadot  for am654   - compatible = "ti,am654-ehrpwm", "ti-am3352-ehrpwm";
8*c66ec88fSEmmanuel Vadot  for da850   - compatible = "ti,da850-ehrpwm", "ti-am3352-ehrpwm", "ti,am33xx-ehrpwm";
9*c66ec88fSEmmanuel Vadot  for dra746 - compatible = "ti,dra746-ehrpwm", "ti-am3352-ehrpwm";
10*c66ec88fSEmmanuel Vadot- #pwm-cells: should be 3. See pwm.yaml in this directory for a description of
11*c66ec88fSEmmanuel Vadot  the cells format. The only third cell flag supported by this binding is
12*c66ec88fSEmmanuel Vadot  PWM_POLARITY_INVERTED.
13*c66ec88fSEmmanuel Vadot- reg: physical base address and size of the registers map.
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel VadotOptional properties:
16*c66ec88fSEmmanuel Vadot- clocks: Handle to the PWM's time-base and functional clock.
17*c66ec88fSEmmanuel Vadot- clock-names: Must be set to "tbclk" and "fck".
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel VadotExample:
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadotehrpwm0: pwm@48300200 { /* EHRPWM on am33xx */
22*c66ec88fSEmmanuel Vadot	compatible = "ti,am3352-ehrpwm", "ti,am33xx-ehrpwm";
23*c66ec88fSEmmanuel Vadot	#pwm-cells = <3>;
24*c66ec88fSEmmanuel Vadot	reg = <0x48300200 0x100>;
25*c66ec88fSEmmanuel Vadot	clocks = <&ehrpwm0_tbclk>, <&l4ls_gclk>;
26*c66ec88fSEmmanuel Vadot	clock-names = "tbclk", "fck";
27*c66ec88fSEmmanuel Vadot};
28*c66ec88fSEmmanuel Vadot
29*c66ec88fSEmmanuel Vadotehrpwm0: pwm@48300200 { /* EHRPWM on am4372 */
30*c66ec88fSEmmanuel Vadot	compatible = "ti,am4372-ehrpwm", "ti,am3352-ehrpwm", "ti,am33xx-ehrpwm";
31*c66ec88fSEmmanuel Vadot	#pwm-cells = <3>;
32*c66ec88fSEmmanuel Vadot	reg = <0x48300200 0x80>;
33*c66ec88fSEmmanuel Vadot	clocks = <&ehrpwm0_tbclk>, <&l4ls_gclk>;
34*c66ec88fSEmmanuel Vadot	clock-names = "tbclk", "fck";
35*c66ec88fSEmmanuel Vadot	ti,hwmods = "ehrpwm0";
36*c66ec88fSEmmanuel Vadot};
37*c66ec88fSEmmanuel Vadot
38*c66ec88fSEmmanuel Vadotehrpwm0: pwm@1f00000 { /* EHRPWM on da850 */
39*c66ec88fSEmmanuel Vadot	compatible = "ti,da850-ehrpwm", "ti,am3352-ehrpwm", "ti,am33xx-ehrpwm";
40*c66ec88fSEmmanuel Vadot	#pwm-cells = <3>;
41*c66ec88fSEmmanuel Vadot	reg = <0x1f00000 0x2000>;
42*c66ec88fSEmmanuel Vadot};
43*c66ec88fSEmmanuel Vadot
44*c66ec88fSEmmanuel Vadotehrpwm0: pwm@4843e200 { /* EHRPWM on dra746 */
45*c66ec88fSEmmanuel Vadot	compatible = "ti,dra746-ehrpwm", "ti,am3352-ehrpwm";
46*c66ec88fSEmmanuel Vadot	#pwm-cells = <3>;
47*c66ec88fSEmmanuel Vadot	reg = <0x4843e200 0x80>;
48*c66ec88fSEmmanuel Vadot	clocks = <&ehrpwm0_tbclk>, <&l4_root_clk_div>;
49*c66ec88fSEmmanuel Vadot	clock-names = "tbclk", "fck";
50*c66ec88fSEmmanuel Vadot};
51