[PATCH v3 1/2] dt-bindings: pwm: Allow decimal format in addition to hex format

Rob Herring robh at kernel.org
Sun Nov 27 10:22:32 PST 2022


On Wed, Nov 23, 2022 at 08:58:54AM +0200, Tony Lindgren wrote:
> * Rob Herring <robh at kernel.org> [221123 02:31]:
> > On Tue, Nov 22, 2022 at 02:32:24PM +0200, Tony Lindgren wrote:
> > > Let's allow node numbering in decimal format too.
> > > 
> > > Simple human-readable increments/IDs are usually decimal, hex is only for
> > > addresses as noted by Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>.
> > > 
> > > Let's use an improved match suggested by Krzysztof Kozlowski
> > > <krzysztof.kozlowski at linaro.org> and improved a bit by Uwe Kleine-König
> > > <u.kleine-koenig at pengutronix.de>.
> > > 
> > > Cc: linux-pwm at vger.kernel.org
> > > Cc: Thierry Reding <thierry.reding at gmail.com>
> > > Suggested-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
> > > Suggested-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> > > Signed-off-by: Tony Lindgren <tony at atomide.com>
> > > ---
> > > 
> > > Changes since v2:
> > > 
> > > - Use pattern suggested by Krzysztof and Uwe
> > > 
> > > Changes since v1:
> > > 
> > > - New patch added to deal with pwm-omap-dmtimer binding
> > > 
> > > ---
> > >  Documentation/devicetree/bindings/pwm/pwm.yaml | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/pwm/pwm.yaml b/Documentation/devicetree/bindings/pwm/pwm.yaml
> > > --- a/Documentation/devicetree/bindings/pwm/pwm.yaml
> > > +++ b/Documentation/devicetree/bindings/pwm/pwm.yaml
> > > @@ -13,7 +13,7 @@ select: false
> > >  
> > >  properties:
> > >    $nodename:
> > > -    pattern: "^pwm(@.*|-[0-9a-f])*$"
> > > +    pattern: "^pwm(@.+|-[0-9a-f]+)?$"
> > 
> > So now pwm-10 could be either?
> 
> Yes.
> 
> > I'm fine with decimal, but can we do that everywhere we do this -N 
> > naming?
> 
> Do you mean the '[0-9a-f]' users that don't use '[0-9af]+'?

No, I mean for all cases of <nodename>-N, can be we consistent. Either 
we use hex or we use decimal.
 
> 
> These can be found with:
> 
> $ find Documentation/devicetree/bindings/ -name \*.yaml | \
> 	xargs grep pattern: | grep '\[0-9a-f\]' | grep -v '\[0-9a-f\]+'

Not quite. It's just cases of '-N':

$ find Documentation/devicetree/bindings/ -name \*.yaml |         xargs grep pattern: | grep '\-\[0-9a-f\]' | grep -v '\[0-9a-f\]+'
Documentation/devicetree/bindings/phy/intel,combo-phy.yaml:    pattern: "combophy(@.*|-[0-9a-f])*$"
Documentation/devicetree/bindings/pwm/pwm.yaml:    pattern: "^pwm(@.*|-[0-9a-f])*$"
Documentation/devicetree/bindings/timestamp/hardware-timestamps-common.yaml:    pattern: "^timestamp(@.*|-[0-9a-f])?$"
Documentation/devicetree/bindings/watchdog/watchdog.yaml:    pattern: "^watchdog(@.*|-[0-9a-f])?$"
Documentation/devicetree/bindings/spi/spi-controller.yaml:    pattern: "^spi(@.*|-[0-9a-f])*$"
Documentation/devicetree/bindings/rtc/rtc.yaml:    pattern: "^rtc(@.*|-[0-9a-f])*$"


And there's probably some more in dtschema.

> 
> Not sure if some of these need to intentionally limit the node numbering
> to 15.

No, I think it was all just cases of 15 should be enough for anyone.

> 
> If you have some other criteria in mind, let me know :)

If the numbering is hex, then it is as you have it. (Though we can't 
enforce that.

If it is decimal, then the regex should be ([0-9]|[1-9][0-9]+). 

Rob



More information about the linux-arm-kernel mailing list