Re: [PATCH v3 1/1] USB: core: let USB device know device node

Arnd Bergmann
2016-01-20T09:07:13Z

On Wednesday 20 January 2016 11:48:39 Peter Chen wrote:
> >
> > > Alternatively, you could use one of the high bits of the 'reg' value
> > > to indicate which root hub is used. I'm sure that would work as
> > > well, but be less obvious.
> >
> > It's probably best to stick with the same numbering that the hardware
> > uses.
>
> Seems we are talking about root hub, not the device in the
> root hub. So for multiple ports controller, we have to own node for
> root hub. Assume your example, there is a genesys HUB at physical
> port 1, I suggest a dts node description like below, please correct
> me if anything wrong.
>
> &usb1 {
> roothub_1: nxp@1 {
> compatible = "usb15a2,007d";
> reg = <0x01>;
>
> hub: genesys@1 {
> compatible = "usb05e3,0608";
> reg = <0x01>;
> };
> };
>
> roothub_2: nxp@2 {
> compatible = "usb15a2,007d";
> reg = <0x02>;
> };
>
> ...
>
> roothub_7: nxp@7 {
> compatible = "usb15a2,007d";
> reg = <0x07>;
>
> hub: genesys@1 {
> compatible = "usb05e3,0608";
> reg = <0x01>;
> };
> };
>
> ...
>
> roothub_9: nxp@9 {
> compatible = "usb15a2,007d";
> reg = <0x09>;
> };
> };

This looks wrong to me: if I understand it right, you are now modeling
each port of the root hub as a separate hub, so you end up with
a total of 11 hub nodes when there should only be one or two.

Arnd