diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-07-28 17:32:00 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-07-28 17:32:00 -0400 |
| commit | 9e3ee1c39c0cc71222f9980ccbf87fe072897eef (patch) | |
| tree | 99462000e6f0d4f907cb2fc690f19d4d441ba0f3 /arch/powerpc/kernel/legacy_serial.c | |
| parent | e56b3bc7942982ac2589c942fb345e38bc7a341a (diff) | |
| parent | f934fb19ef34730263e6afc01e8ec27a8a71470f (diff) | |
Merge branch 'linus' into cpus4096
Conflicts:
kernel/stop_machine.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 | 44 |
1 files changed, 17 insertions, 27 deletions
diff --git a/arch/powerpc/kernel/legacy_serial.c b/arch/powerpc/kernel/legacy_serial.c index 4d96e1db55ee..9ddfaef1a184 100644 --- a/arch/powerpc/kernel/legacy_serial.c +++ b/arch/powerpc/kernel/legacy_serial.c | |||
| @@ -493,18 +493,18 @@ static int __init serial_dev_init(void) | |||
| 493 | device_initcall(serial_dev_init); | 493 | device_initcall(serial_dev_init); |
| 494 | 494 | ||
| 495 | 495 | ||
| 496 | #ifdef CONFIG_SERIAL_8250_CONSOLE | ||
| 496 | /* | 497 | /* |
| 497 | * This is called very early, as part of console_init() (typically just after | 498 | * This is called very early, as part of console_init() (typically just after |
| 498 | * time_init()). This function is respondible for trying to find a good | 499 | * time_init()). This function is respondible for trying to find a good |
| 499 | * default console on serial ports. It tries to match the open firmware | 500 | * default console on serial ports. It tries to match the open firmware |
| 500 | * default output with one of the available serial console drivers, either | 501 | * default output with one of the available serial console drivers that have |
| 501 | * one of the platform serial ports that have been probed earlier by | 502 | * been probed earlier by find_legacy_serial_ports() |
| 502 | * find_legacy_serial_ports() or some more platform specific ones. | ||
| 503 | */ | 503 | */ |
| 504 | static int __init check_legacy_serial_console(void) | 504 | static int __init check_legacy_serial_console(void) |
| 505 | { | 505 | { |
| 506 | struct device_node *prom_stdout = NULL; | 506 | struct device_node *prom_stdout = NULL; |
| 507 | int speed = 0, offset = 0; | 507 | int i, speed = 0, offset = 0; |
| 508 | const char *name; | 508 | const char *name; |
| 509 | const u32 *spd; | 509 | const u32 *spd; |
| 510 | 510 | ||
| @@ -548,31 +548,20 @@ static int __init check_legacy_serial_console(void) | |||
| 548 | if (spd) | 548 | if (spd) |
| 549 | speed = *spd; | 549 | speed = *spd; |
| 550 | 550 | ||
| 551 | if (0) | 551 | if (strcmp(name, "serial") != 0) |
| 552 | ; | 552 | goto not_found; |
| 553 | #ifdef CONFIG_SERIAL_8250_CONSOLE | 553 | |
| 554 | else if (strcmp(name, "serial") == 0) { | 554 | /* Look for it in probed array */ |
| 555 | int i; | 555 | for (i = 0; i < legacy_serial_count; i++) { |
| 556 | /* Look for it in probed array */ | 556 | if (prom_stdout != legacy_serial_infos[i].np) |
| 557 | for (i = 0; i < legacy_serial_count; i++) { | 557 | continue; |
| 558 | if (prom_stdout != legacy_serial_infos[i].np) | 558 | offset = i; |
| 559 | continue; | 559 | speed = legacy_serial_infos[i].speed; |
| 560 | offset = i; | 560 | break; |
| 561 | speed = legacy_serial_infos[i].speed; | ||
| 562 | break; | ||
| 563 | } | ||
| 564 | if (i >= legacy_serial_count) | ||
| 565 | goto not_found; | ||
| 566 | } | 561 | } |
| 567 | #endif /* CONFIG_SERIAL_8250_CONSOLE */ | 562 | if (i >= legacy_serial_count) |
| 568 | #ifdef CONFIG_SERIAL_PMACZILOG_CONSOLE | ||
| 569 | else if (strcmp(name, "ch-a") == 0) | ||
| 570 | offset = 0; | ||
| 571 | else if (strcmp(name, "ch-b") == 0) | ||
| 572 | offset = 1; | ||
| 573 | #endif /* CONFIG_SERIAL_PMACZILOG_CONSOLE */ | ||
| 574 | else | ||
| 575 | goto not_found; | 563 | goto not_found; |
| 564 | |||
| 576 | of_node_put(prom_stdout); | 565 | of_node_put(prom_stdout); |
| 577 | 566 | ||
| 578 | DBG("Found serial console at ttyS%d\n", offset); | 567 | DBG("Found serial console at ttyS%d\n", offset); |
| @@ -591,3 +580,4 @@ static int __init check_legacy_serial_console(void) | |||
| 591 | } | 580 | } |
| 592 | console_initcall(check_legacy_serial_console); | 581 | console_initcall(check_legacy_serial_console); |
| 593 | 582 | ||
| 583 | #endif /* CONFIG_SERIAL_8250_CONSOLE */ | ||
