[PATCH 3/5] mx51: Add mx51 processor to the pwm driver
Fabio Estevam
fabioestevam at yahoo.com
Tue Nov 16 13:36:35 EST 2010
Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
arch/arm/plat-mxc/pwm.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/arch/arm/plat-mxc/pwm.c b/arch/arm/plat-mxc/pwm.c
index c36f263..c6cdced 100644
--- a/arch/arm/plat-mxc/pwm.c
+++ b/arch/arm/plat-mxc/pwm.c
@@ -26,7 +26,7 @@
#define MX1_PWMP 0x08 /* PWM Period Register */
-/* i.MX27, i.MX31, i.MX35 share the same PWM function block: */
+/* i.MX25/27/31/35/51 share the same PWM function block: */
#define MX3_PWMCR 0x00 /* PWM Control Register */
#define MX3_PWMSAR 0x0C /* PWM Sample Register */
@@ -57,7 +57,7 @@ int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns)
if (pwm == NULL || period_ns == 0 || duty_ns > period_ns)
return -EINVAL;
- if (cpu_is_mx27() || cpu_is_mx3() || cpu_is_mx25()) {
+ if (cpu_is_mx27() || cpu_is_mx3() || cpu_is_mx25() || cpu_is_mx51()) {
unsigned long long c;
unsigned long period_cycles, duty_cycles, prescale;
u32 cr;
@@ -79,7 +79,7 @@ int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns)
cr = MX3_PWMCR_PRESCALER(prescale) | MX3_PWMCR_EN;
- if (cpu_is_mx25())
+ if (cpu_is_mx25() || cpu_is_mx51())
cr |= MX3_PWMCR_CLKSRC_IPG;
else
cr |= MX3_PWMCR_CLKSRC_IPG_HIGH;
@@ -198,6 +198,7 @@ static int __devinit mxc_pwm_probe(struct platform_device *pdev)
if (IS_ERR(pwm->clk)) {
ret = PTR_ERR(pwm->clk);
+ dev_err(&pdev->dev, "can't get PWM clock\n");
goto err_free;
}
@@ -233,6 +234,7 @@ static int __devinit mxc_pwm_probe(struct platform_device *pdev)
mutex_unlock(&pwm_lock);
platform_set_drvdata(pdev, pwm);
+ dev_info(&pdev->dev, "i.MX PWM Driver Enabled\n");
return 0;
err_free_mem:
--
1.6.0.4
More information about the linux-arm-kernel
mailing list