aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/qlge/qlge_ethtool.c
diff options
context:
space:
mode:
authorRon Mercer <ron.mercer@qlogic.com>2009-06-09 05:39:29 +0000
committerDavid S. Miller <davem@davemloft.net>2009-06-10 01:04:08 -0700
commitcfec0cbc92cdcec5a540bf340c5a9fb8c89e5af1 (patch)
tree8ddab4c01ca308c04988d305a3bbd3ee158c7d64 /drivers/net/qlge/qlge_ethtool.c
parentnetfilter: Fix extra semi-colon in skb_walk_frags() changes. (diff)
downloadlinux-dev-cfec0cbc92cdcec5a540bf340c5a9fb8c89e5af1.tar.xz
linux-dev-cfec0cbc92cdcec5a540bf340c5a9fb8c89e5af1.zip
qlge: Add support for retrieving firmware version.
This is used by driver banner and ethtool info. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/qlge/qlge_ethtool.c')
-rw-r--r--drivers/net/qlge/qlge_ethtool.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/qlge/qlge_ethtool.c b/drivers/net/qlge/qlge_ethtool.c
index 913b2a5fafc9..ea0216361101 100644
--- a/drivers/net/qlge/qlge_ethtool.c
+++ b/drivers/net/qlge/qlge_ethtool.c
@@ -293,7 +293,10 @@ static void ql_get_drvinfo(struct net_device *ndev,
struct ql_adapter *qdev = netdev_priv(ndev);
strncpy(drvinfo->driver, qlge_driver_name, 32);
strncpy(drvinfo->version, qlge_driver_version, 32);
- strncpy(drvinfo->fw_version, "N/A", 32);
+ snprintf(drvinfo->fw_version, 32, "v%d.%d.%d",
+ (qdev->fw_rev_id & 0x00ff0000) >> 16,
+ (qdev->fw_rev_id & 0x0000ff00) >> 8,
+ (qdev->fw_rev_id & 0x000000ff));
strncpy(drvinfo->bus_info, pci_name(qdev->pdev), 32);
drvinfo->n_stats = 0;
drvinfo->testinfo_len = 0;