return readl(pwm->mmio_base + EP93XX_PWMx_TERM_COUNT);
}
-static inline void ep93xx_pwm_disable(struct ep93xx_pwm *pwm)
-{
- writel(0x0, pwm->mmio_base + EP93XX_PWMx_ENABLE);
-}
-
static inline int ep93xx_pwm_is_enabled(struct ep93xx_pwm *pwm)
{
return readl(pwm->mmio_base + EP93XX_PWMx_ENABLE) & 0x1;
return -EINVAL;
if (val == 0) {
- ep93xx_pwm_disable(pwm);
+ writel(0x0, pwm->mmio_base + EP93XX_PWMx_ENABLE);
} else if (val <= (clk_get_rate(pwm->clk) / 2)) {
u32 term, duty;
pwm->duty_percent = 50;
/* disable pwm at startup. Avoids zero value. */
- ep93xx_pwm_disable(pwm);
+ writel(0x0, pwm->mmio_base + EP93XX_PWMx_ENABLE);
writel(EP93XX_PWM_MAX_COUNT, pwm->mmio_base + EP93XX_PWMx_TERM_COUNT);
writel(EP93XX_PWM_MAX_COUNT/2, pwm->mmio_base + EP93XX_PWMx_DUTY_CYCLE);
{
struct ep93xx_pwm *pwm = platform_get_drvdata(pdev);
- ep93xx_pwm_disable(pwm);
+ writel(0x0, pwm->mmio_base + EP93XX_PWMx_ENABLE);
clk_disable(pwm->clk);
sysfs_remove_group(&pdev->dev.kobj, &ep93xx_pwm_sysfs_files);
ep93xx_pwm_release_gpio(pdev);