提交線圖

1316 次程式碼提交

作者 SHA1 備註 日期
Srinivas Girigowda
804a370924 qcacld-3.0: Set num_dbs_hw_modes to 0 on malloc failure
Set num_dbs_hw_modes to 0 on malloc failure.

Change-Id: I29c1a54b290892c149c2c84250042a7115a1d07a
CRs-Fixed: 2781988
2020-09-24 03:26:56 -07:00
Jyoti Kumari
1b97e38bec qcacld-3.0: Change default value of TDLS parameter
Change default value of gEnableTDLSSupport, gEnableTDLSScan
and gEnableTDLSImplicitTrigger 1

Change-Id: Ic6559a5f77b1d46bc48647c283327a12c409d873
CRs-Fixed: 2783560
2020-09-24 00:13:26 -07:00
Utkarsh Bhatnagar
3fb55f01e4 qcacld-3.0: Update peer if add TDLS is rejected in of case ongoing setup
In case two clients try to establish the TDLS connection simultaneously,
the peer who is able to transmit the setup request first will be
connected and the other request is in driver without notifying the peer.
This causes peer to get stuck waiting for the TDLS setup response. So,
send TDLS setup response with unspecified failure reason code, ift here
is already TDLS setup.
Also, drop the setup response only if status code is zero in case setup
is already in progress. This way if the status code is set which will be
set in tdls_activate_add_peer(), in case of request already in process,
the same error code can be notified to the peer.

Change-Id: I83fea4586d6e344a86a9185b078e4d87ec38c664
CRs-Fixed: 2771973
2020-09-23 19:35:09 -07:00
Gururaj Pandurangi
2912a925a2 qcacld-3.0: Change default value of gMaxLIModulatedDTIM
Reduce default value of gMaxLIModulatedDTIM from 10 to 5
to shorten the listen interval. It provides better
connectivity when AP has a large DTIM Period or
Beacon Interval.
Also, move the ini definition to sta header file from
sap header file.

Change-Id: I9661c6fc623949cf8b260043e8da7448b496d57f
CRs-Fixed: 2780070
2020-09-22 07:59:21 -07:00
hqu
8bd89b11dd qcacld-3.0: Send roam scan_mode/deauth/idle/trigger when rso enabled
In the process of rso update config, need to send roam
scan_mode/deauth/idle/trigger commands when rso enabled.

Another fix is to call csr_cm_roam_scan_offload_fill_rso_configs()
with ROAM_SCAN_OFFLOAD_STOP in wlan_cm_roam_fill_stop_req().

Change-Id: Ibcc2ab5d7da1bf838b386e0e1e486cd43072225a
CRs-Fixed: 2779549
2020-09-22 07:59:17 -07:00
Abhinav Kumar
5a5ab2c344 qcacld-3.0: Sae single pmk entry gets updated while roaming
While initial connection with SPMK AP1 supplicant generates
PMK1, and DUT updates global mlme single pmk entry and
csr session pmk.

Now DUT roam to non-SPMK AP2 and generates PMK2, Global mlme
single pmk has SPMK AP1 PMK1 and csr_roam_session has non-SPMK
AP2 since FULL SAE happen.

Now Roam back to SPMK AP1, since the Full SAE does not happen
and due to check roam_synch_data->authStatus ==
CSR_ROAM_AUTH_STATUS_AUTHENTICATED in
csr_process_roam_synch_callback(). The lookup and update
csr_roam_session code is not hit and driver don’t update
csr session pmk after roaming to SPMK AP. So after roam sync complete,
csr_check_and_set_sae_single_pmk_cap() updates the global mlme
single pmk with session->psk_pmk. This results DUT uses PMK generated
from a Non-Single PMK supported AP in the ReAssoc Request frame
while Roaming to Single PMK supported AP.

Fix is to allow driver to update session->psk_pmk even in case
Full SAE does not happen.

Change-Id: Ie4f06cfcb066ae245de024b62da586aade783aec
CRs-Fixed: 2761771
2020-09-21 22:01:48 -07:00
Naman Padhiar
001338b360 qcacld-3.0: Send HOST wake up to FW over QMI
As part of WOW feature in WCN6750, send HOST wake up
to FW over QMI instead of WMI. To send HOST wake, add
PLD layer and call platform driver API to send QMI
EXIT_POWER_SAVE to FW.
When FW receive EXIT_POWER_SAVE QMI, it will implicitly
consider that it also received HOST_WAKEUP_FROM_SLEEP
and send ACK for it through CE2.

