On Sunday, August 21, 2016 4:31:03 PM CEST Martin Blumenstingl wrote: > +pci { > + pcie@0 { > + reg = <0 0 0 0 0>; It's not clear what these two nodes refer to in the example. Is the top-level node the PCI host bridge, and the second node the first PCIe port? Maybe add the properties from a real system here to make this a little clearer. The unit address for the slot should be "00,0", not "0" here. > + #interrupt-cells = <1>; > + #size-cells = <2>; > + #address-cells = <3>; > + device_type = "pci"; > + I think this needs an empty "ranges" property to be a valid bridge node. > + ath9k@0,0 { According to the PCI binding, the name should be the same as the compatible string here, or match the class code in the table. > + compatible = "pci168c,0030"; > + reg = <0 0 0 0 0>; Are the device/fn numbers all zero on your system? This is a bit confusing, as it's not immediately clear what the reg properties refers to. Also, I think the length should reflect the actual length of the config space, either 0x100 or 0x1000. > + qca,disable-5ghz; > + }; > + }; > +}; Arnd