Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Jun 1998 15:42:30 -0400 (EDT)
From:      Dave Cole <dacole@netcom.ca>
To:        current@FreeBSD.ORG
Subject:   Re: sio problem
Message-ID:  <Pine.GSO.3.96.980620154037.20957Y-100000@tor-dev1.nbc.netcom.ca>
In-Reply-To: <199806191816.EAA31192@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help
This was it.  Thanks very much for your help.  

This system worked fine, though badly misconfigured (i can't disable
the onboard crap serial boards, nor even remap them) with the linux
2.0 kernels and freebsd from my may install.  Didn't expect that to
suddenly discontinue.  

On Sat, 20 Jun 1998, Bruce Evans wrote:

->example:  I type 'a', nothing shows.  I type 't', the a appears.  I
->type '<cr>', the t appears.  I type <cr> again, I get OK to appear.
-
-sio interrupts are apparently not working.
-
->I'm curious about the 'irc maps' stuff (as seen in the following dmesg
->dumps)
-
-They tell you whether sio interrupts worked normally at probe time.
-
->NONWORKING 486 (example 1):
->
->sio0: irq maps: 0x8009 0x8019 0x8009 0x8009
->sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
->sio0: type 16550A
->
->(ick.)
-
-Irq 4 worked normally here.  The 0x10 bit was originally off (no irq 4
-present), then it went on (irq 4 for ready-to-transmit-another-character),
-then it went off (driver examined status) and stayed off.  The 0x8 bit
-can't be relied on here, but if it is set it then the setting is probably
-due to initialization of irq 3 for sio1 and/or sio3.
-
->NONWORKING 486 (after turning off all but sio0 from visual config):
->
->sio0: configured irq 4 not in bitmap of probed irqs 0
->sio0: irq maps: 0x1 0x1 0x1 0x1
->sio0 at 0x3f8-0x3ff irq 4 flags 0x20010 on isa
->sio0: type ST16650A
->
->(identical ick.)
-
-Irq 4 didn't work at all here.  This would have caused a the probe to
-fail in previous versions.  The 0x8 bit is apparently clear because you
-disabled the other sio ports.  Sio ports with conflicting irqs should
-not be disabled, because an active irq on an unconfigured port might
-stop interrupts from working on a configured port.
-
->WORKING p100:
->
->sio0: irq maps: 0x1 0x11 0x1 0x1
->sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
->sio0: type 16550A
->
->(happy contented config, seemingly.  this entire email done over this 
->connection, through aliasing even.)
-
-Irq 4 worked normally here.
-
->NONWORKING 486 (example 1):
->...
->sio0: irq maps: 0x8009 0x8019 0x8009 0x8009
->sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
->sio0: type 16550A
->sio1: irq maps: 0x8001 0x8009 0x8001 0x8001
->sio1 at 0x2f8-0x2ff irq 3 on isa
->sio1: type 16450
->sio2: configured irq 5 not in bitmap of probed irqs 0x10
-       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-       This error would have caused the probe to fail before.
->sio2: irq maps: 0x8001 0x8011 0x8001 0x8001
-       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-       Sio2's irq is apparently 4, so it conflicts at the hardware level.
->sio2 at 0x3e8-0x3ef irq 5 on isa
-                     ^^^^^
-       Unfortunately, the configuration lies about the irq, so the conflict
-       is not detected by FreeBSD.
->sio2 not probed due to irq conflict with ed0 at 5
- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-       Fortunately, the irq conflicted with something else, and sio2 should
-       not have been attached, so sio0 should have worked.  The probe
-       message is silly - the previous messages were from sio2 being probed
-       :-).  sio2 just fails a conflict check after being probed.
->sio3: configured irq 9 not in bitmap of probed irqs 0x8000
->sio3: irq maps: 0x1 0x8001 0x1 0x1
->sio3 at 0x2e8-0x2ef irq 9 on isa
->sio3: type 16550A
-       Similarly for sio3, except there is no fortuitous conflict to
-       prevent it being attached.
-
-Apparently the conflicting irqs weren't conflicting enough to interfere
-at probe time (not that that would make any difference), but conflicted
-enough to cause problems later.
-
->NONWORKING 486 (after turning off all but sio0 from visual config):
->...
->sio0: configured irq 4 not in bitmap of probed irqs 0
->sio0: irq maps: 0x1 0x1 0x1 0x1
->sio0 at 0x3f8-0x3ff irq 4 flags 0x20010 on isa
->sio0: type ST16650A
-
-Apparently the unitialialized conflicting irq for sio2 interferes even
-at probe time.
-
->WORKING p100:
->...
->sio0: irq maps: 0x1 0x11 0x1 0x1
->sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
->sio0: type 16550A
->sio1: irq maps: 0x1 0x9 0x1 0x1
->sio1 at 0x2f8-0x2ff irq 3 on isa
->sio1: type 16550A
->sio2: disabled, not probed.
->sio3: disabled, not probed.
-
-Do you have sio2-3?  They could only conflict if the BIOS didn't initialize
-them properly, but it seems to be normal for BIOSes to not initialize them
-at all after a warm boot.
-
-Possible fix: configure the ports to what you have (all 4 there, with
-conflicting irqs).
-
-Bruce
-

----------------------------------------------------------------
Dave Cole (DC1110)                     |        dacole@netcom.ca
Systems Administrator                  |*       dacole@rik.net *
                                       |         office/~dacole/
Netcom Canada                          |* www.rik.net/~dacole/ *
905 King Street West, Toronto, M6K 3G9 |    phone - 416.341.5801
Toronto, Ontario, Canada, Earth, Sol   |      fax - 416.341.5725


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.3.96.980620154037.20957Y-100000>