Subject: Re: [linux-usb-devel] [PATCH 1/2] USB: Rework OHCI PPC OF for new bindings

From: Valentine Barshak <[email-masked]>
Date: Thu, 25 Oct 2007 22:50:08 +0400

Matt Sealey wrote:
> Compatible property on /builtin@F0000000/usb@F0001000 is
> 
> ohci-bigendian
> ohci-be
> mpc5200-ohci
> mpc5200-usb
> 
> device_type is "usb", model is "mpc5200-ohci".
> 
> Although I worry about cluttering up the cleanup, it is probably just
> adding an "if property(big-endian) OR compatible(mpc5200-ohci)"
> to that small big-endian check there.
>

We should also keep "ohci-bigendian" and "ohci-be" in the match table.

> I am currently moving on the assumption that the "correct" device
> tree for the Efika (notwithstanding the above) would be
> 
> usb@F0001000 {
>     device-type = "usb-ohci"
>     compatible = "mpc5200-ohci,mpc5200-usb-ohci"

It should also have compatible "usb-ohci" entry as a more general one.
Others are for device-specific quirks:
compatible = "mpc5200-usb-ohci","usb-ohci"

>     big-endian
> }
> 
> Or some variation including all the relevant checked-for
> properties.
> 
> I don't like the old "ohci-bigendian" and "ohci-be" properties.
> Picking out "ohci-bigendian" and "ohci-be" was someone's drunken
> idea, I'm sure, so I am happy to let them die a horrible death
> and never rear up ever again.
:)
> 
> Using mpc5200-ohci out is by far the safest idea, although it
> leaves in a rather platform-specific fix, I prefer singling out that
> platform and potentially causing nasty looks towards the
> direction of Genesi/bplan, than having ohci-bigendian continue
> to exist for the sake of it :D

So, do you suggest to use "mpc5200-ohci" instead of "ohci-be" in the 
match table?

> 
> There is another solution; change the properties in the Linux
> device tree fixups, but I would loathe that solution as it adds
> yet another part of the kernel to track.
> 
> Unfortunately the current device tree is a complete, stupid mess,
> a result of a bunch of guys not looking at the problem, and I
> have said this before (rant mode :) - I think device_type,
> compatible should report the KIND of device it is, and the model
> property should be used to pick out the particular quirks of
> the chipset. We could have had a nice system where "usb" is paired
> with compatible "ohci", and model is "mpc5200". No dashes or
> spaces or 10 strings to compare..
> 
:)

Thanks,
Valentine.