From owner-freebsd-i386@FreeBSD.ORG Mon Jul 31 10:00:38 2006 Return-Path: X-Original-To: freebsd-i386@hub.freebsd.org Delivered-To: freebsd-i386@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 51F9616A4EB for ; Mon, 31 Jul 2006 10:00:38 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA03343D45 for ; Mon, 31 Jul 2006 10:00:37 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k6VA0bUW044789 for ; Mon, 31 Jul 2006 10:00:37 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k6VA0b4v044788; Mon, 31 Jul 2006 10:00:37 GMT (envelope-from gnats) Date: Mon, 31 Jul 2006 10:00:37 GMT Message-Id: <200607311000.k6VA0b4v044788@freefall.freebsd.org> To: freebsd-i386@FreeBSD.org From: Bruce Evans Cc: Subject: Re: i386/100831: sio ignores BIOS information about serial ports - bounty offered X-BeenThere: freebsd-i386@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Bruce Evans List-Id: I386-specific issues for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Jul 2006 10:00:38 -0000 The following reply was made to PR i386/100831; it has been noted by GNATS. From: Bruce Evans To: Jo Rhett Cc: freebsd-gnats-submit@FreeBSD.org, freebsd-i386@FreeBSD.org Subject: Re: i386/100831: sio ignores BIOS information about serial ports - bounty offered Date: Mon, 31 Jul 2006 19:55:42 +1000 (EST) On Tue, 25 Jul 2006, Jo Rhett wrote: >> Description: > For our motherboard, "Serial A" in hardwired on the board with a 9-pin connector. "Serial B" is a normal serial connector that can be wired anywhere. Rackable uses this connector to connect to their out-of-band management interface. > > So in the BIOS configuration, we assign COM1 = "Serial B" and COM2 = "Serial A". This works perfectly for the POST console redirection and FreeBSD boot process. > > /boot.config contains "-Dh" and /boot/loader.rc contains "console=comconsole" > > In the middle of the boot process, right after saying "Mounting ", com1 becomes com2 and vice versa. The console output suddenly starts going to Serial A -- which is connected to a modem. Not useful. > > During the shutdown process, console output reverts to the proper com1 assignment. I think you just need to swap the ports in /boot/device.hints? Consoles are mostly low-level, and console initialization is very low level. The initialization is supposed to run before ACPI, etc. have had a chance to change the resource values dynamically (so that ACPI, etc. can print messages and otherwise be debugged), so when sio console initialization uses the apparently-higher-level resource access functions it is actually just using the hints, so the hints had better be correct -- they are more than hints. I don't know exactly what happens with ACPI. Ideally, ACPI should set the resource values to match the BIOS, and this might involve ignoring most hints and this changing the values from their defaults, but for consoles any changes in the values would be wrong and might result in the high-level console (/dev/console) being attached to a different device than the low-level console (the one used for kernel printfs). Bruce