On Tue, 2020-10-13 at 14:08 +0200, Uwe Kleine-König wrote: > On Tue, Oct 13, 2020 at 12:35:38PM +0200, Nicolas Saenz Julienne wrote: > > Hi Uwe, thanks for having a look at this. > > > > On Mon, 2020-10-12 at 09:01 +0200, Uwe Kleine-König wrote: > > > On Fri, Oct 09, 2020 at 05:30:28PM +0200, Nicolas Saenz Julienne wrote: > > > > The PWM bus controlling the fan in RPi's official PoE hat can only be > > > > controlled by the board's co-processor. > > > > > > > > Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx> > > > > --- > > > > .../arm/bcm/raspberrypi,bcm2835-firmware.yaml | 21 +++++++++++++++++++ > > > > .../pwm/raspberrypi,firmware-pwm.h | 13 ++++++++++++ > > > > 2 files changed, 34 insertions(+) > > > > create mode 100644 include/dt-bindings/pwm/raspberrypi,firmware-pwm.h > > > > > > > > diff --git a/Documentation/devicetree/bindings/arm/bcm/raspberrypi,bcm2835-firmware.yaml b/Documentation/devicetree/bindings/arm/bcm/raspberrypi,bcm2835-firmware.yaml > > > > index a2c63c8b1d10..dcaf00e8602e 100644 > > > > --- a/Documentation/devicetree/bindings/arm/bcm/raspberrypi,bcm2835-firmware.yaml > > > > +++ b/Documentation/devicetree/bindings/arm/bcm/raspberrypi,bcm2835-firmware.yaml > > > > @@ -64,6 +64,22 @@ properties: > > > > - compatible > > > > - "#reset-cells" > > > > > > > > + pwm: > > > > + type: object > > > > + > > > > + properties: > > > > + compatible: > > > > + const: raspberrypi,firmware-pwm > > > > + > > > > + "#pwm-cells": > > > > + const: 1 > > > > + description: > > > > > + The argument is the PWM bus number. > > > > > > This is wrong. #pwm-cells specifies the number of "arguments" for > > > phandles pointing to this node. And I would prefer this being 2 to match > > > the stuff described in the generic pwm binding. > > > > I saw buses out there with the same limitation as this one (unable to change > > frequency) that used a single cell, so I whent with it. That said I'll be happy > > to change it and drop the custom *_xlate() function in benefit of the default > > one. > > As the first cell after the phandle is for the period and only the > second if for flags, this is a poor argument. In that case aren't these bindings wrong (and associated xlate() functions)? google,cros-ec-pwm.yaml: [...] properties: compatible: const: google,cros-ec-pwm "#pwm-cells": description: The cell specifies the PWM index. const: 1 [...] cirrus,clps711x-pwm.txt: [...] - #pwm-cells: Should be 1. The cell specifies the index of the channel. [...] Note that pxa-pwm.txt behaves as you comment. Ultimately note that in of_pwm_simple_xlate() the second argument is used to assign the pwm period, the first one is passed as an index to pwm_request_from_chip(). > So yes, use #pwm-cells = <2> and drop the custom xlate() function please. I'll still go this way nontheless. Just want to make sure I understand things correctly. Regards, Nicolas
Attachment:
signature.asc
Description: This is a digitally signed message part