[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190206124055.GF21676@ulmo>
Date: Wed, 6 Feb 2019 13:40:55 +0100
From: Thierry Reding <thierry.reding@...il.com>
To: Uwe Kleine-König <u.kleine-koenig@...gutronix.de>
Cc: Yash Shah <yash.shah@...ive.com>,
Palmer Dabbelt <palmer@...ive.com>, linux-pwm@...r.kernel.org,
linux-riscv@...ts.infradead.org, robh+dt@...nel.org,
mark.rutland@....com, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Sachin Ghadi <sachin.ghadi@...ive.com>,
Paul Walmsley <paul.walmsley@...ive.com>
Subject: Re: [PATCH v5 1/2] pwm: sifive: Add DT documentation for SiFive PWM
Controller
On Wed, Feb 06, 2019 at 12:07:30PM +0100, Uwe Kleine-König wrote:
> On Wed, Feb 06, 2019 at 04:18:47PM +0530, Yash Shah wrote:
> > On Wed, Jan 30, 2019 at 1:44 PM Uwe Kleine-König
> > <u.kleine-koenig@...gutronix.de> wrote:
> > >
> > > On Tue, Jan 29, 2019 at 05:13:18PM +0530, Yash Shah wrote:
> > > > DT documentation for PWM controller added.
> > > >
> > > > Signed-off-by: Wesley W. Terpstra <wesley@...ive.com>
> > > > [Atish: Compatible string update]
> > > > Signed-off-by: Atish Patra <atish.patra@....com>
> > > > Signed-off-by: Yash Shah <yash.shah@...ive.com>
> > > > ---
> > > > .../devicetree/bindings/pwm/pwm-sifive.txt | 33 ++++++++++++++++++++++
> > > > 1 file changed, 33 insertions(+)
> > > > create mode 100644 Documentation/devicetree/bindings/pwm/pwm-sifive.txt
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/pwm/pwm-sifive.txt b/Documentation/devicetree/bindings/pwm/pwm-sifive.txt
> > > > new file mode 100644
> > > > index 0000000..8dcb40d
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/pwm/pwm-sifive.txt
> > > > @@ -0,0 +1,33 @@
> > > > +SiFive PWM controller
> > > > +
> > > > +Unlike most other PWM controllers, the SiFive PWM controller currently only
> > > > +supports one period for all channels in the PWM. This is set globally in DTS.
> > >
> > > You can simply drop this if the first user can set this using the usual
> > > interface. Don't you like this suggestion that I already made a few
> > > times now?
> > >
> > > Did you consider to make the driver support only a single output with a
> > > more flexible period setting?
> >
> > We cannot consider supporting only single output since we have boards that
> > use the additional PWM channels to control individual LED brightness
> > of a tri-color LED.
> > If we go down to one channel, then we can't control the brightness of
> > the individual LEDs.
> > It will break the use case.
>
> OK.
>
> > I am considering the below approach, let me know if it's fine by you.
> >
> > - Drop the global period property and allow the only first user to change period
> > using the usual interface.
> > - A note in the binding that all PWMs need to run at the same
> > period. If the driver already refuses to apply incompatible periods,
> > the users are going to notice that they've got the DT wrong.
> > - In driver code, count the users using the .request and .free callbacks.
> > Based on this, allow changes to period iff the user count is one.
>
> Not sure you need to point this limitation in the binding doc. Other
> than that this is fine.
I think it's useful to point this out in the binding documentation since
it's something that device tree writers will want to know.
Thierry
Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)
Powered by blists - more mailing lists