On Tue, Mar 12, 2013 at 10:30:06PM +0100, Thierry Reding wrote: > > Not going down the of_pci_* code paths for address translation at the > > root port bridge nodes is certainly not right. > > I'm not so sure. Why should the pcie-controller be a PCI device? The spec is clear on that point as well: device_type A Standard Package conforming to this specification and corresponding to a device that implements a PCI bus shall implement this property with the string value "pci" The children of a pcie-controller node are PCI devices, thus the pcie-controller node 'implements a PCI bus'. Or, as you say 'device on the processor/SoC/platform bus that bridges to the PCI bus' Think of device_type as also meaning bus_type and it makes more logical sense, the name is terrible, but its usage is governed by the OF docs.. > The other alternative would be to amend the specification. Besides the > fact that the specification says so I don't see any reason why this > shouldn't be allowed. 'the specification says so' *IS* the reason. DT isn't a free for all where you get to do whatever you want, or whatever 'feels' right. It is supposed to be a stable, OS agnostic ABI. That means bindings have to follow the specs (when available). Maybe a future revision will support PCI-E ECAM, but we don't know what that will look like, and I'm pretty sure you don't want to hold up your patches until an IEEE committee gets around to deciding something ;) Jason -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html