- 28 11月, 2012 8 次提交
-
-
由 Peter Ujfalusi 提交于
The driver supports the following LED outputs as generic PWM driver: TWL4030 LEDA and LEDB (PWMA and PWMB) TWL6030 Charging indicator LED (PWM LED) On TWL6030 when the PWM requested LED is configured to be controlled by SW. In this case the user can enable/disable and set the duty period freely. When the PWM has been freed, the LED driver is put back to HW control. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 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>
-
由 Philip, Avinash 提交于
Enable pinctrl for pwm-tiehrpwm if pinctrl driver available, else bail out with warning message. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
This patch 1. Add support for device-tree binding for EHRWPM driver. 2. Set size of pwm-cells set to 3 to support PWM channel number, PWM period & polarity configuration from device tree. 3. Add enable/disable clock gating in PWM subsystem common config space. 4. When here set .owner member in platform_driver structure to THIS_MODULE. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Rob Landley <rob@landley.net> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
Some platforms (like AM33XX) requires clock gating from control module explicitly for TBCLK. Enabling of this clock required for the functioning of the time base sub module in EHRPWM module. Adding support for handling by enabling the clock on PWM device enable & disable on PWM device disable. Platforms don't have explicit TBCLK gating has to add dummy TBCLK node. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
Enable pinctrl for pwm-tiecap if pinctrl driver available, else bail out with warning message. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
This patch 1. Add support for device-tree binding for ECAP APWM driver. 2. Set size of pwm-cells set to 3 to support PWM channel number, PWM period & polarity configuration from device tree. 3. Add enable/disable clock gating in PWM subsystem common config space. 4. When here set .owner member in platform_driver structure to THIS_MODULE. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Rob Landley <rob@landley.net> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 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>
-
- 23 11月, 2012 5 次提交
-
-
由 Philip, Avinash 提交于
Add support for encoding PWM properties in bit encoded form with of_pwm_xlate_with_flags() function support. Platforms require platform specific PWM properties has to populate in 3rd cell of the pwm-specifier and PWM driver should also set .of_xlate support with this function. Currently PWM property polarity encoded in bit position 0 of the third cell in pwm-specifier. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Acked-by: NGrant Likely <grant.likely@secretlab.ca> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Tony Prisk 提交于
This patch corrects a bug reported by Peter Vasil. When all PWMs are disabled, PWM module may be disabled during calls to pwm_config. This patch enables/disables the clock in pwm_config to ensure the module is active before register read/ writes. Signed-off-by: NTony Prisk <linux@prisktech.co.nz> Tested-by: NPeter Vasil <petervasil@gmail.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Tony Prisk 提交于
A missing '{' causes a build error in pwm-vt8500.c Signed-off-by: NTony Prisk <linux@prisktech.co.nz> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Axel Lin 提交于
spear_pwm_config() is not referenced outside of this file, make it static. Signed-off-by: NAxel Lin <axel.lin@ingics.com> Acked-by: NViresh Kumar <viresh.kumar@linaro.org> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Shiraz Hashim 提交于
Add support for PWM chips present on SPEAr platforms. These PWM chips support 4 channel output with programmable duty cycle and frequency. More details on these PWM chips can be obtained from relevant chapter of reference manual, present at following[1] location. 1. http://www.st.com/internet/mcu/product/251211.jsp Cc: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NShiraz Hashim <shiraz.hashim@st.com> Signed-off-by: NViresh Kumar <viresh.kumar@linaro.org> Reviewed-by: NVipin Kumar <vipin.kumar@st.com> Acked-by: NViresh Kumar <viresh.kumar@linaro.org> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 01 11月, 2012 1 次提交
-
-
由 Tony Prisk 提交于
This patch updates pwm-vt8500.c to support devicetree probing and make use of the common clock subsystem. A binding document describing the PWM controller found on arch-vt8500 is also included. Signed-off-by: NTony Prisk <linux@prisktech.co.nz> Acked-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 06 10月, 2012 3 次提交
-
-
由 Thierry Reding 提交于
Make sure the duty-cycle and period passed in are not negative. This should eventually be made implicit by making them unsigned. While at it, the drivers' .config() implementations can have the equivalent checks removed. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Cc: Shawn Guo <shawn.guo@linaro.org> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Sachin Kamat <sachin.kamat@linaro.org> Cc: Axel Lin <axel.lin@gmail.com> Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Jingoo Han <jg1.han@samsung.com> Cc: Jonghwan Choi <jhbird.choi@samsung.com> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: "Philip, Avinash" <avinashphilip@ti.com> Cc: Vaibhav Bedia <vaibhav.bedia@ti.com> Acked-by: NJingoo Han <jg1.han@samsung.com>
-
由 Thierry Reding 提交于
This commit moves the driver to drivers/pwm and converts it to the new PWM framework. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NLars-Peter Clausen <lars@metafoo.de> Tested-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NRalf Baechle <ralf@linux-mips.org>
-
由 Thierry Reding 提交于
This commit moves the driver to drivers/pwm and converts it to the new PWM framework. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Tested-by: NQin Rui <qinrui@mprc.pku.edu.cn> Acked-by: NGuan Xuetao <gxt@mprc.pku.edu.cn>
-
- 20 9月, 2012 1 次提交
-
-
由 Thierry Reding 提交于
This commit moves the driver to drivers/pwm and converts it to the new PWM framework. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NArnd Bergmann <arnd@arndb.de> Acked-by: NArun Murthy <arun.murthy@stericsson.com>
-
- 19 9月, 2012 1 次提交
-
-
由 Thierry Reding 提交于
This commit moves the driver to drivers/pwm and converts it to the new PWM framework. In order for this to work properly, register the PWM as child of the multi-function TWL6030 device. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NPeter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
- 12 9月, 2012 7 次提交
-
-
由 Philipp Zabel 提交于
The i.MX PWM core has two clocks: The ipg clock and the ipg highfreq (peripheral) clock. The ipg clock has to be enabled for this hardware to work. The actual PWM output can either be driven by the ipg clock or the ipg highfreq. The ipg highfreq has the advantage that it runs even when the SoC is in low power modes. This patch requests both clocks and enables the ipg clock for accessing registers and the peripheral clock to actually turn on the PWM. Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sascha Hauer 提交于
The i.MX PWM module has two clocks: The ipg clock and the ipg highfreq (peripheral) clock. The ipg clock has to be enabled for this hardware to work. The actual PWM output can either be driven by the ipg clock or the ipg highfreq. The ipg highfreq has the advantage that it runs even when the SoC is in low power modes. Use the always running clock also on i.MX25. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philipp Zabel 提交于
At the same time remove platform based support. No user for this driver has made it into mainline so far, so all we break is out of tree stuff. Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sascha Hauer 提交于
Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sascha Hauer 提交于
We used to enable/disable the PWM only by switching the clock on or off. Instead, use the dedicated register bits. These differ on different SoCs, so introduce a SoC specific function for this. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sascha Hauer 提交于
The PWM core makes sure that pwm_enable/disable are called only once. Still keep the enabled state since we will need it in pwm_config. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sascha Hauer 提交于
To cleanup the code and to make it easier to support different SoCs. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Reviewed-by: NShawn Guo <shawn.guo@linaro.org> Reviewed-by: NBenoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 10 9月, 2012 6 次提交
-
-
由 Philip, Avinash 提交于
EHRPWM hardware supports polarity configuration of PWM output. However configuration of polarity done in hardware only in .enable() to ensure PWM output present only after enabling PWM. This commit adds support for polarity configuration for EHRPWM. When being here, remove configuring of polarity during .config() and do it explicitly from .set_polarity(). Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
ECAP APWM hardware supports polarity configuration of PWM output. This commit adds support for polarity configuration of ECAP APWM. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Alexandre Courbot 提交于
Add resource managed variants of pwm_get() and pwm_put() for convenience. Code is largely inspired by the equivalent devm functions of the regulator framework. Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
Some hardware supports inverting the polarity of the PWM signal. This commit adds support to the PWM framework to allow users of the PWM API to configure the polarity. Note that in order to reduce complexity, changing the polarity of a PWM signal is only allowed while the PWM is disabled. A practical example where this can prove useful is to simulate inversion of the duty cycle. While inversion of polarity and duty cycle are not exactly the same, the differences for most use-cases are negligible. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
EHRPWM hardware supports 2 independent PWM channels. However the device uses only one register to handle period setting for both channels. So both channels should be configured for same period (in nsec). Fix the same by returning error for conflicting period values. However, allow 1. Configuration of period settings if not conflicting with other channels 2. Re-configuring of period settings if no other channels being configured Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
APWM mode is enabled while configuring PWM device. This was done to handle shadow & immediate mode update of period and compare registers. However, leaving it enabled after configuring will cause APWM output on PWM pin even before enabling PWM device. Fix the same by disabling APWM mode after configuring if PWM device is not running. Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 20 8月, 2012 1 次提交
-
-
由 Thierry Reding 提交于
The Kconfig help text should help the user understand what functionality is provided by an option. This is especially true for new subsystems. An improved help text is provided by this commit in the hopes of clarifying the usefulness of the PWM framework. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Acked-by: NBorislav Petkov <bp@alien8.de>
-
- 17 8月, 2012 5 次提交
-
-
由 Sachin Kamat 提交于
Fixes the following: WARNING: line over 80 characters ERROR: spaces required around that ':' (ctx:VxW) WARNING: Prefer pr_warn(... to pr_warning(... Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sachin Kamat 提交于
Fixes the following: WARNING: Prefer pr_warn(... to pr_warning(... pr_warning("Waiting for status bits 0x%x to clear timed out\n", Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Axel Lin 提交于
The implementation in devm_request_and_ioremap() already shows error message, so no need to show dev_err again if devm_request_and_ioremap() fails. Signed-off-by: NAxel Lin <axel.lin@gmail.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Philip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Jingoo Han 提交于
This patch adds missing device pointer to struct pwm_chip. If the device pointer is NULL, pwmchip_add() will return error. Signed-off-by: NJingoo Han <jg1.han@samsung.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Sachin Kamat 提交于
Fixes the following sparse warnings: drivers/pwm/core.c:152:6: warning: symbol 'of_pwmchip_add' was not declared. Should it be static? drivers/pwm/core.c:165:6: warning: symbol 'of_pwmchip_remove' was not declared. Should it be static? Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 26 7月, 2012 2 次提交
-
-
由 Philip, Avinash 提交于
Enhanced high resolution PWM module (EHRPWM) hardware can be used to generate PWM output over 2 channels. This commit adds PWM driver support for EHRPWM device present on AM33XX SOC. Current implementation supports simple PWM functionality. Reviewed-by: NVaibhav Bedia <vaibhav.bedia@ti.com> Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
由 Philip, Avinash 提交于
ECAP hardware on AM33XX SOC supports auxiliary PWM (APWM) feature. This commit adds PWM driver support for ECAP hardware on AM33XX SOC. In the ECAP hardware, each PWM pin can also be configured to be in capture mode. Current implementation only supports PWM mode of operation. Also, hardware supports sync between multiple PWM pins but the driver supports simple independent PWM functionality. Reviewed-by: NVaibhav Bedia <vaibhav.bedia@ti.com> Signed-off-by: NPhilip, Avinash <avinashphilip@ti.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-