Re: Belkin PCMCIA F5D6020v2 kernel 2.6 atmel/atmel_cs driver

Simon Kelley <simon-xn1N/tgparsycpQjotevgVpr/1R2p/[email protected]> Mon, 12 Jan 2004 11:44:42 +0000
Newsgroups gmane.linux.drivers.atmel-wlan
Message-ID <[email protected]>
Xavier Brouckaert wrote:
> Hi,
> 
> I've got a problem with the Belkin F5D6020v2 PCMCIA card under a 2.6
> kernel.  It worked fine under 2.4 using pcmf502re.  I use an up to date
> Debian Sid.
> 
> Here's what I did :
> 1) I compiled a 2.6.1 kernel with the atmel driver (atmel/atmel_cs)
> 
> 2) I modified /etc/pcmcia/atmel.conf to have atmel instead of pcmf502re
> :
> card "Belkin F5D6020"
>   version "Belkin", "11Mbps-Wireless-Notebook-Network-Adapter"
>   manfid 0x01bf, 0x3302
>   bind "atmel"
             ^ try changing this to "atmel_cs"
> #  bind "pcmf502re"
> 
> and I added :
> device "atmel"
              ^ and this also.
>   class "network" module "atmel_cs"
> 
> 3) I put the card in the slot, the leds become green but no interface is
> created.  I hear no pcmcia beep, but cardmgr is loaded.  I see this in
> /var/log/syslog :
> Jan 12 11:41:54 osiris cardmgr[291]: socket 0: Belkin F5D6020
> Jan 12 11:41:55 osiris cardmgr[291]: bind 'atmel' to socket 0 failed:
> Invalid argument
> 
> -> I don't know where the "invalid argument" comes from...
It's a currently unsolved mystery, but I suspect the two lines above
might be the answer....

> -> I don't know if I must load a firmware.  I have installed
> atmel-firmware 0.2 and the documentation says that the interface (eth1
> here) must exist previously to loading the firmware.
> 

If you have an up-to-date hotplug package install, the firmware will
load automatically: all you need are the .bin files in
/usr/lib/hotplug/firmware

> 4) $ sudo ifconfig eth1 up
> eth1: ERROR while getting interface flags: No such device

You need to get the PCMCIA config fixed first so that the driver is 
enabled: the firmware is not needed 'till much later in the process (and 
should load automatically)
> 
> -> I see no mention of atmel when I do /etc/init.d/hotplug status.
> However I see other USB devices (but my wireless card is PCMCIA).
> 
> -> I searched google.  Some other people did have the same problem but
> no answer was given :
> http://lists.infradead.org/pipermail/linux-pcmcia/2003-September/000266.html
> http://meganecco.org/rwiki/rw-cgi.rb?cmd=view&name=myn%3A%3A%B2%E1%B5%EE
> 
> -> Should I recompile atmelwlandriver-source and avoid the kernel module
> ?
Your choice, but once configured it seems to work pretty well.

> -> I didn't have to use a firmware loader in 2.4, so is it really
> necessary in 2.6 ?

Atmel provide the firmware without source: it would violate the GPL 
license of the rest of the kernel in include it in the kernel tree. I 
don't particularly like this, but to have the driver maintained as part 
of the kernel tree it has to have the firmware distributed like this. 
It's actually pretty easy: install the hotplug and atmel-firmware rpms 
or debs and things will Just Work.

> -> When I modprobe atmel and atmel_cs manually, it works, but I still
> don't have any interface eth1 created (nothing appears using iwconfig
> too) :-(

I think that cardmgr is managing to load the modules OK, but it's then 
looking for a driver called "atmel" but the modules provide one called 
"atmel_cs".

Let me know if this fixes things, it would make a lot of people happy if 
it did.

Cheers,

Simon.