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>
