[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Atmel at76c50x WLAN-card randomly works in 2.6.15



Greetings!

I have a 3Com PCMCIA WLAN-card which identifies like this:

0 berge@varmeskapet:~> pccardctl ident
Socket 0:
  product info: "3Com", "3CRSHPW_96 Wireless LAN PC Card", "", ""
  manfid: 0x0101, 0x0696
  function: 6 (network)

This card works in Microsoft Windows XP on the very same laptop, and worked
like a charm with the previous Debian sid installation, but I can't remember
what kernel and firmware it ran.

Now the laptop has a brand new Debian sid, and the card shows weird and
seemingly random behavior. Upon inserting it (or booting the computer), dmesg
reports:

pccard: PCMCIA card inserted into slot 0
pcmcia: registering new device pcmcia0.0
eth1: Atmel at76c50x. Version 0.98. MAC 00:04:75:f6:95:5

When I take up the interface with ifconfig eth1 up, iwlist is able to scan
for available networks and iwconfig can bind to an ESSID and access point.
tcpdump can sniff broadcast-packets, NetBIOS-traffic and other DHCP-requests.
But I can't get DHCP, it simply times out. Even if I give the interface a
static IP-address, it's not able to communicate with anything.

Upon doing ifconfig eth1 up, the ipv6 module in the kernel says the
following:

ADDRCONF(NETDEV_UP): eth1: link is not ready

Without the ipv6 module, it says nothing. iwconfig reports 0 for Link
Quality and Signal Level.

The weird and random thing is the following: Suddenly, after what randomly
can be for example five, 15 or 60 minutes of uptime, the card suddenly starts
working. The kernel (with the ipv6 module loaded) reports:

ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready

And suddenly I get an IP address with DHCP and all is good. Another interesting
thing is that the LED on the card is off when the interface is up and on the
the interface is down. When the card starts working, this turns the other way
around.

In the package atmel-firmware, there is a small firmware loader utility
called atmel_fwl. I've tried loading different firmwares from /lib/firmware,
but none have made any difference to the behaviour.

More data on my system:

CardBus:
0000:02:04.0 CardBus bridge: Texas Instruments PCI1510 PC card Cardbus Controller
        Subsystem: Dell: Unknown device 0149
        Flags: bus master, medium devsel, latency 168, IRQ 11
        Memory at fa000000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
        Memory window 0: 30000000-31fff000 (prefetchable)
        Memory window 1: f8000000-f9fff000
        I/O window 0: 0000d000-0000d0ff
        I/O window 1: 0000d400-0000d4ff
        16-bit legacy interface ports at 0001

uname -a (from package linux-image-2.6.15-1-686 version 2.6.15-8):
Linux varmeskapet 2.6.15-1-686 #2 Mon Mar 6 15:27:08 UTC 2006 i686 GNU/Linux

The latest packages in sid installed:
libc6 version 2.3.6-3
atmel-firmware version 1.3-2, from non-free
pcmciautils version 012-5
udev version 0.086-1

No hotplug package.

Can anyone shed light on what might cause this behavior? I have no idea where
to file a bug report - the kernel? udev? atmel-firmware?

Cheers,
Berge

-- 
Berge Schwebs Bjørlo
   There's an infinite number of monkeys outside who want to talk to us about
   this new script for Hamlet that they've worked out.        --Douglas Adams



Reply to: