Hi Linus, On Wed, Oct 14, 2020 at 2:43 PM Rob Herring <robh+dt@xxxxxxxxxx> wrote: > > On Tue, Oct 13, 2020 at 8:27 AM Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > > > > On Wed, Oct 7, 2020 at 9:58 PM Martin Blumenstingl > > <martin.blumenstingl@xxxxxxxxxxxxxx> wrote: > > > On Wed, Oct 7, 2020 at 11:19 AM Linus Walleij <linus.walleij@xxxxxxxxxx> wrote: > > > > On Sun, Oct 4, 2020 at 8:00 PM Martin Blumenstingl > > > > <martin.blumenstingl@xxxxxxxxxxxxxx> wrote: > > > > > > > > > +properties: > > > > > + compatible: > > > > > + enum: > > > > > + - pci1b6f,7023 > > > > > + - pci1b6f,7052 > > > > > > > > I think it is better to let the PCI driver for the whole hardware in > > > > drivers/usb/host/xhci-pci.c probe from the PCI configuration space > > > > numbers, and then add a gpio_chip to xhci-pci.c. > > > > > > to have everything consistent I will move the binding to > > > Documentation/devicetree/bindings/usb > > > > I do not understand why a PCI device would need a DT binding > > at all. They just probe from the magic number in the PCI > > config space, they spawn struct pci_dev PCI devices, not the > > type of platform devices coming out of the DT parser code. > > No DT compatible needed. > > Same reason for all the discoverable buses need bindings. There can be > parts that are not discoverable or connections with non-discoverable > nodes. There's also cases where the discoverable device has to be > powered, reset deasserted, clocks enabled, etc. first to be > discovered. > > If the GPIOs here had connections elsewhere in the DT, then we have to > describe the provider in DT. this is exactly what I need it for: that platform has hand-written .dts files and I need to wire up a GPIO LED Best regards, Martin