mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 02:32:09 -04:00
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 <[email protected]> Cc: <[email protected]> # 3.10 Signed-off-by: Helge Deller <[email protected]>
This commit is contained in:
parent
5a0ce2dc21
commit
dd5e6d6a3d
4 changed files with 32 additions and 13 deletions
|
|
@ -31,9 +31,8 @@ static int __init serial_init_chip(struct parisc_device *dev)
|
|||
int err;
|
||||
|
||||
#ifdef CONFIG_64BIT
|
||||
extern int iosapic_serial_irq(int cellnum);
|
||||
if (!dev->irq && (dev->id.sversion == 0xad))
|
||||
dev->irq = iosapic_serial_irq(dev->mod_index-1);
|
||||
dev->irq = iosapic_serial_irq(dev);
|
||||
#endif
|
||||
|
||||
if (!dev->irq) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue