> -----Original Message----- > From: [email protected] [mailto:[email protected]] On Behalf > Of Andrew Daugherity > > > > Hello > > I was wondering if there is anything I could do to help figure this > out. > > I do not have the requisite knowledge to even begin to understand why > the > > kernel does not configure the vga output when boot.conf redirects to > com0. > > Look for a "redirection after boot" setting in your BIOS and try > disabling that. The behavior you've described of both physical and > serial consoles working at the boot prompt _without_ 'set tty com0' > seems to indicate the BIOS is still handling redirection from > keyboard/video to serial, and my guess is that when OpenBSD > initializes the port for a serial console, it causes something in the > BIOS-linked local keyboard/vga to go wonky (wsdisplay at vga1 not > configured).
Thanks for suggestion. The BIOS does, in fact, redirect output to both the local console and a serial console at startup. This makes the BIOS configuration available on the serial console and the local monitor. After the BIOS screen, if "set tty com0" is _not_ included, then the boot dmesg is displayed on the local monitor, the serial goes silent, and at the end of openBSD boot, a login prompt is available on both serial console and local monitor. If "set tty com0" is _set_, then, after the BIOS page shows on both the serial console and local monitor, the boot dmesg scrolls on the serial console, and then login prompt is available on the serial console. The local monitor shows the openBSD boot "redirecting" message, and then nothing more. At the end of boot, there is _no_ login prompt on the local monitor. If I _disable_ the BIOS serial redirection feature, but keep "set tty com0" _set_, I see the following: - the local monitor shows: BIOS screen, openBSD start text ending with "redirecting to...", and that is all. No login prompt at the end of boot - the serial console shows: _no_ BIOS screen, then the openBSD boot and dmesg information, and ends with a login prompt The only change which, apparently, disables the configuration of ttyC0 during/after boot is setting "set tty com0" in boot.conf. However, the local monitor is alive, since it gets the BIOS information and the initial openBSD boot message, which suggests that the BIOS is correctly recognizing the monitor/output early in the boot, but then openBSD is unable to configure it later. Again, the only change that seems to make a difference is setting "set tty com0" or not. The console redirection option in the BIOS for the pre-boot/BIOS information does not affect this. > > Note that in UEFI mode, "wsdisplay at vga1 not configured" would be > expected, as efifb takes over: > ==== > $ dmesg|egrep 'wsdisplay|fb|vga|com[0-9]' > vga1 at pci7 dev 0 function 0 "Matrox MGA G200eR" rev 0x01 > wsdisplay at vga1 not configured > com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo > com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo > com1: console > efifb0 at mainbus0: 1280x1024, 32bpp > wsdisplay0 at efifb0 mux 1 > wsdisplay0: screen 0-5 added (std, vt100 emulation) > ==== > You might give UEFI mode a try, to see if efifb works better than the > vga console. Redirection after boot is probably the more important > setting though. > The system is installed on one full disk openBSD partition. I believe (not 100% sure) that changing to UEFI would require a small EFI partition (which would mean changing the fdisk partition and disklabel without destroying the software RAID), which is not a challenge I can take on right now. But, I will keep it in mind. > Note that the login prompt appearing on a console (spawning a getty as > configured in /etc/ttys) and the bootloader/kernel console device are > independent settings. > Yes, which is my confusion. Both the serial console (tty00) and the local terminal (ttyC0) are set in ttys: head -n 20 /etc/ttys # # $OpenBSD: ttys,v 1.2 2008/01/09 17:39:42 miod Exp $ # # name getty type status comments # console "/usr/libexec/getty std.9600" vt220 off secure ttyC0 "/usr/libexec/getty std.9600" vt220 on secure ttyC1 "/usr/libexec/getty std.9600" vt220 on secure ... ttyCb "/usr/libexec/getty std.9600" vt220 off secure tty00 "/usr/libexec/getty autologin" vt220 on secure tty01 "/usr/libexec/getty std.9600" unknown off (Note, the "autologin" type for getty is an addition in my gettytab which allows getty to spawn a login prompt that does not require the long, complex password to login when at the serial console.) > -Andrew Thanks Ted

