diff options
author | Thomas Bogendoerfer <tsbogend@alpha.franken.de> | 2013-07-30 02:02:16 +0200 |
---|---|---|
committer | Helge Deller <deller@gmx.de> | 2013-07-31 23:42:32 +0200 |
commit | dd5e6d6a3db09b16b7c222943977865eead88cc3 (patch) | |
tree | b026782954cdc18bf52c82940a4bb34a076d3cdc /arch/parisc/kernel/inventory.c | |
parent | parisc: Remove arch/parisc/kernel/sys32.h header (diff) | |
download | linux-dd5e6d6a3db09b16b7c222943977865eead88cc3.tar.xz linux-dd5e6d6a3db09b16b7c222943977865eead88cc3.zip |
parisc: Fix interrupt routing for C8000 serial ports
We can't use dev->mod_index for selecting the interrupt routing entry,
because it's not an index into interrupt routing table. It will be even
wrong on a machine with 2 CPUs (4 cores). But all needed information is
contained in the PAT entries for the serial ports. mod[0] contains the
iosapic address and mod_info has some indications for the interrupt
input (at least it looks like it). This patch implements the searching
for the right iosapic and uses this interrupt input information.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: <stable@vger.kernel.org> # 3.10
Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/kernel/inventory.c')
-rw-r--r-- | arch/parisc/kernel/inventory.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/parisc/kernel/inventory.c b/arch/parisc/kernel/inventory.c index 3295ef4a185d..f0b6722fc706 100644 --- a/arch/parisc/kernel/inventory.c +++ b/arch/parisc/kernel/inventory.c @@ -211,6 +211,7 @@ pat_query_module(ulong pcell_loc, ulong mod_index) /* REVISIT: who is the consumer of this? not sure yet... */ dev->mod_info = pa_pdc_cell->mod_info; /* pass to PAT_GET_ENTITY() */ dev->pmod_loc = pa_pdc_cell->mod_location; + dev->mod0 = pa_pdc_cell->mod[0]; register_parisc_device(dev); /* advertise device */ |