summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWade Farnsworth <wfarnsworth@mvista.com>2007-06-20 02:15:10 +0200
committerPaul Mackerras <paulus@samba.org>2007-07-10 13:53:49 +0200
commitdb0dbae9d9680bce69fe1ce775709e60c8ee9c29 (patch)
tree50327293d3b9620f25fe00e086bdb25b49c56cbf
parent[POWERPC] Add a warning to help trackdown device_node refcounting bugs (diff)
downloadlinux-db0dbae9d9680bce69fe1ce775709e60c8ee9c29.tar.xz
linux-db0dbae9d9680bce69fe1ce775709e60c8ee9c29.zip
[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>
-rw-r--r--arch/powerpc/kernel/setup-common.c8
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)
switch(base_port) {
case I8042_DATA_REG:
+ if (!(np = of_find_compatible_node(NULL, NULL, "pnpPNP,303")))
+ np = of_find_compatible_node(NULL, NULL, "pnpPNP,f03");
+ if (np) {
+ parent = of_get_parent(np);
+ of_node_put(np);
+ np = parent;
+ break;
+ }
np = of_find_node_by_type(NULL, "8042");
break;
case FDC_BASE: /* FDC1 */