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 > > 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 > > > > [Atish: Compatible string update] > > > > Signed-off-by: Atish Patra > > > > Signed-off-by: Yash Shah > > > > --- > > > > .../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