[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1DD289F6464F0949A2FCA5AA6DC23F828DD72F@039-SN2MPN1-011.039d.mgd.msft.net>
Date: Fri, 29 Nov 2013 05:58:09 +0000
From: Li Xiubo <Li.Xiubo@...escale.com>
To: Thierry Reding <thierry.reding@...il.com>
CC: Shawn Guo <Shawn.Guo@...escale.com>,
"s.hauer@...gutronix.de" <s.hauer@...gutronix.de>,
"swarren@...dotorg.org" <swarren@...dotorg.org>,
"t.figa@...sung.com" <t.figa@...sung.com>,
"grant.likely@...aro.org" <grant.likely@...aro.org>,
"linux@....linux.org.uk" <linux@....linux.org.uk>,
"rob@...dley.net" <rob@...dley.net>,
"ian.campbell@...rix.com" <ian.campbell@...rix.com>,
"mark.rutland@....com" <mark.rutland@....com>,
"pawel.moll@....com" <pawel.moll@....com>,
"rob.herring@...xeda.com" <rob.herring@...xeda.com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-pwm@...r.kernel.org" <linux-pwm@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
Huan Wang <Huan.Wang@...escale.com>,
Jingchang Lu <jingchang.lu@...escale.com>
Subject: RE: [PATCHv6 1/4] pwm: Add Freescale FTM PWM driver support
Hi Thierry,
Thanks for your detail comments.
> > + switch (fpc->counter_clk_select) {
> > + case VF610_CLK_FTM0:
> > + reg |= FTMSC_CLKSYS;
> > + break;
> > + case VF610_CLK_FTM0_FIX_SEL:
> > + reg |= FTMSC_CLKFIX;
> > + break;
> > + case VF610_CLK_FTM0_EXT_SEL:
> > + reg |= FTMSC_CLKEXT;
> > + break;
> > + default:
> > + break;
> > + }
> > + reg |= fpc->clk_ps;
>
> And another one above this line.
>
> > + writel(reg, fpc->base + FTM_SC);
>
> I think with the proper locking in place what you should do is increment
> counter_clk_enable only here. That makes avoids having to decrement the
> count on error.
>
> Similarly in fsl_counter_clock_disable() you can postpone decrementing
> the count until the very end.
>
As the other mails we have talked about this that there are 8 channels
supported, but they share the same counter clock source. So we need to
make sure that when one channel is calling fsl_counter_clock_disable()
it shouldn't disable the counter clock if any other channel is still
enabled. Similary in fsl_counter clock_enable().
This is why I set counter_clk_enable property here.
--
Best Regards,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists