[PATCH 24/32] pci: PCIe driver for Marvell Armada 370/XP systems
jgunthorpe at obsidianresearch.com
Tue Mar 12 18:08:54 EDT 2013
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:
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
> 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
More information about the linux-arm-kernel