The WEP security also use the open mode(key_mgmt is NONE), but
it will return directly if it is unicast and missed to call
csr_roam_issue_set_context_req() and then make the WEP unicast
data transfer fail.
So change to call csr_roam_issue_set_context_req() in this case.
Change-Id: I7f81bc2975ac61d6bfe80af27eb38eb783cae8e9
CRs-Fixed: 2826978
Recently NAN UDP/TCP checksum offload INI is added
but corresponding DP cfg entry is missing.
Add NAN UDP/TCP checksum offload DP cfg entry.
Change-Id: I9c6549cbe4cb9e67a538c0743d99404b515e2006
CRs-Fixed: 2815904
In WMA layer, if host fails to send disassoc mgmt to FW, host checks return
status of wma_tx_packet() and frees memory allocated for packet in LIM.
As host already takes care of packet freeing in wma_tx_packet(), don't free
packet in LIM if wma_tx_packet() returns failure.
Change-Id: I912a452edadf83936a9ac6120bd45efa9abde173
CRs-Fixed: 2826655
Currently HTT frag descriptor address is trimmed to 32 bits,
but there is possibility of frag descriptor getting allocated
in range greater than 32 bits when smmu is disabled.
So set the full 37 bits frag address in msdu HTT TX descriptor.
Change-Id: I142d151f6042972eb4a23abdb10cc6ee28ca1613
CRs-Fixed: 2826567
Currently disconnect callback function for connection
manager is a dummy function, add disconnect complete
functionality in disconnect complete callback in hdd
for connection manager.
Change-Id: Ifa59a0ea442d4381d501cbef8a82ec3d6a2198d2
CRs-Fixed: 2826390
hdd_for_each_adapter_dev_held_safe will call the dev_hold for each
iteration. This is to make sure that net device is not being deleted
in between the iteration. dev_put has to be done at the end of each
iteration. There are few instances in the driver where this dev_put
is missing. This will block the driver unregistration due to missing
dev_put.
To resolve this, fix all missing dev_put calls in the driver while
using hdd_for_each_adapter_dev_held_safe.
Change-Id: I1c5560ebc4abcd5eee09e03b5cba39d481398f8c
CRs-Fixed: 2824505
The hdd_roam_profile->pAddIEScan is updated to point to the
default_scan_ie if nAddIEScanLength is 0. But if default_scan_ie
is updated from userspace before every connect and the
hdd_roam_profile->pAddIEScan pointer is not cleared on disconnect
due to scan for ssid in progress(during back to back connect),
then the nAddIEScanLength will not be 0, and
hdd_roam_profile->pAddIEScan will still point to the
default_scan_ie received from previous connect request, which is
already freed when new default_scan_ie is received. This causes
invalid memory access during csr_roam_copy_profile() during the
scan for SSID of the second connect.
So update the roam_profile_>pAddIEScan during connect start
irrespective of the nAddIEScanLength.
Change-Id: I33080048b27267a0af336096f9e33dfb071869eb
CRs-Fixed: 2817188
Use WLAN_INTEROP_ISSUES_AP_ID for interop issue module instead of
generic WLAN_OS_IF_ID.
Change-Id: I019a51f2f80ce553f9e0767cdc849618ac101ebc
CRs-Fixed: 2823554
Vdev channel info are updated during vdev restart in case of invalid
channel width or the secondary frequencies, so use the updated
values from vdev params to inform kernel.
Change-Id: I0dec5ff9c610706aec817d23058696065a232bfe
CRs-Fixed: 2823390
In case of connection with Hotspot 2.0 AP, Disassocition
Imminent frame needs to be forwarded to userspace, so that
user can take necessary action, like issue pop-up
notification etc.
Currently, in case of connection with Hotspot 2.0 AP,
FW/HOST does not forward disassocition imminent frame
to userspace. This causes user-space to fail to issue
necessary notification(s).
Disable BTM offload in firmware if connect req has
HS2.0 IE, so that FW/HOST forward Disassocition Imminent
frame to to userspace.
Change-Id: Ica57fb7399ef21069d599a1046a7da6fbd42bb43
CRs-Fixed: 2733036
Set chanlist=52-64 and channel=0 in hostapd.conf.
After ACS, SAP setup on channel 52, during CAC, Receive channel avoid
event with unsafe channel list 52-60.
Observed Results:
CAC completed, SAP brought up on channel 52.
Expected Results:
channel avoidance should happen, switch to safe channel, such as 36.
During CAC, SAP is not in SAP_STARTED state, so channel avoid event is
ignored.
Fix: After CAC completed and SAP started, check current channel,
if unsafe, will find safe channel from PCL and switch to it, dbs and scc
is preferred.
Change-Id: I54f9229825a74e1f4c03c156a8b194a321581b57
CRs-Fixed: 2773833
Currently the driver uses the API
policy_mgr_is_dbs_enable to check
whether the DBS is enable or not which
does not check the service capability of
DBS, and thus would return true if ini
and FW HW modes contain DBS. In this case
if STA is on 5ghz and SAP comes on 2.4ghz
then force SCC would not happen as the
driver would consider the HW to be DBS
capable which actually is not, and thus
the overall concurrency would be MCC which
is not favourable.
Fix is to use policy_mgr_is_hw_dbs_capable
API instead of DBS enable API which checks
for the service bit also, so that the driver
forces SAP to STA's channel.
Change-Id: I9319293ecfb54fe3e1ad0eaff15542c671514bf4
CRs-Fixed: 2820377
The issue happens in dual sap case, one sap receives peer's auth req and
creates preauth node for the peer, then adds to the list
mac->lim.pLimPreAuthList. Then Another sap (re)starts, it invokes
lim_init_pre_auth_list to set mac->lim.pLimPreAuthList none. In some cases,
the preauth node added by first sap will be "lost" and causes max pre-auth
nodes reached.
Change-Id: I9f5e99095900472a7c77c6b3273eda3c91dded00
CRs-fixed: 2820407
Enable the support, in Kbuild, to mark ICMP request to be
sent to FW at a regular interval.
Change-Id: I0b8828b31550973590dd222cc1fbaee52daaf88a
CRs-Fixed: 2813173
Classify the ICMP request packet and mark it to be
sent to the firmware in the packet control block.
Add an INI which indicates the time interval for
marking the ICMP requests to be sent to FW.
For the INI value:
-1, indicates to mark all ICMP requests to be sent to FW.
0, indicates that none of the ICMP requests will be sent to FW.
> 0, indicates the time interval for marking ICMP requests
to be sent to FW.
Change-Id: Ic48123864bfc206c0659003b75238cacedb96134
CRs-Fixed: 2813173
Currently the driver checks whether hw is
already in DBS in the function
policy_mgr_check_and_set_hw_mode_for_channel_switch
and it does not set hw mode if it is already
in DBS mode. It can happen that SMM is already
requested and is present in serialization and it
would change the HW mode from DBS->SMM and if
driver starts any vdev on 2.4ghz in HST/HSP
which requires the DBS mode for 2.4ghz , the FW
would send a vdev start failure.
Fix is to remove the check of current hw mode and
let DBS be posted to serialization. If hw mode is
already in DBS it would return from serialization
with E_ALREADY but would ensure that HW mode is
always in DBS for a 2.4ghz connection.
Change-Id: Ica660058175cb1edc2931dd2d28ee6cdd9bab2f4
CRs-Fixed: 2823238
Presently host updates STA disconnection reason codes without checking
frame type in lim timeout handler, due to that host fails to update
assoc reason codes user space. Hence while processing timeout handlers
in lim check frame type and update proper STA disconnect reason codes
for auth and assoc.
Change-Id: I0d11f58e75fcfb79b61221fe192f5da1f5b5f4ee
CRs-Fixed: 2824686
Currently, there is no INI parameter to control NAN feature in 6GHz
frequency band. Because of this, there is no provision to disable the
NAN in 6GHz when there is no requirement.
To address this, add INI parameter to configure NAN feature in 6GHz.
Change-Id: I6b4faa8e8aa1a3df72539fed1d7ff3cc8287debd
CRs-Fixed: 2817920
Currently connect and disconnect apis for connection manager
are present on the cfg80211 file, move connect and disconnect
related code to new files.
Change-Id: I514bbfdd66ab8ae5410fdbf9796e298c04130873
CRs-Fixed: 2812112
Use WMI_RX_SERIALIZER_CTX context for thermal event handler.
The default context is tasklet, it may cause issue when interact
with OS interface.
Change-Id: I349412c2afee9a081f0d38704541f77b5e4569f4
CRs-Fixed: 2824461
Currently the driver does not inform userspace when
there is no channel available for the SAP to restart.
This case can happen if all the channels in the spectrum
are unsafe, in NOL list, SRD etc. and the driver cannot
find a safe channel.
Fix is to inform userspace about this scenario of
driver stopping the SAP.
Change-Id: I77f7a5156c8f7b1da29023675d5a7a448be0fb92
CRs-Fixed: 2815265
Currently when CC change but restart SAP is not needed, no beacon
or probe response template is updated to FW and the CC IE in beacon
is not updated. Need to update accordingly.
Change-Id: I588fdf6f9dd69c9c01058ba17a4282d732ed74be
CRs-Fixed: 2818650
Currently RX_DIAG_WQ_MAX_SIZE is set to 0. Which means, there is no
limit to the number of FW diag events that can be queued for processing.
This may result in SKB memory pool is being blocked by FW diag events.
To avoid this, set RX_DIAG_WQ_MAX_SIZE default value as 1000.
Change-Id: I44c69f910a512d8f9a1aed0809c55c6d93737cb2
CRs-Fixed: 2824443
IPA MCC work is initialiazed only when uc code loaded successfully,
before canceling MCC work check for uc load success state.
Change-Id: I9af501d1b974d0da21891634bde2beafd69701b2
CRs-Fixed: 2822382
There are default four adapters wlan0/wlan1/p2p0/wifi-aware0
opened with auto genoa, in AP_AP on GUI case, another wlan2
interface needs to be created, but failed due to
CONFIG_WLAN_MAX_VDEVS setting to four, CONFIG_WLAN_MAX_VDEVS
will limit how many opened adapters can be opened. max_vdev_count
will limit how many vdevs can be created with firmware,
max_vdev_count is the minimum between target maximum vdev count
and CONFIG_WLAN_MAX_VDEVS value.
Fix is to extend CONFIG_WLAN_MAX_VDEVS from four to five.
Change-Id: Ib98ccec1b0cd35604b1bb342129046cff066fd45
CRs-Fixed: 2819588