diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-07-11 04:46:50 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-11 04:46:50 -0400 |
commit | 0c81b2a1448bc6a2a9b2d6469fb0669fb4b25e5b (patch) | |
tree | 6f82579cae6d6e39fa9f837a3c349ded51e19d14 /arch/powerpc/kernel/legacy_serial.c | |
parent | 0729fbf3bc70870370b4f43d652f05a468dc68b8 (diff) | |
parent | 70ff05554f91a1edda1f11684da1dbde09e2feea (diff) |
Merge branch 'linus' into core/rcu
Conflicts:
include/linux/rculist.h
kernel/rcupreempt.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/powerpc/kernel/legacy_serial.c')
-rw-r--r-- | arch/powerpc/kernel/legacy_serial.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/legacy_serial.c b/arch/powerpc/kernel/legacy_serial.c index 61dd17449ddc..4d96e1db55ee 100644 --- a/arch/powerpc/kernel/legacy_serial.c +++ b/arch/powerpc/kernel/legacy_serial.c | |||
@@ -33,13 +33,14 @@ static struct legacy_serial_info { | |||
33 | phys_addr_t taddr; | 33 | phys_addr_t taddr; |
34 | } legacy_serial_infos[MAX_LEGACY_SERIAL_PORTS]; | 34 | } legacy_serial_infos[MAX_LEGACY_SERIAL_PORTS]; |
35 | 35 | ||
36 | static struct __initdata of_device_id parents[] = { | 36 | static struct __initdata of_device_id legacy_serial_parents[] = { |
37 | {.type = "soc",}, | 37 | {.type = "soc",}, |
38 | {.type = "tsi-bridge",}, | 38 | {.type = "tsi-bridge",}, |
39 | {.type = "opb", }, | 39 | {.type = "opb", }, |
40 | {.compatible = "ibm,opb",}, | 40 | {.compatible = "ibm,opb",}, |
41 | {.compatible = "simple-bus",}, | 41 | {.compatible = "simple-bus",}, |
42 | {.compatible = "wrs,epld-localbus",}, | 42 | {.compatible = "wrs,epld-localbus",}, |
43 | {}, | ||
43 | }; | 44 | }; |
44 | 45 | ||
45 | static unsigned int legacy_serial_count; | 46 | static unsigned int legacy_serial_count; |
@@ -136,6 +137,11 @@ static int __init add_legacy_soc_port(struct device_node *np, | |||
136 | if (of_get_property(np, "clock-frequency", NULL) == NULL) | 137 | if (of_get_property(np, "clock-frequency", NULL) == NULL) |
137 | return -1; | 138 | return -1; |
138 | 139 | ||
140 | /* if reg-shift or offset, don't try to use it */ | ||
141 | if ((of_get_property(np, "reg-shift", NULL) != NULL) || | ||
142 | (of_get_property(np, "reg-offset", NULL) != NULL)) | ||
143 | return -1; | ||
144 | |||
139 | /* if rtas uses this device, don't try to use it as well */ | 145 | /* if rtas uses this device, don't try to use it as well */ |
140 | if (of_get_property(np, "used-by-rtas", NULL) != NULL) | 146 | if (of_get_property(np, "used-by-rtas", NULL) != NULL) |
141 | return -1; | 147 | return -1; |
@@ -322,7 +328,7 @@ void __init find_legacy_serial_ports(void) | |||
322 | struct device_node *parent = of_get_parent(np); | 328 | struct device_node *parent = of_get_parent(np); |
323 | if (!parent) | 329 | if (!parent) |
324 | continue; | 330 | continue; |
325 | if (of_match_node(parents, parent) != NULL) { | 331 | if (of_match_node(legacy_serial_parents, parent) != NULL) { |
326 | index = add_legacy_soc_port(np, np); | 332 | index = add_legacy_soc_port(np, np); |
327 | if (index >= 0 && np == stdout) | 333 | if (index >= 0 && np == stdout) |
328 | legacy_serial_console = index; | 334 | legacy_serial_console = index; |