From owner-freebsd-alpha@FreeBSD.ORG Sat Feb 28 21:56:22 2004 Return-Path: Delivered-To: freebsd-alpha@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A98616A4CE; Sat, 28 Feb 2004 21:56:22 -0800 (PST) Received: from electra.cse.Buffalo.EDU (electra.cse.Buffalo.EDU [128.205.32.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id F0BD643D2D; Sat, 28 Feb 2004 21:56:21 -0800 (PST) (envelope-from kensmith@cse.Buffalo.EDU) Received: from electra.cse.Buffalo.EDU (kensmith@localhost [127.0.0.1]) i1T5uLTr018538; Sun, 29 Feb 2004 00:56:21 -0500 (EST) Received: (from kensmith@localhost) by electra.cse.Buffalo.EDU (8.12.10/8.12.9/Submit) id i1T5uL96018536; Sun, 29 Feb 2004 00:56:21 -0500 (EST) Date: Sun, 29 Feb 2004 00:56:20 -0500 From: Ken Smith To: freebsd-current@freebsd.org, freebsd-alpha@freebsd.org Message-ID: <20040229055620.GA18073@electra.cse.Buffalo.EDU> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i Subject: One more patch for Alpha console issues... X-BeenThere: freebsd-alpha@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the Alpha List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Feb 2004 05:56:22 -0000 I have been working with someone who has a DS10 and graphical console. The set of patches I had done so far slowly made it go farther before dying due to kernel stack issues but it was still not booting all the way. AFAIK everyone else who has been testing things had serial consoles. He reports this patch does fix his machine to the point it boots. I'll go ahead with this in a day or two if nobody has any further comments. I know at least Bruce seemed interested in this, saying that these moves shouldn't *really* be needed and that it would be nice to find out a bit more about what is really the root cause of the problems. This patch leaves the promcons initial console in place until the same point I had found the call to make_dev() needed to be moved. It then calls the system-specific console init routines that (may...) swap the console to be a different driver. This had not been needed on the machines with serial consoles but it apparently is for machines with graphical consoles. Any further thoughts? Thanks... Index: machdep.c =================================================================== RCS file: /home/ncvs/src/sys/alpha/alpha/machdep.c,v retrieving revision 1.217 diff -u -r1.217 machdep.c --- machdep.c 27 Feb 2004 19:30:46 -0000 1.217 +++ machdep.c 29 Feb 2004 01:40:59 -0000 @@ -585,22 +585,6 @@ } snprintf(cpu_model, sizeof(cpu_model), "%s", platform.model); - /* - * Initalize the real console, so the the bootstrap console is - * no longer necessary. - */ -#ifndef NO_SIO - if (platform.cons_init) { - platform.cons_init(); - promcndetach(); - } -#else - if (platform.cons_init) - platform.cons_init(); - promcndetach(); - cninit(); -#endif - /* NO MORE FIRMWARE ACCESS ALLOWED */ #ifdef _PMAP_MAY_USE_PROM_CONSOLE /* @@ -890,6 +874,22 @@ thread0.td_md.md_kernnest = 1; #endif } + + /* + * Initalize the real console, so the the bootstrap console is + * no longer necessary. + */ +#ifndef NO_SIO + if (platform.cons_init) { + platform.cons_init(); + promcndetach(); + } +#else + if (platform.cons_init) + platform.cons_init(); + promcndetach(); + cninit(); +#endif /* * Check to see if promcons needs to make_dev() now, -- Ken Smith - From there to here, from here to | kensmith@cse.buffalo.edu there, funny things are everywhere. | - Theodore Geisel |