Re: [PATCH v3 1/8] dt-bindings: usb: ti,j721e-usb: drop useless compatible list

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 26, 2024 at 11:33:06AM +0100, Théo Lebrun wrote:
> Hello Conor,
> 
> On Fri Feb 23, 2024 at 7:12 PM CET, Conor Dooley wrote:
> > On Fri, Feb 23, 2024 at 05:05:25PM +0100, Théo Lebrun wrote:
> > > Compatible can be A or B, not A or B or A+B. Remove last option.
> > > A=ti,j721e-usb and B=ti,am64-usb.
> > > 
> > > Signed-off-by: Théo Lebrun <theo.lebrun@xxxxxxxxxxx>
> > > ---
> > >  Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml | 9 +++------
> > >  1 file changed, 3 insertions(+), 6 deletions(-)
> > > 
> > > diff --git a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > > index 95ff9791baea..949f45eb45c2 100644
> > > --- a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > > +++ b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > > @@ -11,12 +11,9 @@ maintainers:
> > >  
> > >  properties:
> > >    compatible:
> > > -    oneOf:
> > > -      - const: ti,j721e-usb
> > > -      - const: ti,am64-usb
> > > -      - items:
> > > -          - const: ti,j721e-usb
> > > -          - const: ti,am64-usb
> >
> > Correct, this makes no sense. The devices seem to be compatible though,
> > so I would expect this to actually be:
> > oneOf:
> >   - const: ti,j721e-usb
> >   - items:
> >       - const: ti,am64-usb
> >       - const: ti,j721e-usb
> 
> I need your help to grasp what that change is supposed to express? Would
> you mind turning it into english sentences?
> A=ti,j721e-usb and B=ti,am64-usb. My understanding of your proposal is
> that a device can either be compat with A or B. But B is compatible
> with A so you express it as a list of items. If B is compat with A then
> A is compat with B. Does the order of items matter?

The two devices are compatible with each other, based on an inspection of
the driver and the existing "A+B" setup. If this was a newly submitted
binding, "B" would not get approved because "A+B" allows support without
software changes and all that jazz.

Your patch says that allowing "A", "B" and "A+B" makes no sense and you
suggest removing "A+B". I am agreeing that it makes no sense to allow
all 3 of these situations.

What I also noticed is other problems with the binding. What should have
been "A+B" is actually documented as "B+A", but that doesn't make sense
when the originally supported device is "A".

Therefore my suggestion was to only allow "A" and "A+B", which is what
we would (hopefully) tell you to do were you submitting the am64 support
as a new patch today.

> I've not applied your proposal to check for dtbs_check but I'd guess it
> would throw warnings for the single existing upstream DTSI (as of
> v6.8-rc6) that uses "ti,am64-usb"? See:
> arch/arm64/boot/dts/ti/k3-am64-main.dtsi.

Yeah, it would but it's not as if that cannot be changed. There's no
concerns here about backwards compatibility here, right?

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux