# prsim54 and cannot load firmware

## mag

I recently purchased 2 intersil 802.11g cards - a SMC 2835W and a Netgear WG511, both supposed to be supported by the prism54 module. The problem I am having on my Toshiba laptop is that I can get the module to load, but the firmware load always fails.

From my syslog:

```

cardmgr[1845]: unsupported card in socket 1

cardmgr[1845]:   product info: "Intersil", "ISL3890", "-", "-"

cardmgr[1845]:   manfid: 0x000b, 0x3890  function: 254 ((null))

cardmgr[1845]:   PCI id: 0x1260, 0x3890

kernel: Loaded prism54 driver, version 1.2

kernel: eth2: prism54 driver detected card model: PRISM Duette/GT

kernel: eth2: islpci_open()

kernel: eth2: resetting device...

kernel: eth2: uploading firmware...

kernel: prism54: request_firmware() failed for 'isl3890'

kernel: eth2: could not upload firmware ('isl3890')

```

I have placed the firmware isl3890 in /usr/lib/hotplug/firmware as well as in /etc/hotplug and /etc/hotplug/firmware (as suggested in other posts), but it still makes no difference.

I have also noticed that sometimes the Laptop will lock up completely a few minutes after loading the prism54 module, with no errors in the logs or anything. I'm not sure if this happens with both cards, or just the SMC yet as it only happens some times.

More info:

I'm using a standard gentoo-sources-2.4.26-r9 kernel and I tried using both the prism54 module from the masked ebuild as well as the latest from the prism54.org website.

I have setup the kernel with the required configuration as per the prism54.org documentation (CONFIG_HOTPLUG=y, CONFIG_FW_LOADER=y).

I am also using pcmcia-cs-3.2.5-r1 and wireless-tools-26-r1  and hotplug-20040401 if it makes any difference.

hotplug responds that it has the firmware agent available:

```
rover root # hotplug

Usage: /etc/hotplug.d/default/default.hotplug AgentName [AgentArguments]

AgentName values on this system:  dasd firmware ieee1394 input net pci scsi tape usb

```

I am at a loss as to what to do next, besides returning these 2 cards. Does anyone have any help or suggestions.

Thx

----------

## TheCoop

the problem is caused by the new hotplug version. downgrade to 20040105 and it should be fixed (after etc-update)

----------

## TheCoop

correction, the location of the firmware changed and THEY DIDNT TELL US!!!!

just move the firmware file from /usr/lib/hotplug/firmware to /lib/firmware rather than downgrading

----------

## mag

So nice of them to move things round like that ...

Thanks for the tip, I'll give it a try.

Martin

----------

## mag

Still not working, even with the firmware location change.

I've now placed the firmware "isl3890" in /usr/lib/hotplug/firmware, /lib/firmware, /etc/hotplug/firmware and I still receive

```

kernel: Loaded prism54 driver, version 1.2 

kernel: eth2: prism54 driver detected card model: PRISM Duette/GT 

kernel: eth2: islpci_open() 

kernel: eth2: resetting device... 

kernel: eth2: uploading firmware... 

kernel: prism54: request_firmware() failed for 'isl3890' 

kernel: eth2: could not upload firmware ('isl3890')

```

Other things I have tried -

the latest prism54 cvs module from prism54.org

a stock clean 2.4.27 kernel

latest hotplug - hotplug-20040923

Even if I delete all isl3890 files, I still get the same error message, instead of not being able to find the file, which makes me think that there is some other issue at play here.

I'm going to try and downgrade hotplug and see if that helps.

Any other suggestions?

Martin

----------

## wegster

Had the same problem, and relocating the firmware cured the problem using the kernel driver in 2.6.9-rc2-love4 kernel.  (I did NOT need to emerge prism54, actually that bombs badly.

move (or copy) the firmware to /lib/firmware (create the directory first as root)

chmod the permissions to 755 or similar 

tail -f /var/log/messages

remove and re-instert the card...what do you see in messages?

----------

## mag

Thanks for the response, but I am still using the 2.4 kernel and don't want to upgrade to 2.6 on my laptop just yet...

Martin

----------

## Zviratko

look in /etc/hotplug/firmware.agent for a line like

FIRMWARE_DIR=/lib/firmware

and change it to whatever you want  :Smile:  you need to place fw in that directory

----------

## mag

Yup, it points to /lib/firmware, but that is the problem, the firmware is in that directory, as well as all the others. I have placed the firmware file "isl3890" in multiple locations...

/usr/lib/hotplug/firmware

/lib/firmware

/etc/hotplug/firmware

all to no avail. I've even tried changing permissions on the file.

----------

## mag

I have tried to upgrade to the 2.6 kernel, thinking this could be the solution, but I'm having problems there as well, although this time it is with PCMCIA not seeing any cards at all.

https://forums.gentoo.org/viewtopic.php?p=1623013

Anything else besides a new laptop   :Confused: 

----------

## contextswitch

I've got similar problems:

Laptop is Acer TravelMate 730TE and I've just purchased a netgear WG511 and can't, for the life of me, get the firmware to load.

I'm using 2.6.8-gentoo-r7 kernel, have compiled the prism54 driver and loaded it as a module and have followed the UberLord's instructions using baselayout-1.11.1.  The scripts seem to run ok but loading the firmware fails.  This seems to have something to do with hotplugging, I read somewhere (probably the prism54.org site) that if you run "hotplug" you should get a list of agents - I get nothing, not sure why and I'm looking into it (I have emerged hotplug and run it at boot).

What I don't understand is why the wireless network scripts require hotplug to load the firmware, surely this shoud be done when the device is detected.

Anyway, any suggestions would be welcome.

Cheers!

----------

## era3

Hi, after copying the firmware to /lib/firmware the network WiFi Card is working fine again.

Thanks.

----------

