diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2006-05-19 16:46:28 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-05-24 16:08:56 +1000 |
commit | 0d177df15d12926dc2ef7c814f317f02de52ce17 (patch) | |
tree | da10171a931af0ff709016a8ce5111a3c39e83d2 /arch/powerpc/platforms/iseries/irq.c | |
parent | 66b3851a6947482987b4c05aa781a33696287648 (diff) | |
download | blackbird-op-linux-0d177df15d12926dc2ef7c814f317f02de52ce17.tar.gz blackbird-op-linux-0d177df15d12926dc2ef7c814f317f02de52ce17.zip |
[PATCH] powerpc: move iSeries PCI devices to the device tree
Move the probing of PCI devices to setup.c and put them all into the
flattened device tree. The later probing is now done by traversing the
device tree.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/iseries/irq.c')
-rw-r--r-- | arch/powerpc/platforms/iseries/irq.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/powerpc/platforms/iseries/irq.c b/arch/powerpc/platforms/iseries/irq.c index be3fbfc24e6c..62bbbcf5ded3 100644 --- a/arch/powerpc/platforms/iseries/irq.c +++ b/arch/powerpc/platforms/iseries/irq.c @@ -42,6 +42,7 @@ #include <asm/iseries/it_lp_queue.h> #include "irq.h" +#include "pci.h" #include "call_pci.h" #if defined(CONFIG_SMP) @@ -312,12 +313,12 @@ static hw_irq_controller iSeries_IRQ_handler = { * Note that sub_bus is always 0 (at the moment at least). */ int __init iSeries_allocate_IRQ(HvBusNumber bus, - HvSubBusNumber sub_bus, HvAgentId dev_id) + HvSubBusNumber sub_bus, u32 bsubbus) { int virtirq; unsigned int realirq; - u8 idsel = (dev_id >> 4); - u8 function = dev_id & 7; + u8 idsel = ISERIES_GET_DEVICE_FROM_SUBBUS(bsubbus); + u8 function = ISERIES_GET_FUNCTION_FROM_SUBBUS(bsubbus); realirq = (((((sub_bus << 8) + (bus - 1)) << 3) + (idsel - 1)) << 3) + function; |