diff options
author | Sathya Perla <sathyap@serverengines.com> | 2009-11-22 22:01:10 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-23 10:44:18 -0800 |
commit | e7b909a68cfb83e4bafdadac39534969ce260518 (patch) | |
tree | ab8e12fdcb4524598de8b8c867c27ada237e8b1d /drivers/net/benet/be_cmds.h | |
parent | 9d4fb27db90043cd2640e4bc778f9c755d3c17c1 (diff) | |
download | kernel_samsung_smdk4412-e7b909a68cfb83e4bafdadac39534969ce260518.zip kernel_samsung_smdk4412-e7b909a68cfb83e4bafdadac39534969ce260518.tar.gz kernel_samsung_smdk4412-e7b909a68cfb83e4bafdadac39534969ce260518.tar.bz2 |
be2net: support configuration of 64 multicast addresses instead of 32
To send upto 64 addresses in the multicast-set cmd, the non-embeeded cmd format
that provides for a bigger buffer is used instead of an embedded format.
Signed-off-by: Sathya Perla <sathyap@serverengines.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/benet/be_cmds.h')
-rw-r--r-- | drivers/net/benet/be_cmds.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/benet/be_cmds.h b/drivers/net/benet/be_cmds.h index 6a430e4..3b31abc 100644 --- a/drivers/net/benet/be_cmds.h +++ b/drivers/net/benet/be_cmds.h @@ -591,6 +591,8 @@ struct be_cmd_req_promiscuous_config { u16 rsvd0; } __packed; +/******************** Multicast MAC Config *******************/ +#define BE_MAX_MC 64 /* set mcast promisc if > 64 */ struct macaddr { u8 byte[ETH_ALEN]; }; @@ -600,7 +602,7 @@ struct be_cmd_req_mcast_mac_config { u16 num_mac; u8 promiscuous; u8 interface_id; - struct macaddr mac[32]; + struct macaddr mac[BE_MAX_MC]; } __packed; static inline struct be_hw_stats * @@ -829,7 +831,8 @@ extern int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id, extern int be_cmd_promiscuous_config(struct be_adapter *adapter, u8 port_num, bool en); extern int be_cmd_multicast_set(struct be_adapter *adapter, u32 if_id, - struct dev_mc_list *mc_list, u32 mc_count); + struct dev_mc_list *mc_list, u32 mc_count, + struct be_dma_mem *mem); extern int be_cmd_set_flow_control(struct be_adapter *adapter, u32 tx_fc, u32 rx_fc); extern int be_cmd_get_flow_control(struct be_adapter *adapter, |