aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/igb/e1000_82575.c
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2009-10-05 02:33:08 -0400
committerDavid S. Miller <davem@davemloft.net>2009-10-06 17:59:19 -0400
commit68d480c4defb69d834e75fd0be9069a8447afe36 (patch)
tree39c82b303e5bb71904d48a146e27308f578dba43 /drivers/net/igb/e1000_82575.c
parent26ad91783c489486d3fd1a6932e5bdab9d404a38 (diff)
igb: make use of the uta to allow for promiscous mode filter
In order to support functions such as vlan tag stripping when SR-IOV is enabled any given packet must match at least one filter. However in the case of promiscous mode being enabled on the PF the traffic routed to it may not match any filters and is just sent to the PF by default. In order to make certain that this traffic is processed we can set all bits in the UTA registers to create a pseudo promiscous mode filter that accepts all packets. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/igb/e1000_82575.c')
-rw-r--r--drivers/net/igb/e1000_82575.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/igb/e1000_82575.c b/drivers/net/igb/e1000_82575.c
index 78971815bbce..b8a88a8b393f 100644
--- a/drivers/net/igb/e1000_82575.c
+++ b/drivers/net/igb/e1000_82575.c
@@ -875,6 +875,11 @@ static s32 igb_init_hw_82575(struct e1000_hw *hw)
875 for (i = 0; i < mac->mta_reg_count; i++) 875 for (i = 0; i < mac->mta_reg_count; i++)
876 array_wr32(E1000_MTA, i, 0); 876 array_wr32(E1000_MTA, i, 0);
877 877
878 /* Zero out the Unicast HASH table */
879 hw_dbg("Zeroing the UTA\n");
880 for (i = 0; i < mac->uta_reg_count; i++)
881 array_wr32(E1000_UTA, i, 0);
882
878 /* Setup link and flow control */ 883 /* Setup link and flow control */
879 ret_val = igb_setup_link(hw); 884 ret_val = igb_setup_link(hw);
880 885