This is one of those problem reports I hate sending and one that I
know everyone hates receiving. I have gone over and over my settings
and I'm certain that I haven't done anything stupid, so please bear
with me.
I recently upgraded a machine from an old 3.0-RELEASE to the 20000209
snapshot. It was previously running a Boca BB2016 multiport serial
card ("box" actually) correctly. Now the master port (16) on the card
works but none of the others seem to generate interrupts. I put a
printf at the beginning of siointr() and when I plug the modem into
the master port and talk to it with cu, it works fine and I get
messages from my printf signifying that siointr() was called with
((struct com_s *)arg)->unit = 17.
When I do the same with the other ports, siointr() is never called. I
get some characters back from the modem, but only when I press a key:
for instance I type "A" get nothing, type "T", get A, type "RET", get
T, type RET again and finally get \nOK\n. If I type ati10\n which
should give back a screenfull of stuff, I get about 16 characters
printed in cu and a silo overflow on the console.
Here is the relevant part of my kernel config, sorry for the length:
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
#device sio1 at isa? disable port IO_COM2 irq 3
device sio2 at isa? port 0x100 flags 0x01105
device sio3 at isa? port 0x108 flags 0x01105
#device sio4 at isa? port 0x110 flags 0x01105
device sio5 at isa? port 0x118 flags 0x01105
device sio6 at isa? port 0x120 flags 0x01105
device sio7 at isa? port 0x128 flags 0x01105
device sio8 at isa? port 0x130 flags 0x01105
device sio9 at isa? port 0x138 flags 0x01105
device sio10 at isa? port 0x140 flags 0x01105
device sio11 at isa? port 0x148 flags 0x01105
device sio12 at isa? port 0x150 flags 0x01105
device sio13 at isa? port 0x158 flags 0x01105
device sio14 at isa? port 0x160 flags 0x01105
device sio15 at isa? port 0x168 flags 0x01105
device sio16 at isa? port 0x170 flags 0x01105
device sio17 at isa? port 0x178 flags 0x01105 irq 3
Note I am using irq 3 for the Boca and sio1 is disabled. The
corresponding port ("com2") IS disabled on the motherboard. Also sio4
is disabled to get my 3c509 to detect properly. I know this is an odd
setup but I am convinced it is correct and it worked setup exactly
like this with the 3.0-RELEASE. I have the 3.0 disk still and I tried
it again this afternoon, just to be sure it is not a hardware problem,
and it still works fine.
Here's the bad news: The 3.0-RELEASE had an sio.c rev. 1.209 and the
current is 1.287. I have stared and stared at the diff and I don't
see any obvious problems.
Here is the relevant part of my -v dmesg (and the full one is attached
- it's too long to not compress)
sio0: irq maps: 0x41 0x51 0x41 0x41
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio2: irq maps: 0x41 0x41 0x41 0x41
sio2 at port 0x100-0x107 flags 0x1105 on isa0
sio2: type 16550A (multiport)
sio3: irq maps: 0x41 0x41 0x41 0x41
sio3 at port 0x108-0x10f flags 0x1105 on isa0
sio3: type 16550A (multiport)
sio5: irq maps: 0x41 0x41 0x41 0x41
sio5 at port 0x118-0x11f flags 0x1105 on isa0
sio5: type 16550A (multiport)
sio6: irq maps: 0x41 0x41 0x41 0x41
sio6 at port 0x120-0x127 flags 0x1105 on isa0
sio6: type 16550A (multiport)
sio7: irq maps: 0x41 0x41 0x41 0x41
sio7 at port 0x128-0x12f flags 0x1105 on isa0
sio7: type 16550A (multiport)
sio8: irq maps: 0x41 0x41 0x41 0x41
sio8 at port 0x130-0x137 flags 0x1105 on isa0
sio8: type 16550A (multiport)
sio9: irq maps: 0x41 0x41 0x41 0x41
sio9 at port 0x138-0x13f flags 0x1105 on isa0
sio9: type 16550A (multiport)
sio10: irq maps: 0x41 0x41 0x41 0x41
sio10 at port 0x140-0x147 flags 0x1105 on isa0
sio10: type 16550A (multiport)
sio11: irq maps: 0x41 0x41 0x41 0x41
sio11 at port 0x148-0x14f flags 0x1105 on isa0
sio11: type 16550A (multiport)
sio12: irq maps: 0x41 0x41 0x41 0x41
sio12 at port 0x150-0x157 flags 0x1105 on isa0
sio12: type 16550A (multiport)
sio13: irq maps: 0x41 0x41 0x41 0x41
sio13 at port 0x158-0x15f flags 0x1105 on isa0
sio13: type 16550A (multiport)
sio14: irq maps: 0x41 0x41 0x41 0x41
sio14 at port 0x160-0x167 flags 0x1105 on isa0
sio14: type 16550A (multiport)
sio15: irq maps: 0x41 0x41 0x41 0x41
sio15 at port 0x168-0x16f flags 0x1105 on isa0
sio15: type 16550A (multiport)
sio16: irq maps: 0x41 0x41 0x41 0x41
sio16 at port 0x170-0x177 flags 0x1105 on isa0
sio16: type 16550A (multiport)
sio17: irq maps: 0x41 0x49 0x41 0x41
sio17 at port 0x178-0x17f irq 3 flags 0x1105 on isa0
sio17: type 16550A (multiport master)
Thanks for any help,
Chris
dmesg.insight.gz