Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Feb 2003 11:20:09 -0600 (CST)
From:      "Douglas K. Rand" <rand@meridian-enviro.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   alpha/48676: Changing the baud rate of serial consoles for Alpha systems
Message-ID:  <200302251720.h1PHK99R060216@inman.meridian-enviro.com>

next in thread | raw e-mail | index | archive | help


>Number:         48676
>Category:       alpha
>Synopsis:       Changing the baud rate of serial consoles for Alpha systems
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-alpha
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 25 09:30:04 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Douglas K. Rand
>Release:        FreeBSD 4.7-RELEASE-p5 alpha
>Organization:
Meridian Environmental Technology, Inc.
>Environment:
System: FreeBSD inman.meridian-enviro.com 4.7-RELEASE-p5 FreeBSD 4.7-RELEASE-p5 #4: Sun Feb 23 12:03:19 CST 2003 rand@inman.meridian-enviro.com:/usr/obj/usr/src/sys/INMAN alpha

>Description:
	Changing the default speed of the serial console for Alpha systems
	does not follow the convention set by the i386 platform. Specifically,
	the BOOT_COMCONSOLE_SPEED directive in /etc/make.conf doesn't have
	any effect on Alpha systems.

	Changing the baud rate of the console in the SRM settings works up
	until the kernel starts booting. The boot loader (/boot/loader)
	follows the SRM settings for the serial port speed, but the kernel
	forces the serial port to CONSPEED, which defaults to 9600 (via
	TTYDEF_SPEED). The i386 "port" overrides CONSPEED with
	BOOT_COMCONSOLE_SPEED, but the alpha port doesn't.

	See line 110 of /usr/src/sys/alpha/alpha/dec_st6600.c for an example.
	Unfortunetly this is done in 10 seperate files:
	    api_up1000.c dec_1000a.c dec_2100_a50.c dec_2100_a500.c
	    dec_axppci_33.c dec_eb164.c dec_eb64plus.c dec_kn20aa.c
	    dec_kn300.c dec_st550.c dec_st6600.c


>How-To-Repeat:
	Set the console speed in the SRM to 57600, and boot FreeBSD.
	You'll get the /boot/loader conversation at 57600:
	
	    FreeBSD/alpha SRM disk boot, Revision 1.0
	    (rand@inman.meridian-enviro.com, Sat Feb 22 23:33:56 CST 2003)
	    Memory: 1048576 k
	    Loading /boot/defaults/loader.conf
	    /kernel data=0x288400+0x1ff5a syms=[0x8+0x35748+0x8+0x27c76]

	    Hit [Enter] to boot immediately, or any other key for command prompt.
	    Booting [kernel] in 9 seconds...

	    Type '?' for a list of commands, 'help' for more detailed help.
	    ok boot -s
	    Entering kernel at 0xfffffc0000327a20...

	But as soon as FreeBSD starts, the baud rate gets set back to 9600.
	The Copyright message is emmitted at 9600 baud:

	    Copyright (c) 1992-2002 The FreeBSD Project.


>Fix:

	One method would be to not have FreeBSD muck with the speed of the console
	when its a serial console. While I think this is the better solution, I'm
	afraid I don't know how to persuade FreeBSD to do that.  :(

	Another method would be to apply the same approach that the i386 "port"
	takes, and add something like this to the Makefile that compiles the
	machine dependant code in /usr/src/sys/alpha/alpha:

	    BOOT_COMCONSOLE_SPEED?=9600
	    CFLAGS+=        -DCONSPEED=${BOOT_COMCONSOLE_SPEED}

>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200302251720.h1PHK99R060216>