FreeBSD.se
Lists | Search | News | Contact
Tuesday 9 February, 2010 @ 06:13 AM

List view - Thread view


Subject: PCMCIA networking failure going 5.4R-->6.1R

From: Vicknesan AYADURAI

Date: 2006-08-30 08:46:58


Hi all,

Have been wrestling a bizarre problem unsuccessfully for a week now 
and am hoping someone on this list might be able to help.

My home router is an old IBM Thinkpad 600 notebook, with two 3Com 
Megahertz 589E PCMCIA ethernet cards - 1 linking to the Internet, and 
1 to an in-home 192.168.0/24 LAN. I believe this to be reliable, 
battle-tested hardware, and everything, i.e., routing, NAT, DHCP, 
IPFW, etc., had been running smoothly for months on FreeBSD-5.4R

A week ago I did a fresh install of FreeBSD-6.1R and the problem with 
the network cards appeared. Both PCMCIA cards are detected as ep0 and 
ep1 upon bootup, and can be assigned their static IP addresses. 
However, the networking on one of them is _extremely_ slow.

Pinging a host at the 'other-end' of the ethernet link results in a 
cycle of 10 packet coming in simultaneously in a burst, a pause for 10 
seconds, followed by the next 10 packets simultaneously, a further 
pause of 10 seconds, etc., etc.

I've determined that the problem is slot-dependent, as either card in 
this slot exhibits this bursty/pause problem.

However, and this is the 'bizarre' bit, booting up with a FreeSBIE CD 
(running FreeBSD-5.3R) on the same hardware results in no problems 
with the networking - on _both_ PCMCIA slots.

Hence, the problem seems to be that a PCMCIA network card works with 
5.XR but not 6.1R.

One difference I have noticed between the two RELEASEs is the card on 
the 'dodgy' slot is detected as (from dmesg):

ep1:  at port 0x110-0x11f irq 9 function 0 config 
1 on pccard1

when booted up with 6.1R, but 'irq 10' (instead of 9) when booted up 
with 5.3R.

I'm now suspecting that perhaps the hardware for the good and bad 
scenarios may not be 100% identical as different IRQs are assigned 
with the different releases to the network card on the 'dodgy' slot. 
'vmstat -i' doesn't show any IRQ collisions, but I'm suspecting that 
perhaps there's some problem with the PC's IRQ 9 (?).

What I've been trying to do in the last 24-hrs is to get a different 
IRQ (i.e., not 9) assigned to the card in the 'dodgy' slot to test 
this hypothesis out, but haven't been able to figure out how PCMCIA 
IRQ-assignments are done in 6.1R. In the good old (pre-6.1R) days, IRQ 
assignments could be assigned at the start of /etc/pccard.conf, but 
pccard.conf doesn't seem to do much with 6.1R.

Has anyone observed this behaviour before? Does the diagnosis sound 
remotely plausible? If so, does anyone know how I can get a different 
IRQ assigned to a PCMCIA card in a specific slot?

Alternatively, any other ideas/tips/suggestions/words of comfort would 
be also greatly appreciated :-)

Regards,
vick
_______________________________________________
freebsd-<email removed> mailing list
http://lists.freebsd.org/mailman/listin … d-hardware
To unsubscribe, send any mail to "freebsd-hardware-<email removed>"

From: Vicknesan AYADURAI

Date: 2006-09-05 15:51:14


Hi all,

Am posting this 'solution' as a follow-up to my original question, 
which is now 'fixed'. After more Net-trawling, I found a similar 
problem described on the freebsd-acpi list, with a workaround:

http://lists.freebsd.org/pipermail/free … 02833.html

Seems like there's some magic involved with IBM ThinkPads and PCI IRQ 
assignments. Anyway, having the following lines:

>    hw.cbb.start_memory=0xd8000
>    hw.pci.link.LNKA.irq=11
>    hw.pci.link.LNKB.irq=11
>    hw.pci.link.LNKC.irq=11
>    hw.pci.link.LNKD.irq=11

