diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/p54/p54common.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/p54/p54pci.c | 9 | ||||
-rw-r--r-- | drivers/net/wireless/p54/p54usb.c | 23 |
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>"); | |||
28 | MODULE_DESCRIPTION("Prism54 PCI wireless driver"); | 28 | MODULE_DESCRIPTION("Prism54 PCI wireless driver"); |
29 | MODULE_LICENSE("GPL"); | 29 | MODULE_LICENSE("GPL"); |
30 | MODULE_ALIAS("prism54pci"); | 30 | MODULE_ALIAS("prism54pci"); |
31 | MODULE_FIRMWARE("isl3886pci"); | ||
31 | 32 | ||
32 | static struct pci_device_id p54p_table[] __devinitdata = { | 33 | static 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>"); | |||
28 | MODULE_DESCRIPTION("Prism54 USB wireless driver"); | 28 | MODULE_DESCRIPTION("Prism54 USB wireless driver"); |
29 | MODULE_LICENSE("GPL"); | 29 | MODULE_LICENSE("GPL"); |
30 | MODULE_ALIAS("prism54usb"); | 30 | MODULE_ALIAS("prism54usb"); |
31 | MODULE_FIRMWARE("isl3886usb"); | ||
32 | MODULE_FIRMWARE("isl3887usb"); | ||
31 | 33 | ||
32 | static struct usb_device_id p54u_table[] __devinitdata = { | 34 | static 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); |