Skip to content

Commit 9237137

Browse files
Yufeng Modavem330
authored andcommitted
net: hns3: modify firmware version display format
This patch modifies firmware version display format in hclge(vf)_cmd_init() and hns3_get_drvinfo(). Also, adds some optimizations for firmware version display format. Signed-off-by: Yufeng Mo <[email protected]> Signed-off-by: Peng Li <[email protected]> Signed-off-by: Huazhong Tan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent d659f9f commit 9237137

File tree

4 files changed

+40
-4
lines changed

4 files changed

+40
-4
lines changed

drivers/net/ethernet/hisilicon/hns3/hnae3.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,15 @@ struct hnae3_vector_info {
179179
#define HNAE3_RING_GL_RX 0
180180
#define HNAE3_RING_GL_TX 1
181181

182+
#define HNAE3_FW_VERSION_BYTE3_SHIFT 24
183+
#define HNAE3_FW_VERSION_BYTE3_MASK GENMASK(31, 24)
184+
#define HNAE3_FW_VERSION_BYTE2_SHIFT 16
185+
#define HNAE3_FW_VERSION_BYTE2_MASK GENMASK(23, 16)
186+
#define HNAE3_FW_VERSION_BYTE1_SHIFT 8
187+
#define HNAE3_FW_VERSION_BYTE1_MASK GENMASK(15, 8)
188+
#define HNAE3_FW_VERSION_BYTE0_SHIFT 0
189+
#define HNAE3_FW_VERSION_BYTE0_MASK GENMASK(7, 0)
190+
182191
struct hnae3_ring_chain_node {
183192
struct hnae3_ring_chain_node *next;
184193
u32 tqp_index;

drivers/net/ethernet/hisilicon/hns3/hns3_ethtool.c

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,7 @@ static void hns3_get_drvinfo(struct net_device *netdev,
527527
{
528528
struct hns3_nic_priv *priv = netdev_priv(netdev);
529529
struct hnae3_handle *h = priv->ae_handle;
530+
u32 fw_version;
530531

531532
if (!h->ae_algo->ops->get_fw_version) {
532533
netdev_err(netdev, "could not get fw version!\n");
@@ -545,8 +546,18 @@ static void hns3_get_drvinfo(struct net_device *netdev,
545546
sizeof(drvinfo->bus_info));
546547
drvinfo->bus_info[ETHTOOL_BUSINFO_LEN - 1] = '\0';
547548

548-
snprintf(drvinfo->fw_version, sizeof(drvinfo->fw_version), "0x%08x",
549-
priv->ae_handle->ae_algo->ops->get_fw_version(h));
549+
fw_version = priv->ae_handle->ae_algo->ops->get_fw_version(h);
550+
551+
snprintf(drvinfo->fw_version, sizeof(drvinfo->fw_version),
552+
"%lu.%lu.%lu.%lu",
553+
hnae3_get_field(fw_version, HNAE3_FW_VERSION_BYTE3_MASK,
554+
HNAE3_FW_VERSION_BYTE3_SHIFT),
555+
hnae3_get_field(fw_version, HNAE3_FW_VERSION_BYTE2_MASK,
556+
HNAE3_FW_VERSION_BYTE2_SHIFT),
557+
hnae3_get_field(fw_version, HNAE3_FW_VERSION_BYTE1_MASK,
558+
HNAE3_FW_VERSION_BYTE1_SHIFT),
559+
hnae3_get_field(fw_version, HNAE3_FW_VERSION_BYTE0_MASK,
560+
HNAE3_FW_VERSION_BYTE0_SHIFT));
550561
}
551562

552563
static u32 hns3_get_link(struct net_device *netdev)

drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,15 @@ int hclge_cmd_init(struct hclge_dev *hdev)
419419
}
420420
hdev->fw_version = version;
421421

422-
dev_info(&hdev->pdev->dev, "The firmware version is %08x\n", version);
422+
dev_info(&hdev->pdev->dev, "The firmware version is %lu.%lu.%lu.%lu\n",
423+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE3_MASK,
424+
HNAE3_FW_VERSION_BYTE3_SHIFT),
425+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE2_MASK,
426+
HNAE3_FW_VERSION_BYTE2_SHIFT),
427+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE1_MASK,
428+
HNAE3_FW_VERSION_BYTE1_SHIFT),
429+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE0_MASK,
430+
HNAE3_FW_VERSION_BYTE0_SHIFT));
423431

424432
return 0;
425433

drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,15 @@ int hclgevf_cmd_init(struct hclgevf_dev *hdev)
405405
}
406406
hdev->fw_version = version;
407407

408-
dev_info(&hdev->pdev->dev, "The firmware version is %08x\n", version);
408+
dev_info(&hdev->pdev->dev, "The firmware version is %lu.%lu.%lu.%lu\n",
409+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE3_MASK,
410+
HNAE3_FW_VERSION_BYTE3_SHIFT),
411+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE2_MASK,
412+
HNAE3_FW_VERSION_BYTE2_SHIFT),
413+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE1_MASK,
414+
HNAE3_FW_VERSION_BYTE1_SHIFT),
415+
hnae3_get_field(version, HNAE3_FW_VERSION_BYTE0_MASK,
416+
HNAE3_FW_VERSION_BYTE0_SHIFT));
409417

410418
return 0;
411419

0 commit comments

Comments
 (0)