Currently the driver allows roaming to the BSSID
which it is already connected, which can lead to
many unexpected behaviour, for eg. if the SAP
to which the DUT is connected turns off, then the
DUT would try to roam to other BSSID of the same
SSID, and in case the SAP turns on back in time,
then the DUT would re-associate to the same BSSID.
Now if the subnet may change, and since the DHCP
does not happen again in roaming, it would then
lead to NUD failure.
Fix is to introduce an ini to allow/disallow
roaming to the same BSSID.
Change-Id: Ibd04fcd7384c0987db5bb6dae1a26ee077456290
CRs-Fixed: 2634860
Channel congestion score is not well bucketized, as we only have 0-25,
26-50, 51-75, 76-100, so small change will not give different score.
while channel congestion weight is high: 25.
Increase channel congestion slots num from 4 to 8 as following.
0-12% 13-25% 26-38% 39-50% 51-63% 64-75% 76-88% 87-100%
100% 90% 80% 70% 50% 25% 10% 5%
2500 2250 2000 1750 1250 625 250 125
Change-Id: I4fc2d8a5f0f64c5fce9fe5ec8f16c3e8e9665a60
CRs-Fixed: 2655110
With recent code change, LL stats results are returned in the user
space context only. To do that, changes were made to buffer the LL
stats results received from FW till the time FW completes it. This
change is not taking case where FW sends LL stats for multiple radio
which is resulting SKB corruption.
Change-Id: I49781f1ea9520ad0d9721536be1861d5d8151ea7
CRs-Fixed: 2649207
If Miracast is on, driver should send WMI_RESMGR_SET_CHAN_TIME_QUOTA_CMDID
to FW. Currently this wmi is blocked because gEnableMCCAdaptiveScheduler is
set as 1, which is incorrect.
Add a new dynamic_mcc_adaptive_sched flag to allow wmi command
WMI_RESMGR_SET_CHAN_TIME_QUOTA_CMDID for Miracast case.
Change-Id: I18e713b75a8cafc1b631bf5a1884a9b0123e5dba
CRs-Fixed: 2652271
When running WHUNT test case for SET NUD STATS vendor command,
wma_set_arp_req_stats is supposed to be sent to FW but it fails to send
due to the check in wma_is_vdev_started(), which is currently checking
if the vdev state is WLAN_VDEV_S_START, instead of WLAN_VDEV_S_UP, thus
allowing vdev state WLAN_VDEV_S_UP to still continue when it is not
started. Hence, change the check to WLAN_VDEV_S_UP to provide proper check.
Change-Id: Ifae00ff26a27df92cd4d09047c326bcccfdbf602
CRs-Fixed: 2651406
When STA switch channel the freq0 and freq1 are channel number
and not frequency in hdd_chan_change_notify. Thus the freq0 and
freq1 validation fails in nl80211_send_chandef and thus the
channel change is not notified to supplicant.
Fix this by filling freq instead of channel in freq0 and freq1 in
hdd_chan_change_notify.
Change-Id: I03d3a2afcbb812e6da7ec2be9887dd185e754a44
CRs-Fixed: 2655979
When beacon report request is received from AP in table mode,
sme_rrm_issue_scan_req() is called recursively till scan results
in all channels for that country code is reached. In 6GHz, the
number of channels are high and recursively calling
sme_rrm_issue_scan_req for that much channels causes stack
corruption.
Remove recursive call to the function sme_rrm_issue_scan_req.
Instead, loop all the frequencies in the list and send
scan results on those channels.
Change-Id: Id75d00cfc98fcf218c6b1f85da3270e210697403
CRs-Fixed: 2654375
With the new feature when the recovery is triggered informatation is
collected from the various modules and send the data to user space.
Change-Id: I8d7bb5be46df6150d0efa1cdb8db74a135ba89d7
CRs-Fixed: 2651903
In csr_nonscan_pending_ll_next/csr_nonscan_pending_ll_peek_head and
csr_nonscan_active_ll_peek_head all commands umac_cmd is mapped
to tSmeCmd. This can lead to invalid pointer access as umac_cmd
can be of different type and does not always map to tSmeCmd.
Thus return the cmds only with source WLAN_UMAC_COMP_MLME, which are
initiated by sme and has tSmeCmd mapped to umac_cmd.
Change-Id: I73e75ef5ea754f4ef548a1cb9b3de2d0e566adf6
CRs-Fixed: 2655838
If start bss fail in logs it indicate start BSS timeout, so
fix the logs to indicate proper logs.
Change-Id: Ie470550a1606a1cddd6577f0945386e8c1a5cc13
CRs-Fixed: 2655836
If the SAP is already in stopping state and wlansap_stop_bss is invoked
as a part of stop_adapter, it returns error which causes the
stop_adapter not to wait for the vdev to return to proper state.
To avoid this, return success in case of SAP_STOPPING for the event
eSAP_HDD_STOP_INFRA_BSS
Change-Id: I99a2cd0a1d12b8e43fb3e88b6889e1d651633283
CRs-Fixed: 2654042
nla_put fails when there is no sufficient buffer to put the
beacon IEs. Enhance the log to print available buffer length and
the beacon IEs length.
Change-Id: If6e37455f6fbe795b293f626ad9cbb24a9effcd0
CRs-Fixed: 2629807
Enable the build configuration for dp hang event to
enable the datapath hang event logging feature.
Change-Id: I8044f977e417a311a17e446cc6b71211d217ae4b
CRs-Fixed:
Update the hang data for the pessssion. For the pe module
update the various states which will give insight into the reason
for recovery.
Change-Id: I7e3f18bd8b18dd0d56c09d4a4ce38ce7c3677ecc
CRs-Fixed: 2651762
Remove ol recovery notifier to log ce info as the notifier
is added in hif layer.
Change-Id: Ia3b56f677d7207f7b650ee1060032c285fa946fe
CRs-Fixed: 2649143
If DUT connects to an AP in VHT mode with 40/80Mhz bandwidth in 5Ghz
band and then if user changes the country code(EC) where only 20Mhz
bandwidth present in 5ghz, then after association AP may ignore DUT's
support for only 20Mhz and keeps transmitting data in 40/80Mhz.
As DUT doesn't support these bandwidth, DUT doesn't ack the data
packets with higher received higher bandwidth. Thus DUT's RX throughout
degrades. This is an IOT issue where AP expects OMN IE with channel width
set to 20mhz . As DUT is not sending OMN IE low throughput issue is
observed
Hence host adds OMN ie in the association request only if the AP to
which DUT associates advertises OMN IE and DUT supports VHT.
Change-Id: Ie59323c4c7dc4e4abc332e7204768b6a560d22d1
CRs-Fixed: 2650234
Currently there is no provision to configure OCL mode in FW during
driver bootup.
To enable this configuration add a new INI configuration parameter
gOclCfg.
Change-Id: I87c9131f5395c394f745e0170f0d9b3d1571d030
CRs-Fixed: 2644312
In peer assoc the 40MHz flag is set if HT is enabled and bandwidth
is 40MHz which fails the 40MHz setting for 6GHz connection as HT
is not supported in 6GHz band.
Remove the HT check for 40MHz flag setting in peer assoc.
Change-Id: I2a34dd6fbbca50912952f532e8b485148bf3c3a2
CRs-Fixed: 2649524
Whenever a recovery is triggered in the hdd layer update the
various vdev data for hang event:
1) Vdev id
2) vdev opmode
3) vdev state and substate
if the reason for recovery is max scan failures update the last
scan reject, reason and the vdev id on which scan is rejected.
Change-Id: I84928e56bac1fe58e7eada0a0574b2f23124ae65
CRs-Fixed: 2651694
Update the hang data for the cds module, as part of the hang
data following information is filled:
1) Hang Event version
2) Wlan Driver version
3) Reason for recovery
Change-Id: Ie5a008d1f9512f8e83a1d099fe333b0d2ce90abb
CRs-Fixed: 2650848
htc hang event configuration has been added, enable
the build configration for the feature.
Change-Id: I5441f95288db46ca58ef44f4c825b9f4f7cf59ac
CRs-Fixed: 2651750