• David Gibson's avatar
    powerpc: Fix PCI in Holly device tree · ad611045
    David Gibson authored
    The PCI bridge on the Holly board is incorrectly represented in the
    device tree.  The current device tree node for the PCI bridge sits
    under the tsi-bridge node.  That's not obviously wrong, but the PCI
    bridge translates some PCI spaces into CPU address ranges which were
    not translated by the "ranges" property in tsi-bridge node.
    
    We used to get away with this problem because the PCI bridge discovery
    code was also buggy, assuming incorrectly that PCI host bridge nodes
    were always directly under the root bus and treating the translated
    addresses as raw CPU addresses, rather than parent bus addresses.
    This has since been fixed, thus breaking Holly.
    
    This could be fixed by adding extra translations to the tsi-bridge
    node, but this patch instead moves the Holly PCI bridge out of the
    tsi-bridge node to the root bus.  This makes the tsi-bridge node
    represent only the built-in IO devices in the bridge, with a
    more-or-less contiguous address range.  This is the same convention
    used on Freescale SoC chips, where the "soc" node represents only the
    IMMR region, and the PCI and other bus bridges are separate nodes
    under the root bus.
    Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
    Acked-by: default avatarJosh Boyer <jwboyer@linux.vnet.ibm.com>
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    ad611045
holly.dts 4.83 KB