提交 9a8675d7 编写于 作者: C Christian Lamparter 提交者: John W. Linville

p54: introduce new names for device firmwares

Johannes thought it would have been a good idea to change the firmware names.

Note: we still have fallbacks in case our users don't want to "break their running system",
but we won't advertise them with MODULE_FIRMWARE.
Signed-off-by: NChristian Lamparter <chunkeey@web.de>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 4ceb7b6a
...@@ -214,6 +214,11 @@ int p54_parse_firmware(struct ieee80211_hw *dev, const struct firmware *fw) ...@@ -214,6 +214,11 @@ int p54_parse_firmware(struct ieee80211_hw *dev, const struct firmware *fw)
printk(KERN_INFO "p54: FW rev %s - Softmac protocol %x.%x\n", printk(KERN_INFO "p54: FW rev %s - Softmac protocol %x.%x\n",
fw_version, priv->fw_var >> 8, priv->fw_var & 0xff); fw_version, priv->fw_var >> 8, priv->fw_var & 0xff);
if (priv->fw_var < 0x500)
printk(KERN_INFO "p54: you are using an obsolete firmware. "
"visit http://wireless.kernel.org/en/users/Drivers/p54 "
"and grab one for \"kernel >= 2.6.28\"!\n");
if (priv->fw_var >= 0x300) { if (priv->fw_var >= 0x300) {
/* Firmware supports QoS, use it! */ /* Firmware supports QoS, use it! */
priv->tx_stats[4].limit = 3; priv->tx_stats[4].limit = 3;
......
...@@ -28,6 +28,7 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>"); ...@@ -28,6 +28,7 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>");
MODULE_DESCRIPTION("Prism54 PCI wireless driver"); MODULE_DESCRIPTION("Prism54 PCI wireless driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_ALIAS("prism54pci"); MODULE_ALIAS("prism54pci");
MODULE_FIRMWARE("isl3886pci");
static struct pci_device_id p54p_table[] __devinitdata = { static struct pci_device_id p54p_table[] __devinitdata = {
/* Intersil PRISM Duette/Prism GT Wireless LAN adapter */ /* Intersil PRISM Duette/Prism GT Wireless LAN adapter */
...@@ -72,10 +73,12 @@ static int p54p_upload_firmware(struct ieee80211_hw *dev) ...@@ -72,10 +73,12 @@ static int p54p_upload_firmware(struct ieee80211_hw *dev)
P54P_WRITE(ctrl_stat, reg); P54P_WRITE(ctrl_stat, reg);
wmb(); wmb();
err = request_firmware(&fw_entry, "isl3886", &priv->pdev->dev); err = request_firmware(&fw_entry, "isl3886pci", &priv->pdev->dev);
if (err) { if (err) {
printk(KERN_ERR "%s (p54pci): cannot find firmware " printk(KERN_ERR "%s (p54pci): cannot find firmware "
"(isl3886)\n", pci_name(priv->pdev)); "(isl3886pci)\n", pci_name(priv->pdev));
err = request_firmware(&fw_entry, "isl3886", &priv->pdev->dev);
if (err)
return err; return err;
} }
......
...@@ -28,6 +28,8 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>"); ...@@ -28,6 +28,8 @@ MODULE_AUTHOR("Michael Wu <flamingice@sourmilk.net>");
MODULE_DESCRIPTION("Prism54 USB wireless driver"); MODULE_DESCRIPTION("Prism54 USB wireless driver");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_ALIAS("prism54usb"); MODULE_ALIAS("prism54usb");
MODULE_FIRMWARE("isl3886usb");
MODULE_FIRMWARE("isl3887usb");
static struct usb_device_id p54u_table[] __devinitdata = { static struct usb_device_id p54u_table[] __devinitdata = {
/* Version 1 devices (pci chip + net2280) */ /* Version 1 devices (pci chip + net2280) */
...@@ -415,9 +417,12 @@ static int p54u_upload_firmware_3887(struct ieee80211_hw *dev) ...@@ -415,9 +417,12 @@ static int p54u_upload_firmware_3887(struct ieee80211_hw *dev)
goto err_reset; goto err_reset;
} }
err = request_firmware(&fw_entry, "isl3887usb_bare", &priv->udev->dev); err = request_firmware(&fw_entry, "isl3887usb", &priv->udev->dev);
if (err) { if (err) {
printk(KERN_ERR "p54usb: cannot find firmware (isl3887usb_bare)!\n"); printk(KERN_ERR "p54usb: cannot find firmware (isl3887usb)\n");
err = request_firmware(&fw_entry, "isl3887usb_bare",
&priv->udev->dev);
if (err)
goto err_req_fw_failed; goto err_req_fw_failed;
} }
...@@ -553,12 +558,16 @@ static int p54u_upload_firmware_net2280(struct ieee80211_hw *dev) ...@@ -553,12 +558,16 @@ static int p54u_upload_firmware_net2280(struct ieee80211_hw *dev)
return -ENOMEM; return -ENOMEM;
} }
err = request_firmware(&fw_entry, "isl3890usb", &priv->udev->dev); err = request_firmware(&fw_entry, "isl3886usb", &priv->udev->dev);
if (err) {
printk(KERN_ERR "p54usb: cannot find firmware (isl3886usb)\n");
err = request_firmware(&fw_entry, "isl3890usb",
&priv->udev->dev);
if (err) { if (err) {
printk(KERN_ERR "p54usb: cannot find firmware (isl3890usb)!\n");
kfree(buf); kfree(buf);
return err; return err;
} }
}
err = p54_parse_firmware(dev, fw_entry); err = p54_parse_firmware(dev, fw_entry);
if (err) { if (err) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册