net: hns3: optimized MAC address in management table.
authorGuojia Liao <liaoguojia@huawei.com>
Sat, 19 Oct 2019 08:03:50 +0000 (16:03 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Oct 2019 16:22:09 +0000 (09:22 -0700)
mac_addr_hi32 and mac_addr_lo16 are used to store the MAC address
for management table. But using array of mac_addr[ETH_ALEN] would
be more general and not need to care about the big-endian mode of
the CPU.

Signed-off-by: Guojia Liao <liaoguojia@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c

index 3578832067ff0cf1601e7d06b0ddf147c21191dc..919911fe02ae4fa17f269642e9c966293f99f704 100644 (file)
@@ -5,6 +5,7 @@
 #define __HCLGE_CMD_H
 #include <linux/types.h>
 #include <linux/io.h>
+#include <linux/etherdevice.h>
 
 #define HCLGE_CMDQ_TX_TIMEOUT          30000
 
@@ -712,8 +713,7 @@ struct hclge_mac_mgr_tbl_entry_cmd {
        u8      flags;
        u8      resp_code;
        __le16  vlan_tag;
-       __le32  mac_addr_hi32;
-       __le16  mac_addr_lo16;
+       u8      mac_addr[ETH_ALEN];
        __le16  rsv1;
        __le16  ethter_type;
        __le16  egress_port;
index 2f0386dcb2f64c7bc8944ce76f04acc1b29f0172..ad8e1797eb0484034e0c8efe31c6bc1073b11775 100644 (file)
@@ -325,8 +325,7 @@ static const struct hclge_mac_mgr_tbl_entry_cmd hclge_mgr_table[] = {
        {
                .flags = HCLGE_MAC_MGR_MASK_VLAN_B,
                .ethter_type = cpu_to_le16(ETH_P_LLDP),
-               .mac_addr_hi32 = cpu_to_le32(htonl(0x0180C200)),
-               .mac_addr_lo16 = cpu_to_le16(htons(0x000E)),
+               .mac_addr = {0x01, 0x80, 0xc2, 0x00, 0x00, 0x0e},
                .i_port_bitmap = 0x1,
        },
 };