Re: [PATCH v5 03/11] pwm: imx: Add separate set of pwm ops for PWMv1 and PWMv2

From: Thierry Reding
Date: Mon Jan 30 2017 - 03:53:48 EST


On Mon, Jan 30, 2017 at 09:36:49AM +0100, Lukasz Majewski wrote:
> Hi Thierry,
>
> > On Mon, Jan 30, 2017 at 08:23:12AM +0100, Thierry Reding wrote:
> > > On Sun, Jan 29, 2017 at 10:54:07PM +0100, Lukasz Majewski wrote:
> > > > From: Lukasz Majewski <l.majewski@xxxxxxxxx>
> > > >
> > > > This patch provides separate set of pwm ops utilized by
> > > > i.MX's PWMv1 and PWMv2.
> > > >
> > > > Signed-off-by: Lothar WaÃmann <LW@xxxxxxxxxxxxxxxxxxx>
> > > > Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@xxxxxxxxxxx>
> > > > Signed-off-by: Lukasz Majewski <l.majewski@xxxxxxxxx>
> > > > Acked-by: Shawn Guo <shawn.guo@xxxxxxxxxx>
> > > > Reviewed-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
> > > > ---
> > > > Changes for v5:
> > > > - None
> > > >
> > > > Changes for v4:
> > > > - None
> > > >
> > > > Changes for v3:
> > > > - Adjust the code to work with ipg clock removed
> > > >
> > > > Changes for v2:
> > > > - New patch
> > > > ---
> > > > drivers/pwm/pwm-imx.c | 17 ++++++++++++++---
> > > > 1 file changed, 14 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git a/drivers/pwm/pwm-imx.c b/drivers/pwm/pwm-imx.c
> > > > index b1d1e50..0fa480d 100644
> > > > --- a/drivers/pwm/pwm-imx.c
> > > > +++ b/drivers/pwm/pwm-imx.c
> > > > @@ -239,7 +239,14 @@ static void imx_pwm_disable(struct pwm_chip
> > > > *chip, struct pwm_device *pwm)
> > > > clk_disable_unprepare(imx->clk_per); }
> > > >
> > > > -static struct pwm_ops imx_pwm_ops = {
> > > > +static struct pwm_ops imx_pwm_ops_v1 = {
> > > > + .enable = imx_pwm_enable,
> > > > + .disable = imx_pwm_disable,
> > > > + .config = imx_pwm_config,
> > > > + .owner = THIS_MODULE,
> > > > +};
> > > > +
> > > > +static struct pwm_ops imx_pwm_ops_v2 = {
> > >
> > > Can't these two be const? No need to respin for only this, just let
> > > me know and I can make the change while applying.
> >
> > Nevermind that. I just remembered that I had picked up a patch to make
> > the original imx_pwm_ops a const and things still work fine if I make
> > both of the above const, so I just had to manually apply your patch,
> > but other than that it seems fine. Let me apply the rest of this set
> > and push out. It'd be great if you could check afterwards that it's
> > all still what you expect.
>
> I will do that. Thanks for integrating the patch series :-).

Thanks for sticking with it. I know the initial patches for optional
polarity support have been around for years, and it took a really long
time for this all to come together.

But I think the end result is sound and looks really good.

The one remaining bit that I'm not 100% happy about is that the v1
support is not atomic while the v2 support is. Not a blocker, but it
looks as if it should be easy to convert over v1 as well. Any takers?

Thierry

Attachment: signature.asc
Description: PGP signature