in my 6.1R /boot/loader.conf enabled both my PCMCIA cards to get 
assigned IRQ 11, and work without any hitches.

Just a general FYI,
vick

On Wed, 30 Aug 2006, Vicknesan AYADURAI wrote:

> Hi all,
>
> Have been wrestling a bizarre problem unsuccessfully for a week now and am 
> hoping someone on this list might be able to help.
>
> My home router is an old IBM Thinkpad 600 notebook, with two 3Com Megahertz 
> 589E PCMCIA ethernet cards - 1 linking to the Internet, and 1 to an in-home 
> 192.168.0/24 LAN. I believe this to be reliable, battle-tested hardware, and 
> everything, i.e., routing, NAT, DHCP, IPFW, etc., had been running smoothly 
> for months on FreeBSD-5.4R
>
> A week ago I did a fresh install of FreeBSD-6.1R and the problem with the 
> network cards appeared. Both PCMCIA cards are detected as ep0 and ep1 upon 
> bootup, and can be assigned their static IP addresses. However, the 
> networking on one of them is _extremely_ slow.
>
> Pinging a host at the 'other-end' of the ethernet link results in a cycle of 
> 10 packet coming in simultaneously in a burst, a pause for 10 seconds, 
> followed by the next 10 packets simultaneously, a further pause of 10 
> seconds, etc., etc.
>
> I've determined that the problem is slot-dependent, as either card in this 
> slot exhibits this bursty/pause problem.
>
> However, and this is the 'bizarre' bit, booting up with a FreeSBIE CD 
> (running FreeBSD-5.3R) on the same hardware results in no problems with the 
> networking - on _both_ PCMCIA slots.
>
> Hence, the problem seems to be that a PCMCIA network card works with 5.XR but 
> not 6.1R.
>
> One difference I have noticed between the two RELEASEs is the card on the 
> 'dodgy' slot is detected as (from dmesg):
>
> ep1:  at port 0x110-0x11f irq 9 function 0 config 1 on 
> pccard1
>
> when booted up with 6.1R, but 'irq 10' (instead of 9) when booted up with 
> 5.3R.
>
> I'm now suspecting that perhaps the hardware for the good and bad scenarios 
> may not be 100% identical as different IRQs are assigned with the different 
> releases to the network card on the 'dodgy' slot. 'vmstat -i' doesn't show 
> any IRQ collisions, but I'm suspecting that perhaps there's some problem with 
> the PC's IRQ 9 (?).
>
> What I've been trying to do in the last 24-hrs is to get a different IRQ 
> (i.e., not 9) assigned to the card in the 'dodgy' slot to test this 
> hypothesis out, but haven't been able to figure out how PCMCIA 
> IRQ-assignments are done in 6.1R. In the good old (pre-6.1R) days, IRQ 
> assignments could be assigned at the start of /etc/pccard.conf, but 
> pccard.conf doesn't seem to do much with 6.1R.
>
> Has anyone observed this behaviour before? Does the diagnosis sound remotely 
> plausible? If so, does anyone know how I can get a different IRQ assigned to 
> a PCMCIA card in a specific slot?
>
> Alternatively, any other ideas/tips/suggestions/words of comfort would be 
> also greatly appreciated :-)
>
> Regards,
> vick
> _______________________________________________
> freebsd-<email removed> mailing list
> http://lists.freebsd.org/mailman/listin … d-hardware
> To unsubscribe, send any mail to \ 
"freebsd-hardware-<email removed>"
>
>
_______________________________________________
freebsd-<email removed> mailing list
http://lists.freebsd.org/mailman/listin … d-hardware
To unsubscribe, send any mail to "freebsd-hardware-<email removed>"


www.FreeBSD.se | www.NetBSD.se| Disclaimer
Co-location and bandwidth generously provided by Phonera