Change-Id: Ia0a3f4c15662f9ee58649f5c6de965f65aeafe32
CRs-Fixed: 2779370
2020-09-21 16:55:38 -07:00
gaurank kathpalia
b81c0ae7d2 qcacld-3.0: Replace tSirMacReasonCodes with enum wlan_reason_code
Replace all enums of tSirMacReasonCodes with common
enum wlan_reason_code.

Change-Id: Ida950a08ac4ceea2911344a8d919b2d93ac7d1fe
CRs-Fixed: 2781197
2020-09-21 16:55:34 -07:00
Nisha Menon
417b7e3c6f qcacld-3.0: IPA SMMU enable check to be moved to IPA ready cb
During probe IPA SMMU S1 enable check will pass only if IPA
registration for ready callback is successful and IPA ready
callback is invoked.
This ensures that IPA APIs are not invoked unless IPA ready
callback is invoked and ipa ready flag is set in the host
driver.

Change-Id: Ie157a2f851bb1e914a098b62ede1280aa0243d19
CRs-Fixed: 2778504
2020-09-20 01:05:50 -07:00
Lincoln Tran
d3f63c4fe8 qcacld-3.0: Fix potential NULL ptr dereference in if_mgr
The peer objmgr pointer in the if_mgr_roam module may be NULL if
there is no peer connected. Add check to see if pointer is NULL
before dereferencing it. Also modify logic to only check if the
vdev is in STA or P2P_CLI mode.

Change-Id: I7370ca5b9c74bd81f6e958cf740b6ee426f4faad
CRs-fixed: 2779831
2020-09-19 13:33:20 -07:00
Abhishek Singh
5cdd743c84 qcacld-3.0: Move rso tx ops to psoc from vdev
Move rso tx ops to psoc from vdev.

Change-Id: Icd0a8aef8ecc7ef097b2239d05c6e21ea36b8216
CRs-Fixed: 2779294
2020-09-18 07:29:57 -07:00
Srinivas Girigowda
49f542e8a7 qcacld-3.0: Replace WMI_LOGD() with wmi_debug()
Replace WMI_LOGD() with wmi_debug().

Change-Id: Ie08879d4c75685d8d0691c7db0a402ec36cdd772
CRs-Fixed: 2776619
2020-09-18 04:59:10 -07:00
Srinivas Girigowda
ef64ab26b9 qcacld-3.0: Replace WMI_LOGI() with appropriate log level
Replace WMI_LOGI() with appropriate log level.

Change-Id: I46323dcf0adf0f132c375955c162ddf9560f2d82
CRs-Fixed: 2776619
2020-09-18 04:59:06 -07:00
Srinivas Girigowda
8006e2ce39 qcacld-3.0: Replace WMI_LOGE() with wmi_err()
Replace WMI_LOGE() with wmi_err().

Change-Id: Ica675893cb651fd9ba895666a4cd441c3a97f0f7
CRs-Fixed: 2776619
2020-09-18 04:59:02 -07:00
Srinivas Girigowda
97500653e2 qcacld-3.0: Replace WMI_LOGP() with appropriate log level
Replace WMI_LOGP() with appropriate log level.

Change-Id: Ie484e7be902e0d47652347c2c6728d81fe793410
CRs-Fixed: 2776619
2020-09-18 04:58:58 -07:00
Pragaspathi Thilagaraj
f175b03bea qcacld-3.0: Fix invalid pcl weight for 2G channels in 6G sta connection
When band mask for connected STA is 7(connected in 6GHz), the weight
of 2.4Ghz channels is sent as 1(weight of non-pcl channels). This
allows firmware to roam to 2.4Ghz AP with dual sta roaming enabled.

For 6Ghz connection, set 2.4Ghz channels weight to 0 to disallow fw
roaming.

