diff options
author | Paul Mackerras <paulus@samba.org> | 2005-11-08 22:48:08 +1100 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-11-08 22:48:08 +1100 |
commit | 3825ac0ee66b50cb0208ee74796fe65f3040e67c (patch) | |
tree | 589e3ee480fadacda1e8e43a4566fb2b8c64ab65 | |
parent | 7e9191daf643255c24893427f966795e4167ca2c (diff) | |
download | op-kernel-dev-3825ac0ee66b50cb0208ee74796fe65f3040e67c.zip op-kernel-dev-3825ac0ee66b50cb0208ee74796fe65f3040e67c.tar.gz |
powerpc: Fix crash in early boot on some powermacs
Some powermac machines were crashing in the quiesce firmware call
in prom_init.c because we have just closed the OF stdin device;
notably my 1999 G3 powerbook does this. To avoid this, don't
close the OF stdin device on powermacs.
Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r-- | arch/powerpc/kernel/prom_init.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index 6dc33d1..58f0917 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -2081,8 +2081,13 @@ unsigned long __init prom_init(unsigned long r3, unsigned long r4, prom_printf("copying OF device tree ...\n"); flatten_device_tree(); - /* in case stdin is USB and still active on IBM machines... */ - prom_close_stdin(); + /* + * in case stdin is USB and still active on IBM machines... + * Unfortunately quiesce crashes on some powermacs if we have + * closed stdin already (in particular the powerbook 101). + */ + if (RELOC(of_platform) != PLATFORM_POWERMAC) + prom_close_stdin(); /* * Call OF "quiesce" method to shut down pending DMA's from |