diff options
author | Gabriel Paubert <paubert@iram.es> | 2011-05-12 21:03:13 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-05-19 03:32:27 -0400 |
commit | 2c78027a62ea38585da1ff944afdc6146335cb7c (patch) | |
tree | a19ce0e97975115db7893ef104fe01c65c5fb536 | |
parent | 03bf469add176afd8a1a4c493d9f4e0e520db12b (diff) |
powerpc: Fix for Pegasos keyboard and mouse
[See http://lists.ozlabs.org/pipermail/linuxppc-dev/2010-October/086424.html
and followups. Part of the commit message is directly copied from that.]
Commit 540c6c392f01887dcc96bef0a41e63e6c1334f01 tries to find i8042 IRQs in
the device-tree but doesn't fall back to the old hardcoded 1 and 12 in all
failure cases.
Specifically, the case where the device-tree contains nothing matching
pnpPNP,303 or pnpPNP,f03 doesn't seem to be handled well. It sort of falls
through to the old code, but leaves the IRQs set to 0.
Signed-off-by: Gabriel Paubert <paubert@iram.es>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/kernel/setup-common.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c index ef33a084fcf4..79fca2651b65 100644 --- a/arch/powerpc/kernel/setup-common.c +++ b/arch/powerpc/kernel/setup-common.c | |||
@@ -602,6 +602,10 @@ int check_legacy_ioport(unsigned long base_port) | |||
602 | * name instead */ | 602 | * name instead */ |
603 | if (!np) | 603 | if (!np) |
604 | np = of_find_node_by_name(NULL, "8042"); | 604 | np = of_find_node_by_name(NULL, "8042"); |
605 | if (np) { | ||
606 | of_i8042_kbd_irq = 1; | ||
607 | of_i8042_aux_irq = 12; | ||
608 | } | ||
605 | break; | 609 | break; |
606 | case FDC_BASE: /* FDC1 */ | 610 | case FDC_BASE: /* FDC1 */ |
607 | np = of_find_node_by_type(NULL, "fdc"); | 611 | np = of_find_node_by_type(NULL, "fdc"); |