diff options
Diffstat (limited to 'drivers/net/wireless/libertas/cmd.c')
-rw-r--r-- | drivers/net/wireless/libertas/cmd.c | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index 4d06dec6cd4..eab020338fd 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c | |||
@@ -60,13 +60,24 @@ int lbs_update_hw_spec(struct lbs_private *priv) | |||
60 | goto out; | 60 | goto out; |
61 | 61 | ||
62 | priv->fwcapinfo = le32_to_cpu(cmd.fwcapinfo); | 62 | priv->fwcapinfo = le32_to_cpu(cmd.fwcapinfo); |
63 | memcpy(priv->fwreleasenumber, cmd.fwreleasenumber, 4); | ||
64 | 63 | ||
65 | lbs_deb_cmd("GET_HW_SPEC: firmware release %u.%u.%up%u\n", | 64 | /* The firmware release is in an interesting format: the patch |
66 | priv->fwreleasenumber[2], priv->fwreleasenumber[1], | 65 | * level is in the most significant nibble ... so fix that: */ |
67 | priv->fwreleasenumber[0], priv->fwreleasenumber[3]); | 66 | priv->fwrelease = le32_to_cpu(cmd.fwrelease); |
68 | lbs_deb_cmd("GET_HW_SPEC: MAC addr %s\n", | 67 | priv->fwrelease = (priv->fwrelease << 8) | |
69 | print_mac(mac, cmd.permanentaddr)); | 68 | (priv->fwrelease >> 24 & 0xff); |
69 | |||
70 | /* Some firmware capabilities: | ||
71 | * CF card firmware 5.0.16p0: cap 0x00000303 | ||
72 | * USB dongle firmware 5.110.17p2: cap 0x00000303 | ||
73 | */ | ||
74 | printk("libertas: %s, fw %u.%u.%up%u, cap 0x%08x\n", | ||
75 | print_mac(mac, cmd.permanentaddr), | ||
76 | priv->fwrelease >> 24 & 0xff, | ||
77 | priv->fwrelease >> 16 & 0xff, | ||
78 | priv->fwrelease >> 8 & 0xff, | ||
79 | priv->fwrelease & 0xff, | ||
80 | priv->fwcapinfo); | ||
70 | lbs_deb_cmd("GET_HW_SPEC: hardware interface 0x%x, hardware spec 0x%04x\n", | 81 | lbs_deb_cmd("GET_HW_SPEC: hardware interface 0x%x, hardware spec 0x%04x\n", |
71 | cmd.hwifversion, cmd.version); | 82 | cmd.hwifversion, cmd.version); |
72 | 83 | ||