提交 885a72c1 编写于 作者: L liweihang 提交者: Xie XiuQi

net: hns3: use macros instead of magic numbers in get_regs functions

driver inclusion
category: bugfix
bugzilla: NA
CVE: NA

Number 2 in hclge_get_32_bit_regs() means length of fields that is
not data, such as opcode and flag in 32 bits. So as number 1 in
hclge_get_64_bit_regs(). This patch change these magic numbers into
macros to help understand their intentions.
Signed-off-by: Nliweihang <liweihang@huawei.com>
Reviewed-by: Nlipeng <lipeng321@huawei.com>
Reviewed-by: NXie XiuQi <xiexiuqi@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 3ee7211c
...@@ -8629,6 +8629,7 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8629,6 +8629,7 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num,
struct hclge_desc *desc; struct hclge_desc *desc;
u32 *reg_val = data; u32 *reg_val = data;
__le32 *desc_data; __le32 *desc_data;
int nodata_num;
int cmd_num; int cmd_num;
int i, k, n; int i, k, n;
int ret; int ret;
...@@ -8636,7 +8637,8 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8636,7 +8637,8 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num,
if (regs_num == 0) if (regs_num == 0)
return 0; return 0;
cmd_num = DIV_ROUND_UP(regs_num + HCLGE_32_BIT_DESC_NODATA_LEN, nodata_num = HCLGE_32_BIT_DESC_NODATA_LEN;
cmd_num = DIV_ROUND_UP(regs_num + nodata_num,
HCLGE_32_BIT_REG_RTN_DATANUM); HCLGE_32_BIT_REG_RTN_DATANUM);
desc = kcalloc(cmd_num, sizeof(struct hclge_desc), GFP_KERNEL); desc = kcalloc(cmd_num, sizeof(struct hclge_desc), GFP_KERNEL);
if (!desc) if (!desc)
...@@ -8654,8 +8656,7 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8654,8 +8656,7 @@ static int hclge_get_32_bit_regs(struct hclge_dev *hdev, u32 regs_num,
for (i = 0; i < cmd_num; i++) { for (i = 0; i < cmd_num; i++) {
if (i == 0) { if (i == 0) {
desc_data = (__le32 *)(&desc[i].data[0]); desc_data = (__le32 *)(&desc[i].data[0]);
n = HCLGE_32_BIT_REG_RTN_DATANUM - n = HCLGE_32_BIT_REG_RTN_DATANUM - nodata_num;
HCLGE_32_BIT_DESC_NODATA_LEN;
} else { } else {
desc_data = (__le32 *)(&desc[i]); desc_data = (__le32 *)(&desc[i]);
n = HCLGE_32_BIT_REG_RTN_DATANUM; n = HCLGE_32_BIT_REG_RTN_DATANUM;
...@@ -8682,6 +8683,7 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8682,6 +8683,7 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num,
struct hclge_desc *desc; struct hclge_desc *desc;
u64 *reg_val = data; u64 *reg_val = data;
__le64 *desc_data; __le64 *desc_data;
int nodata_len;
int cmd_num; int cmd_num;
int i, k, n; int i, k, n;
int ret; int ret;
...@@ -8689,7 +8691,8 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8689,7 +8691,8 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num,
if (regs_num == 0) if (regs_num == 0)
return 0; return 0;
cmd_num = DIV_ROUND_UP(regs_num + HCLGE_64_BIT_DESC_NODATA_LEN, nodata_len = HCLGE_64_BIT_DESC_NODATA_LEN;
cmd_num = DIV_ROUND_UP(regs_num + nodata_len,
HCLGE_64_BIT_REG_RTN_DATANUM); HCLGE_64_BIT_REG_RTN_DATANUM);
desc = kcalloc(cmd_num, sizeof(struct hclge_desc), GFP_KERNEL); desc = kcalloc(cmd_num, sizeof(struct hclge_desc), GFP_KERNEL);
if (!desc) if (!desc)
...@@ -8707,8 +8710,7 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num, ...@@ -8707,8 +8710,7 @@ static int hclge_get_64_bit_regs(struct hclge_dev *hdev, u32 regs_num,
for (i = 0; i < cmd_num; i++) { for (i = 0; i < cmd_num; i++) {
if (i == 0) { if (i == 0) {
desc_data = (__le64 *)(&desc[i].data[0]); desc_data = (__le64 *)(&desc[i].data[0]);
n = HCLGE_64_BIT_REG_RTN_DATANUM - n = HCLGE_64_BIT_REG_RTN_DATANUM - nodata_len;
HCLGE_64_BIT_DESC_NODATA_LEN;
} else { } else {
desc_data = (__le64 *)(&desc[i]); desc_data = (__le64 *)(&desc[i]);
n = HCLGE_64_BIT_REG_RTN_DATANUM; n = HCLGE_64_BIT_REG_RTN_DATANUM;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册