From b6e43b447ec3d54af61506dfc31b030ec588e4e1 Mon Sep 17 00:00:00 2001 From: stsp Date: Wed, 20 Jul 2016 18:24:38 +0000 Subject: [PATCH] Disable the beacon filter in iwm(4). This allows beacons to pass through to the stack while associated, which in turn makes it possible to keep track of HT protection changes. ok mpi@ --- sys/dev/pci/if_iwm.c | 9 ++++++++- sys/dev/pci/if_iwmreg.h | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/sys/dev/pci/if_iwm.c b/sys/dev/pci/if_iwm.c index 09cc9a6f98a..ed672cd3c3f 100644 --- a/sys/dev/pci/if_iwm.c +++ b/sys/dev/pci/if_iwm.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_iwm.c,v 1.95 2016/07/18 13:10:35 stsp Exp $ */ +/* $OpenBSD: if_iwm.c,v 1.96 2016/07/20 18:24:38 stsp Exp $ */ /* * Copyright (c) 2014, 2016 genua gmbh @@ -6290,7 +6290,14 @@ iwm_newstate_task(void *psc) case IEEE80211_S_RUN: { in = (struct iwm_node *)ic->ic_bss; iwm_mvm_power_mac_update_mode(sc, in); +#ifdef notyet + /* + * Disabled for now. Default beacon filter settings + * prevent net80211 from getting ERP and HT protection + * updates from beacons. + */ iwm_mvm_enable_beacon_filter(sc, in); +#endif iwm_mvm_update_quotas(sc, in); /* init amrr */ diff --git a/sys/dev/pci/if_iwmreg.h b/sys/dev/pci/if_iwmreg.h index db4cf8c54ef..8223c3ca5e8 100644 --- a/sys/dev/pci/if_iwmreg.h +++ b/sys/dev/pci/if_iwmreg.h @@ -1,4 +1,4 @@ -/* $OpenBSD: if_iwmreg.h,v 1.13 2016/05/28 08:13:16 stsp Exp $ */ +/* $OpenBSD: if_iwmreg.h,v 1.14 2016/07/20 18:24:38 stsp Exp $ */ /****************************************************************************** * @@ -3773,7 +3773,7 @@ struct iwm_uapsd_misbehaving_ap_notif { * beacon filtering; beacons will not be forced to be sent to driver * regardless of whether its temerature has been changed. * @bf_enable_beacon_filter: 1, beacon filtering is enabled; 0, disabled. - * @bf_filter_escape_timer: Send beacons to to driver if no beacons were passed + * @bf_escape_timer: Send beacons to driver if no beacons were passed * for a specific period of time. Units: Beacons. * @ba_escape_timer: Fully receive and parse beacon if no beacons were passed * for a longer period of time then this escape-timeout. Units: Beacons. -- 2.20.1