]> git.baikalelectronics.ru Git - kernel.git/commit
pwm: Add TI PWM subsystem driver
authorPhilip, Avinash <avinashphilip@ti.com>
Tue, 27 Nov 2012 08:48:06 +0000 (14:18 +0530)
committerThierry Reding <thierry.reding@avionic-design.de>
Wed, 28 Nov 2012 14:14:41 +0000 (15:14 +0100)
commit31a51040a39eba79a2b7db6a02f842e83855a9c9
tree448f579454bea86b34d3e980c75668e13a43a8fd
parent8bae8694f42da1dd55747b0e649c3d2b5123fd2a
pwm: Add TI PWM subsystem driver

In some platforms (like am33xx), PWM sub modules (ECAP, EHRPWM, EQEP)
are integrated to PWM subsystem. These PWM submodules has resources
shared and only one register bit-field is provided to control
module/clock enable/disable, makes it difficult to handle common
resources from independent PWMSS submodule drivers.

So the solution here implemented in this patch is, to create driver for
PWMSS and take the role of parent driver for PWM submodules. PWMSS
parent driver enumerates all the child nodes under PWMSS module. Also
symbol "pwmss_submodule_state_change" exported to enable clock gating
for individual PWMSS submodules, and submodule drivers has to enable
clock gating from their drivers.

As this is only supported during DT boot, the parent/child relationship
is created and populated in DT execution flow. The only required change
is inside DTS file, making EHRPWM & ECAP as a child to PWMSS node.

Signed-off-by: Philip, Avinash <avinashphilip@ti.com>
Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de>
Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt [new file with mode: 0644]
drivers/pwm/Kconfig
drivers/pwm/Makefile
drivers/pwm/pwm-tipwmss.c [new file with mode: 0644]
drivers/pwm/pwm-tipwmss.h [new file with mode: 0644]