aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/benet/be_cmds.h
diff options
context:
space:
mode:
authorSathya Perla <sathyap@serverengines.com>2009-11-22 17:01:10 -0500
committerDavid S. Miller <davem@davemloft.net>2009-11-23 13:44:18 -0500
commite7b909a68cfb83e4bafdadac39534969ce260518 (patch)
treeab8e12fdcb4524598de8b8c867c27ada237e8b1d /drivers/net/benet/be_cmds.h
parent9d4fb27db90043cd2640e4bc778f9c755d3c17c1 (diff)
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.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/benet/be_cmds.h b/drivers/net/benet/be_cmds.h
index 6a430e4d1755..3b31abc01b5c 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 {
591 u16 rsvd0; 591 u16 rsvd0;
592} __packed; 592} __packed;
593 593
594/******************** Multicast MAC Config *******************/
595#define BE_MAX_MC 64 /* set mcast promisc if > 64 */
594struct macaddr { 596struct macaddr {
595 u8 byte[ETH_ALEN]; 597 u8 byte[ETH_ALEN];
596}; 598};
@@ -600,7 +602,7 @@ struct be_cmd_req_mcast_mac_config {
600 u16 num_mac; 602 u16 num_mac;
601 u8 promiscuous; 603 u8 promiscuous;
602 u8 interface_id; 604 u8 interface_id;
603 struct macaddr mac[32]; 605 struct macaddr mac[BE_MAX_MC];
604} __packed; 606} __packed;
605 607
606static inline struct be_hw_stats * 608static inline struct be_hw_stats *
@@ -829,7 +831,8 @@ extern int be_cmd_vlan_config(struct be_adapter *adapter, u32 if_id,
829extern int be_cmd_promiscuous_config(struct be_adapter *adapter, 831extern int be_cmd_promiscuous_config(struct be_adapter *adapter,
830 u8 port_num, bool en); 832 u8 port_num, bool en);
831extern int be_cmd_multicast_set(struct be_adapter *adapter, u32 if_id, 833extern int be_cmd_multicast_set(struct be_adapter *adapter, u32 if_id,
832 struct dev_mc_list *mc_list, u32 mc_count); 834 struct dev_mc_list *mc_list, u32 mc_count,
835 struct be_dma_mem *mem);
833extern int be_cmd_set_flow_control(struct be_adapter *adapter, 836extern int be_cmd_set_flow_control(struct be_adapter *adapter,
834 u32 tx_fc, u32 rx_fc); 837 u32 tx_fc, u32 rx_fc);
835extern int be_cmd_get_flow_control(struct be_adapter *adapter, 838extern int be_cmd_get_flow_control(struct be_adapter *adapter,