aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/p54/p54common.c5
-rw-r--r--drivers/net/wireless/p54/p54pci.c9
-rw-r--r--drivers/net/wireless/p54/p54usb.c23
3 files changed, 27 insertions, 10 deletions
diff --git a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c
index cf04c721a012..8e5e1abfe88e 100644
--- a/drivers/net/wireless/p54/p54common.c
+++ b/drivers/net/wireless/p54/p54common.c
@@ -214,6 +214,11 @@ int p54_parse_firmware(struct ieee80211_hw *dev, const struct firmware *fw)
214 printk(KERN_INFO "p54: FW rev %s - Softmac protocol %x.%x\n", 214 printk(KERN_INFO "p54: FW rev %s - Softmac protocol %x.%x\n",
215 fw_version, priv->fw_var >> 8, priv->fw_var & 0xff); 215 fw_version, priv->fw_var >> 8, priv->fw_var & 0xff);
216 216
217 if (priv->fw_var < 0x500)
218 printk(KERN_INFO "p54: you are using an obsolete firmware. "
219 "visit http://wireless.kernel.org/en/users/Drivers/p54 "
220 "and grab one for \"kernel >= 2.6.28\"!\n");
221
217 if (priv->fw_var >= 0x300) { 222 if (priv->fw_var >= 0x300) {
218 /* Firmware supports QoS, use it! */ 223 /* Firmware supports QoS, use it! */
219 priv->tx_stats[4].limit = 3; 224 priv->tx_stats[4].limit = 3;
diff --git a/drivers/net/wireless/p54/p54pci.c b/drivers/net/wireless/p54/p54pci.c
index 3c9d030ccb8d..c4a868ae6d6b 100644
--- a/drivers/net/wireless/p54/p54pci.c
+++ b/drivers/net/wireless/p54/p54pci.c
@@ -28,6 +28,7 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>");
28MODULE_DESCRIPTION("Prism54 PCI wireless driver"); 28MODULE_DESCRIPTION("Prism54 PCI wireless driver");
29MODULE_LICENSE("GPL"); 29MODULE_LICENSE("GPL");
30MODULE_ALIAS("prism54pci"); 30MODULE_ALIAS("prism54pci");
31MODULE_FIRMWARE("isl3886pci");
31 32
32static struct pci_device_id p54p_table[] __devinitdata = { 33static struct pci_device_id p54p_table[] __devinitdata = {
33 /* Intersil PRISM Duette/Prism GT Wireless LAN adapter */ 34 /* Intersil PRISM Duette/Prism GT Wireless LAN adapter */
@@ -72,11 +73,13 @@ static int p54p_upload_firmware(struct ieee80211_hw *dev)
72 P54P_WRITE(ctrl_stat, reg); 73 P54P_WRITE(ctrl_stat, reg);
73 wmb(); 74 wmb();
74 75
75 err = request_firmware(&fw_entry, "isl3886", &priv->pdev->dev); 76 err = request_firmware(&fw_entry, "isl3886pci", &priv->pdev->dev);
76 if (err) { 77 if (err) {
77 printk(KERN_ERR "%s (p54pci): cannot find firmware " 78 printk(KERN_ERR "%s (p54pci): cannot find firmware "
78 "(isl3886)\n", pci_name(priv->pdev)); 79 "(isl3886pci)\n", pci_name(priv->pdev));
79 return err; 80 err = request_firmware(&fw_entry, "isl3886", &priv->pdev->dev);
81 if (err)
82 return err;
80 } 83 }
81 84
82 err = p54_parse_firmware(dev, fw_entry); 85 err = p54_parse_firmware(dev, fw_entry);
diff --git a/drivers/net/wireless/p54/p54usb.c b/drivers/net/wireless/p54/p54usb.c
index 49739c36a449..21ba526a45bf 100644
--- a/drivers/net/wireless/p54/p54usb.c
+++ b/drivers/net/wireless/p54/p54usb.c
@@ -28,6 +28,8 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>");
28MODULE_DESCRIPTION("Prism54 USB wireless driver"); 28MODULE_DESCRIPTION("Prism54 USB wireless driver");
29MODULE_LICENSE("GPL"); 29MODULE_LICENSE("GPL");
30MODULE_ALIAS("prism54usb"); 30MODULE_ALIAS("prism54usb");
31MODULE_FIRMWARE("isl3886usb");
32MODULE_FIRMWARE("isl3887usb");
31 33
32static struct usb_device_id p54u_table[] __devinitdata = { 34static struct usb_device_id p54u_table[] __devinitdata = {
33 /* Version 1 devices (pci chip + net2280) */ 35 /* Version 1 devices (pci chip + net2280) */
@@ -415,10 +417,13 @@ static int p54u_upload_firmware_3887(struct ieee80211_hw *dev)
415 goto err_reset; 417 goto err_reset;
416 } 418 }
417 419
418 err = request_firmware(&fw_entry, "isl3887usb_bare", &priv->udev->dev); 420 err = request_firmware(&fw_entry, "isl3887usb", &priv->udev->dev);
419 if (err) { 421 if (err) {
420 printk(KERN_ERR "p54usb: cannot find firmware (isl3887usb_bare)!\n"); 422 printk(KERN_ERR "p54usb: cannot find firmware (isl3887usb)\n");
421 goto err_req_fw_failed; 423 err = request_firmware(&fw_entry, "isl3887usb_bare",
424 &priv->udev->dev);
425 if (err)
426 goto err_req_fw_failed;
422 } 427 }
423 428
424 err = p54_parse_firmware(dev, fw_entry); 429 err = p54_parse_firmware(dev, fw_entry);
@@ -553,11 +558,15 @@ static int p54u_upload_firmware_net2280(struct ieee80211_hw *dev)
553 return -ENOMEM; 558 return -ENOMEM;
554 } 559 }
555 560
556 err = request_firmware(&fw_entry, "isl3890usb", &priv->udev->dev); 561 err = request_firmware(&fw_entry, "isl3886usb", &priv->udev->dev);
557 if (err) { 562 if (err) {
558 printk(KERN_ERR "p54usb: cannot find firmware (isl3890usb)!\n"); 563 printk(KERN_ERR "p54usb: cannot find firmware (isl3886usb)\n");
559 kfree(buf); 564 err = request_firmware(&fw_entry, "isl3890usb",
560 return err; 565 &priv->udev->dev);
566 if (err) {
567 kfree(buf);
568 return err;
569 }
561 } 570 }
562 571
563 err = p54_parse_firmware(dev, fw_entry); 572 err = p54_parse_firmware(dev, fw_entry);