diff options
author | Wade Farnsworth <wfarnsworth@mvista.com> | 2007-06-19 20:15:10 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-07-10 07:53:49 -0400 |
commit | db0dbae9d9680bce69fe1ce775709e60c8ee9c29 (patch) | |
tree | 50327293d3b9620f25fe00e086bdb25b49c56cbf /arch/powerpc | |
parent | 6a281856c02d2291df2f7d9df5bfdee2e7bdd747 (diff) |
[POWERPC] Add a check for keyboard/mouse device nodes in check_legacy_ioport()
The device tree for the MPC8641 HPCN does not implement the device type
property for I8042 nodes.
In addition to checking the I8042 node's device type, also match the
keyboard and/or mouse nodes' compatible property.
Signed-off-by: Wade Farnsworth <wfarnsworth@mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/setup-common.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c index ed07a198f8d6..38c4b733a72e 100644 --- a/arch/powerpc/kernel/setup-common.c +++ b/arch/powerpc/kernel/setup-common.c | |||
@@ -486,6 +486,14 @@ int check_legacy_ioport(unsigned long base_port) | |||
486 | 486 | ||
487 | switch(base_port) { | 487 | switch(base_port) { |
488 | case I8042_DATA_REG: | 488 | case I8042_DATA_REG: |
489 | if (!(np = of_find_compatible_node(NULL, NULL, "pnpPNP,303"))) | ||
490 | np = of_find_compatible_node(NULL, NULL, "pnpPNP,f03"); | ||
491 | if (np) { | ||
492 | parent = of_get_parent(np); | ||
493 | of_node_put(np); | ||
494 | np = parent; | ||
495 | break; | ||
496 | } | ||
489 | np = of_find_node_by_type(NULL, "8042"); | 497 | np = of_find_node_by_type(NULL, "8042"); |
490 | break; | 498 | break; |
491 | case FDC_BASE: /* FDC1 */ | 499 | case FDC_BASE: /* FDC1 */ |