Thread (1 message) 1 message, 1 author, 2018-03-08

[linux-sunxi] Re: [PATCH 4/5] dt-bindings: pwm: sunxi: add new compatible strings

From: andre.przywara@arm.com (Andre Przywara)
Date: 2018-03-08 15:27:08
Also in: linux-devicetree, linux-pwm

Hi,

On 08/03/18 14:37, Rob Herring wrote:
On Thu, Mar 8, 2018 at 3:09 AM, Andre Przywara [off-list ref] wrote:
quoted
Hi,

On 08/03/18 02:08, Rob Herring wrote:
quoted
On Wed, Mar 07, 2018 at 02:07:18AM +0000, Andre Przywara wrote:
quoted
The PWM controllers found in the Allwinner A64, H5 and H6 SoCs are fully
compatible to the PWM controllers found in the A13 and H3.
If fully compatible, then shouldn't there be a fallback to one of the
existing compatible strings?
Yes, that was the idea. I was already wondering how we would
differentiate that from "real" compatible strings, but couldn't find
convincing examples. So should that read:

- compatible: should at least contain be one of:
    - "allwinner,sun4i-a10-pwm"
    - "allwinner,sun5i-a10s-pwm"
    - "allwinner,sun5i-a13-pwm"
    - "allwinner,sun7i-a20-pwm"
    - "allwinner,sun8i-h3-pwm"
  May in addition contain one of:
    - "allwinner,sun50i-a64-pwm"
    - "allwinner,sun50i-h5-pwm"
    - "allwinner,sun50i-h6-pwm"
I can't validate a dts is correct with it written like this. Just list
each valid combination on each line:

"allwinner,sun8i-h3-pwm", "allwinner,sun50i-h6-pwm"

(Assuming "allwinner,sun50i-h6-pwm" was the first implementation and
h3 has the same block).
Ah, OK, that's makes some sense. I didn't find too many examples outside
of root compatible nodes in the binding docs, but I will use that.
quoted
And this would possibly need to be amended once we need to actually use
one of those strings (to implement a quirk, for instance)?
The most specific compatible provides that. The driver matches on the
least specific one until you have a quirk to implement.
Yeah, I was just wondering how a (non-Linux) driver author would induce
what strings are actually needed just by reading the binding. But
enumerating the combinations explicitly should solve this.

Thanks!
Andre.
quoted
Or is there some other way of reserving those compatible strings, which
are not expected to be matched in drivers directly?
The binding should just list all that are appropriate from the start
and the driver is free to match on which ever string it wants.

Rob
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help