com1 incorrectly associated with ttyd1, com2 with ttyd0

John Baldwin jhb at freebsd.org
Thu Nov 17 14:25:41 PST 2005


On Thursday 17 November 2005 05:03 pm, Joe Rhett wrote:
> We can't.  Serial A is a 9pin serial port, and Serial B is the rj45 console
> port.  This is how the motherboard is built. We need Serial B to be the
> console.
>
> /boot/device.hints clearly indicates that 3f8 should map to sio1.  Why
> isn't it using these hints?

What if you disable ACPI?  I think the ACPI bus doesn't use the port 
information to honor "wiring" requests but just reads the flags.

> On Thu, Nov 17, 2005 at 10:30:35AM -0500, John Baldwin wrote:
> > The boot process has an I/O port (3f8) hardcoded by default.  However,
> > the kernel enumerates devices based on what the BIOS tells us, and since
> > you have serial A setup as COM2 resources and serial B setup as COM1
> > resources, the BIOS will list serial A first, so sio0 will get serial A
> > and thus COM2.  Try fixing your BIOS to map serial A to COM1.
> >
> > On Thursday 17 November 2005 12:03 am, Joe Rhett wrote:
> > > This is funny.  This is true in both 5.4-RELEASE and 6.0-RELEASE
> > >
> > > 1. Plug serial connection into com1, configure as console
> > > 2. Edit /etc/ttys, enable ttyd0
> > > 3. set console=comconsole in /boot/loader.conf
> > > 4. Boot system (generic kernel) -- all output goes to com1
> > > 5. No login prompt...
> > >
> > > Edit /etc/ttys, enable ttyd1
> > > kill -HUP 1
> > > Login prompt
> > >
> > > devinfo -r  shows
> > >
> > >     sio0
> > >         Interrupt request lines:
> > >             0x3
> > >         I/O ports:
> > >             0x2f8-0x2ff
> > >     sio1
> > >         Interrupt request lines:
> > >             0x4
> > >         I/O ports:
> > >             0x3f8-0x3ff
> > >
> > >
> > > So... so COM1 is sio0/ttyd0 until the system finishes booting, at which
> > > time it swap with com2 and becomes sio1/ttyd1 ?
> > >
> > > NOTE: in the BIOS I've assigned 3f8/int4 to serial B, and 2f8/int3 to
> > > serial A.  But why would sio assignments be tied to the hardware order
> > > instead of the io assignments?  And better yet, why would they swap
> > > during the boot process?

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-hardware mailing list