Change-Id: I9581c51a827e6fa6ac186b531639ce4835ba0faa
CRs-Fixed: 2775276
2020-09-18 02:06:47 -07:00
Alan Chen
53d838dcb3 qcacld-3.0: Add check for OPM power save enabled
Qpower config should not be allowed if Qpower config/OPM power save config
is disabled in ini file.

Change-Id: Iff21159f30731f7188506ab5e5e3133d02203b6b
CRs-Fixed: 2778632
2020-09-17 10:18:06 -07:00
Pragaspathi Thilagaraj
efae9d0fd6 qcacld-3.0: Fix roam scan mode tlv formation for secure connection
Fix roam scan mode tlv formation for secure connection.
11i tlv is not filled due to wrong akm check in
wmi_fill_rso_tlvs().

Fix the akm check in wmi_fill_rso_tlvs to fill the roam scan mode
tlv properly.

Change-Id: I59ec0e34139ac4a6d6e2bcc03e84ac695292b1f2
CRs-Fixed: 2778658
2020-09-17 07:35:53 -07:00
Abhinav Kumar
33fdd1fac0 qcacld-3.0: Remove unused roam ini gRoamBeaconRssiWeight
Currently, gRoamBeaconRssiWeight is not used in HOST or
FW.

Remove unused roam ini param gRoamBeaconRssiWeight.

Change-Id: Ida6ddb8ca5805f819c4d3f7e6ed96c705fa6594f
CRs-Fixed: 2767533
2020-09-16 04:51:26 -07:00
Jianmin Zhu
ab5f515803 qcacld-3.0: Pass rx data rssi triggers to F/W
Pass rx data rssi triggers and rx time to firmware.
Add log in wmi to narrow down host and firmware issue.

Change-Id: I255e02ab8f2c88a29619a49d9c2055bdaa75642a
CRs-Fixed: 2768053
2020-09-15 23:03:37 -07:00
Nisha Menon
d5f0559bbb qcacld-3.0: Disable ipa ready registration in FTM mode
In FTM mode do not register callback with IPA driver
to check if IPA is ready.
IPA offload is not supported in FTM mode.

Change-Id: I9d36f3085db72d3ffe9e6080f422618f7a531c01
CRs-Fixed: 2772192
2020-09-15 11:38:32 -07:00
Liangwei Dong
662bade898 qcacld-3.0: Add INI to configure thermal action
There is customer requirement that once wifi chip overheat,
we should switch the tx chain mask to 1X1 to cool down the
chip instead of halting the tx completely.
Add new INI gThermalMgmtAction to configure thermal mgmt action
with default 0. The valid thermal mgmt action INI value is defined
as enum thermal_mgmt_action_code. To set it to 3 -
THERMAL_MGMT_ACTION_CHAINSCALING to meet customer requirement.

Change-Id: I88b1237fae1f476ad9ff0e7b5a469ec314a42bf9
CRs-Fixed: 2765289
2020-09-15 11:38:26 -07:00
Yeshwanth Sriram Guntuka
843e288336 qcacld-3.0: Fix possible NULL pointer dereference
Pointers returned by wlan_ipa_get_iface API and
cds_get_context API are not NULL validated at few
places. Add NULL checks for these pointers to avoid
possible NULL pointer dereference.

Change-Id: I44f226c2ce97afd6ad2ff9cde5cd70d9d12bc3d2
CRs-Fixed: 2775197
2020-09-15 09:28:43 -07:00
Jia Ding
0358fd452a qcacld-3.0: Provide soc handle and pdev id for IPA cleanup
To do SMMU unmap for IPA TX and RX doorbell registers, provide
soc handle and pdev id to CDP layer.

Change-Id: I6e4fcc7d96d3dabe9dcbb85b9d7193e898d9a73e
CRs-Fixed: 2768306
2020-09-15 09:28:40 -07:00
Abhinav Kumar
7ac893f2af qcacld-3.0: Add a new INI bg_rssi_threshold
FW triggers roaming based on the RSSI score of AP(s) available
after background scan. Currently, the host does not configure
the value of bg_rssi_threshold RSSI. This results in ping-pong
roaming after background scan, even though candidate AP
RSSI is not better than 5dbm than connected AP.

Fix is to configure the value of bg_rssi_threshold via new
INI "bg_rssi_threshold" and configuring default value of
INI as 5dB.

Min: 0
Max: 100
Default: 5

