Subject: port-sparc/7409: SS2, PROM version 2.2 serial console problems
To: None <gnats-bugs@gnats.netbsd.org>
From: Brad Spencer <brad@anduin.eldar.org>
List: netbsd-bugs
Date: 04/17/1999 07:50:54
>Number:         7409
>Category:       port-sparc
>Synopsis:       SS2, PROM version 2.2 serial console problems
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    port-sparc-maintainer (NetBSD/sparc Portmaster)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Apr 17 07:50:01 1999
>Last-Modified:
>Originator:     Brad Spencer
>Organization:
	Sitting at home
>Release:        NetBSD-1.4_ALPHA supped around 4/14/1999
>Environment:
	
System: NetBSD valinor.eldar.org 1.4_ALPHA NetBSD 1.4_ALPHA (VALINOR) #2: Fri Apr 16 23:45:35 EDT 1999     root@valinor.eldar.org:/usr/src/sys/arch/sparc/compile/VALINOR sparc


>Description:

When updating my Sparc 2, which uses a serial console, with PROM
version 2.2 from NetBSD 1.3E to NetBSD 1.4_ALPHA, the new kernel would
not boot.  It complained with the following lines:

ok boot netbsd.new2 -s
Boot device: /sbus/esp@0,800000/sd@3,0   File and args: netbsd.new2 -s
>How-To-Repeat:

Boot a new kernel on a Sparc 2 with older PROMs.

>Fix:

Well...  I don't have a proper fix, however, the PROM does have a
couple of "variables" that are set to ttya.  If possible, falling back
to those might be a good thing.

[BTW - this particular machine appears to *not* fall back to the
serial console when the keyboard is removed.  When I fist installed
this machine, I had to borrow a 13W3<->HD-15 video adaptor so I could
set the eeprom to use ttya as the console input and output device]

>Audit-Trail:
>Unformatted:
>> NetBSD BOOT [$Revision: 1.4 $]
Booting netbsd.new2 @ 0x4000
1089536+107616+145328+[70008+82455]=0x170fa7
OBP version 2, revision 2.2 (plugin rev 2)
Warning: unparseable stdin-path property
Warning: unparseable stdout-path property
cninit: invalid inSource=0xffffffff
Type  'go' to resume
ok 

The messages are from /sys/arch/sparc/dev/zs.c.  In particular, the
function:

int
get_serial_promdev(io)
	int io;
{

.....

}

failed to figure out anything from the properties 'stdin-path' and
'stdout-path'.  Adding some more debugging would seem to indicate that
these properties do not exist or are set to nothing.

Wiring down the above function to return PROMDEV_TTYA allowed things
to proceed along.


Prior to updating my Sparc 2, I updated my IPX which is basically the
same in terms of OS and the like.  Except that it has PROM version
2.3.  There was not a single complaint.