1. 28 11月, 2012 2 次提交
    • P
      pwm: New driver to support PWMs on TWL4030/6030 series of PMICs · 3744c263
      Peter Ujfalusi 提交于
      The driver supports the following PWM outputs:
      TWL4030 PWM0 and PWM1
      TWL6030 PWM1 and PWM2
      
      On TWL4030 the PWM signals are muxed. Upon requesting the PWM the driver
      will select the correct mux so the PWM can be used. When the PWM has been
      freed the original configuration is going to be restored.
      Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
      3744c263
    • P
      pwm: Add TI PWM subsystem driver · af0ba001
      Philip, Avinash 提交于
      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: NPhilip, Avinash <avinashphilip@ti.com>
      Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
      af0ba001
  2. 23 11月, 2012 1 次提交
  3. 06 10月, 2012 2 次提交
  4. 20 9月, 2012 1 次提交
  5. 19 9月, 2012 1 次提交
  6. 26 7月, 2012 2 次提交
  7. 23 7月, 2012 1 次提交
  8. 03 7月, 2012 7 次提交
  9. 15 6月, 2012 1 次提交
    • S
      pwm: Add PWM framework support · 0c2498f1
      Sascha Hauer 提交于
      This patch adds framework support for PWM (pulse width modulation) devices.
      
      The is a barebone PWM API already in the kernel under include/linux/pwm.h,
      but it does not allow for multiple drivers as each of them implements the
      pwm_*() functions.
      
      There are other PWM framework patches around from Bill Gatliff. Unlike
      his framework this one does not change the existing API for PWMs so that
      this framework can act as a drop in replacement for the existing API.
      
      Why another framework?
      
      Several people argue that there should not be another framework for PWMs
      but they should be integrated into one of the existing frameworks like led
      or hwmon. Unlike these frameworks the PWM framework is agnostic to the
      purpose of the PWM. In fact, a PWM can drive a LED, but this makes the
      LED framework a user of a PWM, like already done in leds-pwm.c. The gpio
      framework also is not suitable for PWMs. Every gpio could be turned into
      a PWM using timer based toggling, but on the other hand not every PWM hardware
      device can be turned into a gpio due to the lack of hardware capabilities.
      
      This patch does not try to improve the PWM API yet, this could be done in
      subsequent patches.
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      Acked-by: NKurt Van Dijck <kurt.van.dijck@eia.be>
      Reviewed-by: NArnd Bergmann <arnd@arndb.de>
      Reviewed-by: NMatthias Kaehlcke <matthias@kaehlcke.net>
      Reviewed-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Reviewed-by: NShawn Guo <shawn.guo@linaro.org>
      [thierry.reding@avionic-design.de: fixup typos, kerneldoc comments]
      Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
      0c2498f1