Linux on G5 Xserve?
Greg Johnson
gjohnson at lanl.gov
Thu May 20 10:22:07 EST 2004
On Wed, May 19, 2004 at 11:39:34PM +0200, Olaf Hering wrote:
> On Thu, May 13, Greg Johnson wrote:
>
> > DO-QUIESCE finishedreturning 0x0160000 from prom_init
> >
> >
> > Then nothing. This is all over the serial port as these machines don't
> > have video cards. Is it possible that the kernel is booting, but not
> > initializing the serial console? All the output I'm getting from the
> > kernel comes through the prom.
>
> look at arch/ppc64/kernel/setup.c:set_preferred_console()
> you must add the needed stuff for the pmac zilog console. Do you have a
> device-tree somewhere, of can you figure it out?
Hmm... I hadn't looked there. Passing console=ttyS0 seems to work, but
I guess it should default to that anyway. I think the following patch
should work, but it's not tested yet. I'm a little confused that
set_preferred_console() is #ifdef CONFIG_PSERIES. If it is being used
also for powermac, shouldn't it have '|| CONFIG_PMAC' or something? I
realize that the config options are set together, but still?
Greg
--- setup.c.orig 2004-05-09 20:32:29.000000000 -0600
+++ setup.c 2004-05-19 17:48:27.681889736 -0600
@@ -476,6 +476,7 @@
{
struct device_node *prom_stdout;
char *name;
+ char *type;
/* The user has requested a console so this is already set up. */
if (strstr(saved_command_line, "console="))
@@ -519,6 +520,13 @@
return add_preferred_console("hvc", 0, NULL);
}
+ type = (char *)get_property(prom_stdout, "device_type", NULL);
+ if (strcmp(type, "serial") == 0) {
+ /* XServe G5 escc serial */
+ if(strcmp(name, "ch-a") == 0) return add_preferred_console("ttyS", 0, NULL);
+ if(strcmp(name, "ch-b") == 0) return add_preferred_console("ttyS", 1, NULL);
+ }
+
return -ENODEV;
}
console_initcall(set_preferred_console);
@@ -547,7 +555,7 @@
int __init ppc_init(void)
{
/* clear the progress line */
- ppc_md.progress(" ", 0xffff);
+ if(ppc_md.progress) ppc_md.progress(" ", 0xffff);
if (ppc_md.init != NULL) {
ppc_md.init();
** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/
More information about the Linuxppc64-dev
mailing list