From: Arun Ramamurthy <arunr...@broadcom.com>

Omit setting the polarity to normal during probe and instead use the
new pwmchip_add_inversed function to register a PWM chip with default
polarity of inversed for all channels as this is the actual hardware
default.

Signed-off-by: Arun Ramamurthy <arunr...@broadcom.com>
Reviewed-by: Ray Jui <r...@broadcom.com>
Signed-off-by: Scott Branden <sbran...@broadcom.com>
Signed-off-by: Tim Kryger <tim.kry...@gmail.com>
---

This is based on Arun's patch (originally posted by Scott)

https://lkml.org/lkml/2014/11/25/1019

I modified it to use the pwmchip_add_inversed function so the polarity
could be safely left at the power on default and updated the commit
message accordingly.

 drivers/pwm/pwm-bcm-kona.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/pwm/pwm-bcm-kona.c b/drivers/pwm/pwm-bcm-kona.c
index 02bc048..32b3ec6 100644
--- a/drivers/pwm/pwm-bcm-kona.c
+++ b/drivers/pwm/pwm-bcm-kona.c
@@ -266,18 +266,15 @@ static int kona_pwmc_probe(struct platform_device *pdev)
                return ret;
        }
 
-       /* Set smooth mode, push/pull, and normal polarity for all channels */
-       for (chan = 0; chan < kp->chip.npwm; chan++) {
-               value |= (1 << PWM_CONTROL_SMOOTH_SHIFT(chan));
+       /* Set push/pull for all channels */
+       for (chan = 0; chan < kp->chip.npwm; chan++)
                value |= (1 << PWM_CONTROL_TYPE_SHIFT(chan));
-               value |= (1 << PWM_CONTROL_POLARITY_SHIFT(chan));
-       }
 
        writel(value, kp->base + PWM_CONTROL_OFFSET);
 
        clk_disable_unprepare(kp->clk);
 
-       ret = pwmchip_add(&kp->chip);
+       ret = pwmchip_add_inversed(&kp->chip);
        if (ret < 0)
                dev_err(&pdev->dev, "failed to add PWM chip: %d\n", ret);
 
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to