Change-Id: Ib710e294c8b33ff4903d41453e3b55f02daf53ae
CRs-Fixed: 2763962
2020-09-15 07:19:33 -07:00
Abhishek Ambure
2813eaa802 qcacld-3.0: Add support for SAE-PK roam scoring
SAE Public Key (SAE-PK) authentication is an extension of SAE. Host adds
support for SAE-PK APs roam score which host uses to select AP for initial
connection and roaming.

Change-Id: Id8c420950bb8c1d11db5a26aa860e280bcb672d1
CRs-Fixed: 2769372
2020-09-15 04:59:24 -07:00
Pragaspathi Thilagaraj
4bfed04ab4 qcacld-3.0: Fix RSSI_CHANGE command values
Move the rssi change vdev params initialization to
csr_neighbor_roam_info_ctx_init() so that vdev priv object will
be created and per vdev parameters are saved and proper values
are sent to firmware.

Change-Id: I87c8272d89f431fa3db60beed4d1da6d9790ec28
CRs-Fixed: 2774826
2020-09-14 09:55:14 -07:00
Amruta Kulkarni
ea53232656 qcacld-3.0: Enable roaming on interface mgr
- Use sme roaming api's instead of converged
 roaming api's.
- Add debug logs in if mgr api's.
- Fix typo in Kbuild file.
- Fix compilation errors.
- Fix comments for readability.
- Update disconnect functions so parameter type matches.

Change-Id: Ia0adf6f79036e9348bf4ebb6237a5e25ef813a21
CRs-Fixed: 2774509
2020-09-14 09:55:10 -07:00
Wu Gao
56afad67cb qcacld-3.0: Set current mode properly for TDLS
This change fixes two issues about TDLS:
    1. It updates current mode only if tdls vdev object is NULL.
    2. Handles pre-scan callback but ignore scan done callback if device
       type isn't station or P2P client.

Change-Id: I4badbf3a7c40eca813a6360817d5483be88f2c5d
CRs-Fixed: 2769638
2020-09-14 09:55:07 -07:00
Gururaj Pandurangi
c199935f4b qcacld-3.0: Add checks to handle return value from crypto APIs
Add checks in caller APIs to handle negative return value from
crypto get param and crypto get peer param APIs.

Change-Id: Ibb138971f347c7ccdacbc93aa38521d5d9536759
CRs-Fixed: 2775328
2020-09-12 08:17:11 -07:00
Lincoln Tran
53f7903389 qcacld-3.0: Add candidate validation to the if_mgr
Add the API to validate the BSS before roaming to it. This API will check
if other vdevs are already connected to the BSS, if concurrency is allowed,
and if channel is allowed for the current HW mode.
Keep the new changes under the interface_mgr feature flag.

Change-Id: I280e95b0a30c08fe4037295330628b79d22acf5f
CRs-fixed: 2774543
2020-09-12 01:59:43 -07:00
Abhishek Ambure
8c579f5a5b qcacld-3.0: Add support to get pmf bcn protect stats
Host sets WMI_REQUEST_PMF_BCN_PROTECT_STAT bit in stats_id param of
WMI_REQUEST_STATS_CMDID command. Firmware supporting pmf beacon
protection stats responds host with stats in wmi_update_stats_id
event. Host extracts PMF beacon protection stats from wmi_update_stats_id
event. Host adds PMF beacon protection stats in the response of vendor
command QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO for STA mode.

Change-Id: Ib3cb06e03dbccdb9fa1782d414ed734bd97aa309
CRs-Fixed: 2705236
2020-09-12 01:59:34 -07:00
Lincoln Tran
22301fc573 qcacld-3.0: Migrate PCL API to policy manager
Currently, the APIs related to setting the preferred channel list is
in the SME module. Move these APIs to the policy manager so they can
be accessed from non-legacy modules.

Change-Id: Icc487dd2a0014e59db9c2df729b875f58e3e975e
CRs-fixed: 2766863
2020-09-11 23:39:34 -07:00
hqu
193727e455 qcacld-3.0: Add additional debug logs for rso commands
Add debug logs on the sending WMI_ROAM_SCAN_RSSI_THRESHOLD
/WMI_ROAM_FILTER_CMDID/WMI_ROAM_BTM_CONFIG_CMDID
/WMI_11K_OFFLOAD_REPORT_CMDID commands path.

