On Wed, 2021-03-10 at 15:01 -0600, Denis Kenzior wrote: > Hi James, > > On 3/10/21 2:27 PM, James Prestwood wrote: > > If the hardware roams automatically we want to be sure to not > > react to CQM events and attempt to roam/disconnect on our own. > > > > Note: this is only important for very new kernels where CQM > > events were recently added to brcmfmac. > > --- > > src/station.c | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/src/station.c b/src/station.c > > index f9fa0d71..fd985a1b 100644 > > --- a/src/station.c > > +++ b/src/station.c > > @@ -2170,6 +2170,14 @@ static bool station_cannot_roam(struct > > station *station) > > const struct l_settings *config = iwd_get_config(); > > bool disabled; > > > > + /* > > + * Disable roaming with hardware that can roam automatically. > > Note this > > + * is now required for recent kernels which have CQM event > > support on > > + * this type of hardware (e.g. brcmfmac). > > + */ > > + if (wiphy_supports_fw_roam(station->wiphy)) > > + return true; > > + > > Hmm, isn't this completely opposite to the intent of adding this > capability to > brcmfmac? Unless there is a way to disable FW roaming we cannot allow station to roam based on CQM events. We don't have any control when the FW roams so for cards like this I figured it was needed to disable this roaming logic. I've only tested this on my single brcmfmac card, which definitely will not work right if station reacts to CQM events. Plus station cannot even do FT on these cards anyways. Maybe Alvin has some insight to this? > > if (!l_settings_get_bool(config, "Scan", "DisableRoamingScan", > > &disabl > > ed)) > > disabled = false; > > > > Regards, > -Denis Thanks, James