dual_mac_feature_disable isn't used in the module.
Hence, Removed from mac_context and csr_config_param.
Change-Id: If85fdbc93b8bfafd6dea694efc5847aa4d5abc42
CRs-Fixed: 2666569
When set_pmksa command is received from userspace, the internal
pmk table is updated with the new bssid entry and the pmk is saved
to the session. Additionally this update triggers an RSO update
command to the firmware which causes the use of stale pmk for
single pmkid case, in which the BSS capability of SAE single pmk
will be known only after parsing the beacon/probe received in the
roam synch indication.
So donot send RSO update on receiving set pmksa command.
Change-Id: I25419fbc3061ab963ccf3228b3681c83773a7963
CRs-Fixed: 2659055
Use qdf_mem_malloc_atomic to allocate memory while processing
beacons to avoid delays.
Change-Id: I5cdbf02302e599559c4b90273912a81308e0e73a
CRs-Fixed: 2665830
To allow multiple instances of NDP on single peer, limit of max ndp
instances per peer set to 2.
Thus termination of first NDP instance will not affect second NDP
connection.
Change-Id: I421b185bd344688630dbe02e97f0b047d8823abe
CRs-Fixed: 2654713
Currently the driver uses the reason code
POLICY_MGR_UPDATE_REASON_CHANNEL_SWITCH for
chanenl switch for P2P-CLI which is same
reason code used for hw mode change in case
of SAP, so after the hw mode is changed the
VDEV-SM does call the callback of SAP CSA
also.
Fix is to use a different reason code for
SAP CSA.
Change-Id: I16b0521d5a21391e642f29e86037f9eb4fd2af62
CRs-Fixed: 2663915
Currently if station is connected in 11AX mode, AP's HE
IE is not getting updated in the cache information of the
station.
Add support to update HE operation element in the connection
info structure of the station context.
Change-Id: I214d6cec22525788e9ce21a7d832263148989715
CRs-Fixed: 2656005
When detect radar in the process of SAP cac, SAP may choose another
DFS channel to switch and will do cac again, but still indicate
WLAN_SVC_DFS_CAC_START_IND with old DFS channel info to hostapd, it's
wrong. Issue is introduced by
'Change-Id: I0915ee78a97e5f27ce83c31cc673cb8820ae535b', due to this
change it will drop one time eSAP_CHANNEL_CHANGE_EVENT signal before
do cac start on new DFS channel, then operating_chan_freq for
hdd_ap_ctx can't be updated to new DFS channel timely.
Fix is to add one time eSAP_CHANNEL_CHANGE_EVENT signal before do cac
start in the process of channel switch.
Change-Id: I441e32e4ecd356834e66f97f2e2334966f48ec5d
CRs-Fixed: 2663539
Power stats is moved from debugfs to sysfs, and hence add the feature
flag WLAN_POWER_DEBUG such that this feature can be compiled out for
low memory foot print drivers.
Change-Id: Ic395f393580fcd59faa4e4676f67a39ff37bdd1a
CRs-Fixed: 2665089
after roaming, the he_capble of ft_session is not set
correctly.
update this value refer previous session.
Change-Id: I92361e26a8ef28cf5a3c7981883f1ee2fa1272ff
CRs-Fixed: 2663307
Currently, number of vdevs required can be configured through
the ini param gNumVdevs.
Firmware can accommodate maximum 4 vdevs and the ini param
gNumVdevs indicates the same.
If host driver is going to create vdev for NAN, it indicates
the total no.of vdevs supported to firmware which includes the
NAN vdev.
If firmware is going to create NAN discovery vdev, host should
indicate 3 vdevs and firmware shall add 1 vdev for NAN. So decrement
the num_vdevs by 1.
Change-Id: I9a4fc9ac3bf4ce62fa3388643e047a7a1d546f4d
CRs-Fixed: 2649478
Firmware advertises the NAN separate vdev capability through
the service capability wmi_service_nan_vdev and host advertises
through the ini param nan_separate_iface_support. Both of the
capabilities must be checked to support the NAN separate vdev
support. Define an API to check both the capabilities and made
the individual capability APIs static. So that individual APIs
are not accessed outside this common API. Use this API to
know the support. This is to avoid any possible misses in
checking the support.
For example, NAN vdev id is fetched from the NAN enable
response message received from firmware only based on
firmware capability in nan_handle_enable_rsp. If firmware
supports the feature and ini is set to 0, then vdev id might
be invalid as it's fetched from the NAN enable response
without considering host capability. If either firmware or
host doesn't support NAN separate vdev feature, firmware
creates vdev and it may not fill the vdev id in NAN enable
response. Host shall use NAN_PSEUDO_VDEV_ID then.
So, consider NAN separate vdev feature as supported only if
both host and firmware support.
Also fetch the firmware capability to support NAN separate vdev
when wma_rx_service_ready_ext_event is received and update to NAN
psoc priv object.
Change-Id: I50e76fbe17befb28a5262fc26f5675b67f4d21f2
CRs-Fixed: 2650354
If add softap which name already exist, wlan_hdd_allow_sap_add() will
return the exist softap, which check as valid wdev in function
_wlan_hdd_add_virtual_intf(), so we created useless dsc_vdev for this
duplicanted softap, and upper layer has no chance to delete it because
it only has unique softap.
Fix it by removing wlan_hdd_allow_sap_add() checking because kernel
will check duplicated naming when register interface.
Change-Id: Ic6ffa793a678cfdeb43ecd6c472e8a70c8a150f1
CRs-Fixed: 2661354
In the API lim_extract_ap_capability the driver
depends on the value of seg0 and seg1 values
from the AP and blindly fills that and sends
that as part of vdev start params.
There can be some APs which do not fill the
seg0 and seg1 APs correctly and blindly
depending upon those values can lead to
wrong seg0 and seg1 thus leading to FW assert.
Fix is to fill the seg0 value as centre channel
of 80Mhz and seg1 as 0 in case of 80Mhz BW.
Since these are unique values and dependent
on channel number (primary) driver can fill
that directly rather than depending on the
AP for them.
Change-Id: I46f2a81b443e1d0d62eb039878add15310595c8c
CRs-Fixed: 2664405
SAP turn on is getting stuck for longer time due to vdev is getting
deleted logically before response for sme_soc_set_dual_mac_config comes.
To resolve this, add wait in wlan_hdd_update_dbs_scan_and_fw_mode_config
to confirm sme_soc_set_dual_mac_config completion.
Change-Id: I9408713fcf828d24688ecc45290d8c90a8d54c22
CRs-Fixed: 2663509
Copy WMI_LINK_STATS_ALL_PEER stats and number of channels in
radio stats properly to the buffer.
Change-Id: I3219e3c46e93d43f2684ab51a2c5d98a63a3f88e
CRs-Fixed: 2649207
Presently in case there is an interface down during SSR, the request is
rejected outright. This causes the driver and the userspace to go out of
sync on the status of that particular interface.
The root cause of this issue is that while SSR is ongoing if interface
down comes, the DSC control via __dsc_vdev_can_trans rejects the interface
down citing QDF_STATUS_E_INVAL. This prevents the request to be queued and
processed later.
To fix this remove the check for driver recovering from the DSC control.
Change-Id: I9598c4606984f924d63e8c459ded0520d0824d08
CRs-Fixed: 2658597
Currently for SAP case on the disconnection with the
client, host driver sends get stats command for the
disconnected peer to the FW and proceeds with the peer
deletion. There is a race condition where if the peer
gets deleted in the object manager before FW sends the
requested stats in that case host driver drops the
response from the FW.
To resolve above issue send the get stats request command
in serialization before peer delete command gets serialized
which will ensure that get stats response is processed
before peer delete in the object manager.
Change-Id: I1aa4be329a06e261222c0f9dccc36e08bd6b137a
CRs-Fixed: 2656842
Add INI - gActionOUIReconnAssocTimeout to configure driver
to do:
1. Driver will not send deauth to the AP after association timeout.
2. Reconnect to same BSS again if the last association failure
is association response timeout.
Default="00E04C 00 01"
The change fixes IOT issue with certain AP which doesn't
response first association request frame sometime. But the AP
would response second association request.
Change-Id: I9f7b8d14aaaaa97f08856c8b62e49b145db3ac91
CRs-Fixed: 2653877
At stop adapter flush vdev's pending wlan ipa events
and also increase the ipa resources load/unload timeout
to 500ms as current timeout of 100ms which is less taking
in to account of suspending IPA pipes, WLAN FW pipes and
also waiting separately for the RX and TX suspend ack from
the FW.
Change-Id: Ia622ab84f15089826c23502f365b11e742277ca8
CRs-Fixed: 2660807
On Lahaina platform it is seen that WBM IDLE ring init is failing,
Write to WBM_IDLE link ring LSB write is failing.
Add temporary WAR to do back to back write of WBM IDLE link ring
LSB address config register.
Change-Id: I8d6766e33a3912d197e543f0e7e252513e0253ab
CRs-Fixed: 2662295
Currently, wiphy->num_iftype_akm_suites is updated with
QDF_ARRAY_SIZE(wlan_hdd_akm_suites)/size of structure but
macro QDF_ARRAY_SIZE itself is providing number of elements
of array with (sizeof(_arr) / sizeof((_arr)[0])).
Fix is to use QDF_ARRAY_SIZE(wlan_hdd_akm_suites) instead
of using QDF_ARRAY_SIZE(wlan_hdd_akm_suites)/
sizeof(struct wiphy_iftype_akm_suites).
Change-Id: Ia4abcc84a7d568e76a71df40fd9f3688b348bd70
CRs-Fixed: 2664434
Offload packets should be processed only in
packet capture mode, so drop them in PE component
if packet capture mode is set.
Change-Id: I45c373b02bd4ad70c9a02528239f0ddf9c22343e
CRs-Fixed: 2664553
Currently, active commands are not being flushed during vdev delete.
This will cause issue when vdev is logically being deleted before
response comes for this active comand.
To resolve this, flush vdev active commands also along with pending
commands.
Change-Id: Ie31936132a389685ff4ff55b43ccbb4102e65830
CRs-Fixed: 2664624
Currently, peer can be accessed after deletion in hdd because
cdp_clear_peer tries to remove peer from physical device
after deletion of peer in datapath.
Fix is to remove cdp_clear_peer from hdd as it is handled by
cdp_peer_delete which invokes dp_peer_delete_wifi3.
dp_peer_delete_wifi3 further invokes dp_peer_rx_bufq_resources_deinit
and dp_peer_rx_bufq_resources_deinit does job of cdp_clear_peer.
Change-Id: I9013b6f0ba860b9d9309e734806e592cf13934c6
CRs-Fixed: 2662867
Currently the driver sets the CAC required for
SAP if it changes it channel to DFS, it
issues a broadcast deauth to all clients,
which leads to unwanted disconnection, which
can be avoided if any STA if already connected
to an AP on that channel.
This is because there is already active TX going
on that channel, so the SAP need not wait for
CAC time to sense the medium.
Fix is to check whether any STA vdev operating
frequency matches with the target frequency of
the SAP, and if it is true, then do not set the
CAC required to true in SAP's vdev.
Change-Id: I09dbecc1a4625cb51e6095f7579479413e525a74
CRs-Fixed: 2643790