Serial port stops working after upgrade to 9-CURRENT
Jeremy Chadwick
freebsd at jdc.parodius.com
Fri Jan 20 15:28:13 UTC 2012
On Fri, Jan 20, 2012 at 04:49:58PM +0200, Sergey Listopad wrote:
> After system upgrade from 8.2-CURRENT to 9.0-CURRENT serial port
> (motherboard integrated) stops working.
>
> FreeBSD ferma.loc 9.0-STABLE FreeBSD 9.0-STABLE #2: Fri Jan 20
> 15:50:06 EET 2012 root at ferma.loc:/usr/obj/usr/src-8/sys/RT i386
>
> > dmesg | grep -E '^uart[0-9]'
> uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
> uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
>
> > grep uart /boot/device.hints
> hint.uart.0.at="isa"
> hint.uart.0.port="0x3F8"
> hint.uart.0.flags="0x10"
> hint.uart.0.irq="4"
> #hint.uart.1.at="isa"
> #hint.uart.1.port="0x2F8"
> #hint.uart.1.irq="3"
>
> > config -x /boot/kernel/kernel | egrep 'uart|sio'
> device uart_ns8250
> device uart
>
> Where can i search the problem?
CC'ing Marcel Moolenaar (author of uart(4)), who should be able to help.
You can start by explaining what "stops working" means, as well as
provide a verbose boot, your full kernel configuration file, and
contents of /boot/loader.conf.
Also, does this machine have ACPI support? I do not use 9.x, but uartX
on our RELENG_8 systems is tied to acpi0, not isa0. It's been this way
for quite some time (even our RELENG_7 boxes are this way).
Also, why are you modifying /boot/device.hints? You shouldn't be
touching that file (please don't :-) ); instead, to disable a serial
port such as uart1, you can simply add this to /boot/loader.conf:
hint.uart.1.disabled="1"
I realise this isn't well-documented. For example, uart(4) and sio(4)
talk about "/boot/device.hints", while things like ahci(4) talk about
how you can modify variables via loader(8), while cam(4) says you can
use either (how wonderfully consistent, eh?).
Both methods functionally work, yes, but /boot/device.hints is a file
that will get stomped on either installworld or installkernel or
mergemaster (I forget which). You can set hints in /boot/loader.conf
and leave /boot/device.hints alone entirely.
--
| Jeremy Chadwick jdc at parodius.com |
| Parodius Networking http://www.parodius.com/ |
| UNIX Systems Administrator Mountain View, CA, US |
| Making life hard for others since 1977. PGP 4BD6C0CB |
More information about the freebsd-stable
mailing list