Subject: port-alpha/12327: TCWSCONS kernel does not recognize sfb console on DEC 3000/800
To: None <gnats-bugs@gnats.netbsd.org>
From: None <perseant@hitl.washington.edu>
List: netbsd-bugs
Date: 03/04/2001 01:08:19
>Number:         12327
>Category:       port-alpha
>Synopsis:       DEC 3000/800 with TCWSCONS kernel does not take sfb as console
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    port-alpha-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Mar 04 01:09:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        20010303, and 1.5
>Organization:
------------------------------------------------------------------------
Konrad Schroder          http://www.hitl.washington.edu/people/perseant/
Information Tech & Services   Box 352142 -or- 215 Fluke Hall, Mason Road
Human Interface Technology Lab                  University of Washington
Voice: 206.616.1478   FAX: 206.543.5380          Seattle, WA, 98195, USA
>Environment:
	
System: NetBSD lager 1.5.1_ALPHA NetBSD 1.5.1_ALPHA (TCWSCONS) #7: Sun Mar 4 00:35:27 PST 2001 root@lager:/usr/src/sys/arch/alpha/compile/TCWSCONS alpha


>Description:
	The DEC 3000/800 (at least the one I have access to) does not actually
	have on-board graphics, but it does have all six TC slots.  This
	causes the PMAGB-B not to be recognized at console selection time,
	though it is recognized after the system has switched over to serial
	console.
>How-To-Repeat:
	Boot a 3000/800 with TCWSCONS kernel.
>Fix:

	The following seems to do the trick for me:

Index: tc_3000_500.c
===================================================================
RCS file: /cvsroot/syssrc/sys/arch/alpha/tc/tc_3000_500.c,v
retrieving revision 1.23
diff -u -r1.23 tc_3000_500.c
--- tc_3000_500.c	2000/06/05 21:47:31	1.23
+++ tc_3000_500.c	2001/03/04 08:46:24
@@ -312,13 +312,13 @@
 			return ENXIO;
 #endif
 		}
-	} else {
+	} else if ((hwrpb->rpb_variation & SV_ST_MASK) != SV_ST_FLAMINGOPLUS) {
 		/*
 		 * Slots 0-2 in the tc_3000_500_slots array are only
-		 * on the 500 models that also have the CXTurbo
-		 * (500/800/900) and a total of 6 TC slots.  For the
-		 * 400/600/700, slots 0-2 are in table locations 3-5, so
-		 * offset the CTB slot by 3 to get the address in our table.
+		 * on the 500 models that have and a total of 6 TC slots.
+		 * (500/800/900).  For the 400/600/700, slots 0-2 are in
+		 * table locations 3-5, so offset the CTB slot by 3 to get
+		 * the address in our table.
 		 */
 		output_slot += 3;
 	}
>Release-Note:
>Audit-Trail:
>Unformatted: