When band is changed from dual-band to single band
(2G only):
1. host need to remove IDLE & BTC trigger bits from
WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
2. Send WMI_ROAM_IDLE_CONFIG_CMDID with enable=0
When band is changed from single band (2G only) to
dual-band:
1. host need to add IDLE & BTC trigger bits from
WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
2. Send WMI_ROAM_IDLE_CONFIG_CMDID with enable=1
and with default configurations.
To configure the above value in FW, send an RSO
update to FW whenever host receives set band command
from the upper layer.
Change-Id: I5a78deee713ff8514640d1867098e4045b77a231
CRs-Fixed: 3033081
Enable ROAM_TARGET_IF_CONVERGENCE to enable the
wma to target_if roaming convergence code.
This is a temporary change and shall be reverted by
removing the define ROAM_TARGET_IF_CONVERGENCE usage and
the legacy code(i.e. code present in else part).
Change-Id: I840573b4699f23b7633b8049741a57a0dda975a7
CRs-Fixed: 3039950
Currently, reject_ap_info is used at many places and memset is
not done before filling it. memset the buffer to avoid reading
garbage values.
Also, modify the current initialization of ap_info in
cm_add_bssid_to_reject_list to memset.
Change-Id: Ic0fabc1733c4ea63dccb2e45b2a2dc37791e594d
CRs-Fixed: 3040299
OFDM and CCK flags should not be set based on frequency. These
flags are already filled in pkt_capture_rx_get_phy_info based
on preamble.
Change-Id: Ie809ee2e3546ed69bedab12d73d408b379d6b73d
CRs-Fixed: 2965290
CFR only works when DUT as STA and connected to AP. But, host doesn't
stop CFR if CFR started and disconnect to AP. So add this change to
stop CFR once get disconnection event.
Change-Id: I5a616dbe4c35311fb260514a8d33ed9a1361c514
CRs-Fixed: 3026715
Currently, the ROAM event is posted to scheduler thread when it's
received from firmware. This is done to avoid processing the
complete event in IRQ context as the same callback gets called
from IRQ context for WOW events(WOW_REASON_LOW_RSSI and
WOW_REASON_HO_FAIL). Posting the ROAM event to scheduler
thread may introduce some additional delay in processing it back
as there would be a context switch.
If this ROAM event carries ROAM_START which is followed by a
ROAM_SYNC event, there is chance to process the ROAM_SYNC
before ROAM_START as ROAM_SYNC would be processed in the same
context whereas ROAM_START needs a context switch. This results
into an invalid connection manager state after processing
ROAM_START event, which results a connection failure.
Same is applicable for ROAM_PMKID_REQ_EVENT and
ROAM_VDEV_DISCONNECT_EVENT. Avoid reposting the same to scheduler
thread.
Change-Id: Ic4fc1b3baf12e4ceee9a0975ebfee77fb88ab6f0
CRs-Fixed: 3033657
if g_sta_sap_scc_on_dfs_chan is 1, SAP can't start on DFS channel except
there is STA/P2P client on it.
When SAP start alone, when select SAP channel after ACS, need remove DFS
channel correctly by valid check.
Change-Id: Ie500816bb0aeae3efd18767e64901bf19bedd6fc
CRs-Fixed: 3036095
Restrict the dequeue logic to send only 20 logs per second
to userspace. Add check to see if queue is empty before
trying to dequeue.
Change-Id: I778556c649d123718cf76c943c5b2ed7f6c6e8e5
CRs-Fixed: 3014554
Add new files for connect/roam logging. Add changes to
initialize the logging buffer.
Make changes to support enqueue/dequeue log.
Define enums for MAIN_TAG, Sub TAG, category.
Add structure definitions for logging buffer.
Change-Id: I1d283fcf464da90d4f5533214d480ddda156ec27
CRs-Fixed: 3013486
Currently driver does not update HE connection width
correctly when it indicates about assoc indication from
lim to hdd. Which results in incorrect indication of chwidth
to hdd.
To address this issue update HE connection width correctly
from lim to hdd.
Change-Id: I9ccc4435dc621ed3698f944fd2821afd648f2d1a
CRs-Fixed: 3028799
Higher Bandwidth support 80/80+80/160 is enabled on 2.4G Band.
Modififed the population of peer capability logic to disable
80+80/160 based on the band.
Change-Id: I8319ef3fcd93676bca1115a088a926a772545d24
CRs-Fixed: 3030837
Currently wifi creates kobject for dump in progress feature without
any feature flag, since this kobject is for dump is progress
feature and there is already feature flag available for this
feature so move this code under feature flag.
Change-Id: Ib1155194dbec434c3ecd9949514c6c9931e3e661
CRs-Fixed: 3036752
Currently average rssi is filled in rx packets as rssi not
available in rx tlv, but now ucode is providing rssi value
in rx tlv so do not fill average rssi as rssi is already
filled from rx tlv in packet capture component.
Change-Id: I67e5e4cf6f0eade0640012802d79fe92b87de001
CRs-Fixed: 3022166
Add support to allow/disallow three port combinations on
same band based on PCL table
Change-Id: Id2e9ad7d17bab6ea0aff6913b25f0eb330dc6c13
CRs-Fixed: 3028527
INI g_enable_go_force_scc states the force MCC to SCC mode.
Mode 1-strict: Implement force scc strictly as part of start bss
Mode 2-liberal: Turn on p2p go on provided channel and move
first p2p go to the new p2p go channel after set key.
Currently for p2p-GO forceSCC, support is present where no matter
what is the GO negotiated channel in start_bss, driver will force
the other GO/STA/GC channel (on the same band) to the current GO
channel. This is force SCC strict mode where value 1 is used for
g_enable_go_force_scc ini. In this mode GC will have to do full
scan as the GO channel may be different from actual negotiated
channel. DUT may see some issues if GC dosent do full scan in
this mode.
As part of this change, add support for value 2(Liberal mode)
in g_enable_go_force_scc ini. As part of this liberal mode,
driver will allow the GO to start in MCC mode and after set key,
it will check any other concurrent GO and will do forceSCC for
that GO to the newly formed GO channel.
Change-Id: Ifc7beb06335616c51dc064f48a78b825dbdbda25
CRs-Fixed: 2992098
Check fw capability to support p2p + p2p concurrency from
soc_fw_ext_caps and based on fw capability, set policy
mgr concurrency for p2p + p2p.
Change-Id: Ia32f81f37174e9d722911b1fae6d4897d0af9816
CRs-Fixed: 2991300
From the caller, the args comes as pm_ctx but in definition
it's assigned as work_info which causes crash.
Change-Id: I9928a2c3862407b02cb34356ad54895e1d3069c7
CRs-Fixed: 3035090
If SAE/H2E required by hostapd configure, it must populate in
supported rate or extended support rate set, add host driver support
to check this flag and populate it in extended support rate set.
Change-Id: Id75b5743e93a1a0f1d13150d5436d256e2ca117c
CRs-Fixed: 3016492
bss_descriptor->length is calculated as:
bss_desc->length = ie_length + sizeof(*bss_desc) -
sizeof(bss_desc->len)
In wlan_get_ielen_from_bss_description(), the bss_desc length is
validated as below to return failure if ie_length is 0:
=> (bss_desc->length - sizeof(bss_desc->len)) <= ieFields_offset
Since the bss_desc->length already has the sizeof(bss_desc->len)
subtracted while it was populated.
So this could return failure, if the SSID IE length is less than
or equal to 4.
To avoid this, change the failure condition as below:
(bss_desc->length <= (ieFields_offset - sizeof(bss_desc->len))
Change-Id: Ib0af8e967c26ff0ca9a3b8c44107be4e80378e01
CRs-Fixed: 3022657
Currently driver don't have any feature flag for connection
roaming ini config and it directly tries to read the connection
roaming ini file, on some of the platforms if this ini file is
not present it returns failure message but some of the platforms
results in timeout which results in unexpected behavior.
To address above issue add a feature flag to read connection
roaming ini config.
Change-Id: Ica4159533e46ca5cc2048bf50eab2290bf5ae7d5
CRs-Fixed: 3035148
Supported HE Rx MCS map is disabled if the intersected Tx MCS
map has no supported MCS. Derive the Rx MCS map with self Tx and
peer Rx MCS map.
Change-Id: I27281c168dd507edc97b1e6a4085037c508a5b96
CRs-Fixed: 3030433
If flag WMI_SERVICE_HW_MODE_POLICY_OFFLOAD_SUPPORT is
advertised in service capability, host should not set
HW mode explicitly, firmware takes control of managing
HW mode.
Change-Id: I10a8ad5201db375cc21255661b7cf46b9dd6e05f
CRs-Fixed: 3017062
We have fixed using channel number as internal parameter instead of
chan frequency with change I60fe37d7d716eeaceaa00f3fb59c77b629ebacac,
but variables name are still chan which might cause confused to reader.
Rename all places where "chan" to "chan_freq", which actually channel
frequency used. And alter miss APIs which still expect channel number.
Change-Id: I948cbad133a17093f49384b563966d2c53b51707
CRs-Fixed: 3033951