If mawc roaming is not supported by firmware, don't send
WMI_ROAM_CONFIGURE_MAWC_CMDID command.

Add rssi reject AP list to the roam params process in function
csr_cm_roam_scan_filter().

Change-Id: I89e6dcac801e552877f7e918d1179dfa3466857a
CRs-Fixed: 2775101
2020-09-11 23:39:30 -07:00
Gururaj Pandurangi
dc3821cefd qcacld-3.0: Add connect complete changes to if mgr
Add connect complete event handling API as part
of connection manager effort.

Change-Id: Ie1edfb1383ffdef97c7740d936256f7b89649e65
CRs-Fixed: 2760218
2020-09-11 21:15:44 -07:00
Srinivas Dasari
6cc76d41ab qcacld-3.0: Cleanup all NDPs as part of NAN disable
NDPs can exist on an NDI only when the NAN discovery is active.
Currently, firmware sends NDP_END indication for all NDPs when NAN
is disabled. Host driver removes the NDI entry from the policy mgr
based on these NDP_END indications. But firmware might miss to send
the NDP_END indication in some cases though the NDPs are deleted
in firmware. This leads to stale NDI entries in the policy mgr and
it prevents STA connections as NDI+STA without NAN discovery is not
a valid concurrency.
Host driver can remove all NDPs before sending NAN disable request
to firmware to avoid this. This is a blocking call in driver and
wait for the NDP_HOST_UPDATE event from firmware. Cleanup the policy
mgr entries in timeout case as well to avoid further failures due
to unsupported concurrency.

Change-Id: I8df905b7ae4cfe5dfb5affe5b6a3fd478851a453
CRs-Fixed: 2774329
2020-09-11 13:55:31 -07:00
Gururaj Pandurangi
5202fa8547 qcacld-3.0: Change ucfg tdls API as wrapper to wlan API
Change ucfg_tdls_notify_connect_failure() API as a
wrapper to a new API wlan_tdls_notify_connect_failure()
which in turn calls the core API.

Change-Id: I998669f9c829cb91e21b359ba794f396214854e2
CRs-Fixed: 2767682
2020-09-09 20:47:20 -07:00
Lincoln Tran
49f4bf7e0d qcacld-3.0: Add disconnect changes to interface mgr
Add disconnect start and disconnect complete event handlers to
the interface manager.
Add disable roaming, enable roaming on connnected STA, and
enable roaming after P2P disconnect APIs.

This change is part of the connection manager effort.

Change-Id: Ib68b9ef9ff5b6541d7393bfbe6332a68b17bd587
CRs-fixed: 2760090
2020-09-09 16:19:49 -07:00
Amruta Kulkarni
a7c313b997 qcacld-3.0: Add start/stop bss changes in interface mgr
- Add start/stop bss event processing
- Add WLAN_INTERFACE_IF_MGR flag

Change-Id: I472a4534ee7bf95a10058595c85ec89eaf411670
CRs-Fixed: 2759981
2020-09-09 16:19:45 -07:00
Ashish Kumar Dhanotiya
95e385cfe1 qcacld-3.0: Use objmgr api to get the vdev for pmo
Currently pmo disable run time pm offload api gets the vdev
inside psoc obj lock but tries to take the reference of
vdev without any lock protection, in this case it is possible
that one thread gets the vdev and when it troes to get the vdev
reference some other thread deletes the vdev because if which
first thread will not be able to get the reference for the vdev
which it alreaady holds.
To address above issue use objmgr api to get the vdev.

Change-Id: I8f47515f39ace809cfe9e134fd704a2914ed3d9a
CRs-Fixed: 2769887
2020-09-09 14:03:46 -07:00
Yu Wang
e513fc5add qcacld-3.0: disallow STA_P2PGO MCC on 5G DFS channel
If STA is on 5G channel, starting P2P GO on a different 5G DFS channel
should be rejected, but it's not, due to it didn't check the P2P GO
specific configurations, but only check the one for SAP.

To fix it, use P2P GO specific API to check the force scc status
for P2P GO mode.

