mirror of https://gitee.com/openkylin/linux.git
iwlwifi: mvm: add predefined broadcast filter configuration
Configure arp request broadcast filter if this option is enabled, in order to allow only arp request broadcasts to pass-in. (A following patch will make this filter even narrower by limiting the arp request to our own ip) Signed-off-by: Eliad Peller <eliadx.peller@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
This commit is contained in:
parent
c87163b9ae
commit
777369237b
|
@ -128,6 +128,28 @@ static const struct wiphy_wowlan_tcp_support iwl_mvm_wowlan_tcp_support = {
|
|||
};
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
|
||||
static const struct iwl_fw_bcast_filter iwl_mvm_default_bcast_filters[] = {
|
||||
{
|
||||
/* arp */
|
||||
.discard = 0,
|
||||
.frame_type = BCAST_FILTER_FRAME_TYPE_ALL,
|
||||
.attrs = {
|
||||
{
|
||||
/* frame type - arp, hw type - ethernet */
|
||||
.offset_type =
|
||||
BCAST_FILTER_OFFSET_PAYLOAD_START,
|
||||
.offset = sizeof(rfc1042_header),
|
||||
.val = cpu_to_be32(0x08060001),
|
||||
.mask = cpu_to_be32(0xffffffff),
|
||||
},
|
||||
},
|
||||
},
|
||||
/* last filter must be empty */
|
||||
{},
|
||||
};
|
||||
#endif
|
||||
|
||||
static void iwl_mvm_reset_phy_ctxts(struct iwl_mvm *mvm)
|
||||
{
|
||||
int i;
|
||||
|
@ -292,6 +314,11 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
|
||||
/* assign default bcast filtering configuration */
|
||||
mvm->bcast_filters = iwl_mvm_default_bcast_filters;
|
||||
#endif
|
||||
|
||||
ret = iwl_mvm_leds_init(mvm);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
Loading…
Reference in New Issue