Serial console only works after reboot?
M. Warner Losh
imp at bsdimp.com
Sun Jan 4 15:42:25 PST 2004
In message: <20040104150929.Y19715 at root.org>
Nate Lawson <nate at root.org> writes:
: On Sun, 4 Jan 2004, M. Warner Losh wrote:
: > In message: <20040103233044.N17367 at root.org>
: > Nate Lawson <nate at root.org> writes:
: > : On Sat, 3 Jan 2004, M. Warner Losh wrote:
: > : > In message: <20040103184934.V16815 at root.org>
: > : > Nate Lawson <nate at root.org> writes:
: > : > : I have a laptop (IBM T23) and use sio0 as my console/gdb port. One thing
: > : > : I noticed is if I power up the laptop and boot -h, I get garbage out the
: > : > : serial port. However, if I boot fully and then just warm reboot, the
: > : > : serial console works fine. I'm only using 9600 bps. Ideas?
: > : >
: > : > weird. Is the garbage data at some different rate?
: > :
: > : Nope, checked everything from 1200 up to 38400, different garbage but
: > : always garbage. This is with -current as of 2003/12/30, no patches.
: > Try 115200.
: That works. Now the question is "why". Note that I have no "options
: CONSPEED" so according to /sys/dev/sio/sioreg.h, it should default to 9600
: and indeed does, after a reboot. But not on a cold startup.
Somewhere along the way, it gets set to 115200. Maybe it is
initialized to 115200 by the boot blocks? I think once there's a
divisor programmed into the serial port, the kernel console code
doesn't change it. I could be wrong about this, however....
More information about the freebsd-current