CRs-Fixed: 2769182
Change-Id: Ibb3bb5e6e7f8a64e4483bdef863ce1f4294da9eb
2020-09-09 07:51:45 -07:00
Pragaspathi Thilagaraj
b1c7b3113a qcacld-3.0: Fix scan start tlv in Roam Scan mode command
In wmi_fill_rso_start_scan_tlv(), the fixed param header is
overwritten with 0. So this causes roam scan mode command to
fail.

Don't overwrite scan start fixed param in
wmi_fill_rso_start_scan_tlv(). Also add some additional debugs.

Change-Id: I8ae7053e77d5694bade7e4a84fb4028d8224354c
CRs-Fixed: 2771951
2020-09-08 15:05:44 -07:00
Pragaspathi Thilagaraj
86c2433d79 qcacld-3.0: Add additional debugs for roam scan offload commands
Add additional debugs in wmi for roam scan offload mode command
TLVs.
Also add changes to fill scan parameters for Roam scan offload
mode command start scan fixed param.

Change-Id: I9610d54a1f331c5f9910d44b11c5841e034036b8
CRs-Fixed: 2770713
2020-09-07 18:51:13 -07:00
Jianmin Zhu
e7c9718446 qcacld-3.0: Add 3 ini for data rssi check when roaming
3 ini:
roam_data_rssi_threshold_triggers
roam_data_rssi_threshold
rx_data_inactivity_time
If there's rx activity during latest rx_data_inactivity_time
and avg of data_rssi is better than roam_data_rssi_threshold, then
suppress roaming triggered by roam_data_rssi_threshold_triggers: low
RSSI or bg scan.

Change-Id: I5b41c4119e61392b50e52ab8ccb8650e5758f3b3
CRs-Fixed: 2768053
2020-09-07 03:17:49 -07:00
Abhishek Singh
8d182461d5 qcacld-3.0: Fix whunt reassoc TC with ROAM_OFFLOAD_V1
Fix whunt reassoc TC with ROAM_OFFLOAD_V1.

Change-Id: I020b9c7f5a0da8ae8cf17e875bf1f40db240ca0c
CRs-Fixed: 2769761
2020-09-04 11:42:05 -07:00
Abhinav Kumar
267c385f2b qcacld-3.0: Enable SU Bformee in vendor VHTIE by default
Set default value of INI enable_subfee_vendor_vhtie to 1
to enable SU Bformee in vendor VHTIE by default.

Change-Id: I8a916495dd5c6ddfe78840dc6f35976fbdbbf8ba
CRs-Fixed: 2769257
2020-09-04 05:28:19 -07:00
Pragaspathi Thilagaraj
36907e74d5 qcacld-3.0: Add changes to send WMI_CHAN_LIST_CMD in connection mgr
Add changes to send WMI_CHAN_LIST_CMD in connection mgr

Change-Id: I79f96c400314be4e8a0b1aad5ecfe04e638d552d
CRs-Fixed: 2768812
2020-09-03 19:27:30 -07:00
Wu Gao
571fda61f9 qcacld-3.0: Fix typo about LFR configurations
This is a change for typo about LFR configuration. It uses ini -
"mawc_roam_ap_rssi_threshold", the correct is
"mawc_roam_rssi_high_adjust".

Change-Id: I7e29287b84559f58f13d191d6288534196b894da
CRs-Fixed: 2768752
2020-09-03 19:27:26 -07:00
Srinivas Girigowda
87b638fadb qcacld-3.0: Remove redundant __func__ from the logs
The logging macros implicitly takes care of embedding function name
in the log, hence there is no need to include __func__ again.
Getting rid of redundant __func__ reduces driver memory footprint.

Change-Id: Idf4685539991f65205f19b27551cef699230c82e
CRs-Fixed: 2768575
2020-09-03 19:27:18 -07:00
gaurank kathpalia
cb27dfd2e4 qcacld-3.0: Add support for sme_abort_roaming for ROAM_OFFLOAD_V1
Adds support for sme_abort_roaming for ROAM_OFFLOAD_V1.
Also fix compilation error for ROAM_OFFLOAD_V1.

Change-Id: I06247b1118b7dee32ff392b247e2e08e32dbaf9f
CRs-Fixed: 2768397
2020-09-03 15:24:56 -07:00