1
0
Gráfico de cometimentos

2471 Cometimentos

Autor(a) SHA1 Mensagem Data
Ashish Kumar Dhanotiya
8215f877a9 qcacld-3.0: Process radio stats events inside lock
Currently host driver processes radio stats events with
scheduler thread without any lock and invokes hdd callback.
In hdd these stats gets handled in user space thread and after
processing stats, user space thread frees the memory allocated
in wma. Since one thread allocates the memory and other
thread frees the memory, this can lead to race conditions where
this memory might not get freed and mem leak can happen.

With this change add locking mechanism to allocate, use and to
free the memory.

Change-Id: I95906133bb2208a258c5cec16f4f01b1321ed0c2
CRs-Fixed: 3020218
2021-09-06 06:20:54 -07:00
Bapiraju Alla
ec1b963bb9 qcacld-3.0: MLO connection
Fixes for Mlo connection.

Change-Id: Ieb879245cab340a952a6f89265fb01960fa8c691
CRs-Fixed: 3029685
2021-09-06 06:20:49 -07:00
Zhaoyang Liu
03d336b9ee qcacld-3.0: fix pktlog issue with ROME module
Use macro PKTLOG_LEGACY instead of HELIUMPLUS to avoid Rome
PKTLOG setup failure. PKTLOG_LEGACY is used for HELIUM/ROME.

Change-Id: If3476660f19606b84341cce084db3d06d69de4c5
CRs-Fixed: 3028261
2021-09-06 06:20:44 -07:00
Deeksha Gupta
b13cd6fade qcacld-3.0: Check for valid vdev_id in wma_is_roam_in_progress
When kickout event is received from firmware, the function
wma_is_roam_in_progress is called to check the roaming in
progress using vdev_id .

Vdev_id needs to be checked for valid vdev_id prior to
derefencing it.

Change-Id: Ib56895ad73b5dcefe7a0b9f65089306bf42d78eb
CRs-Fixed: 3020665
2021-08-29 16:01:17 -07:00
Srinivas Dasari
3aeaeefe07 qcacld-3.0: wma to target_if migration of roam pmkid request evt
Currently, wmi_roam_pmkid_request_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I3fad4e4d7ceeb85c632723e161809bf980d5375f
CRs-Fixed: 3014248
2021-08-28 00:29:22 -07:00
Vijay Patil
23999e417d qcacld-3.0: wma to target_if migration of roam_auth_offload_event
Currently, wmi_roam_auth_offload_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I128db23077d423c5e5ecf27636bc3af35cbbc58f
CRs-Fixed: 3010419
2021-08-28 00:29:16 -07:00
Utkarsh Bhatnagar
ac66479f44 qcacld-3.0: Add support to get thermal throttle stats
Add support for sending WMI_REQUEST_THERMAL_STATS_CMDID
to request for the thermal stats via vendor cmd:
QCA_WLAN_VENDOR_ATTR_THERMAL_CMD_TYPE_GET_THERMAL_STATS
This vendor cmd can either be used to clear the thermal
stats or to request for the thermal stats.
Added ini gThermalStatsTempOffset, which can
configure thermal temperature offset value for capturing
thermal stats in  thermal range such as Thermal STATS
starts capturing from temperature threshold to temperature
threshold + offset.
If this ini is set to 0, then the events are disabled.
Also, add support for the FW event where the requested
thermal stats are sent in FW event
WMI_THERM_THROT_STATS_EVENTID().
The following attributes are sent in the events for every
level:
	STATS_MIN_TEMPERATURE
	STATS_MAX_TEMPERATURE
	STATS_DWELL_TIME
	STATS_TEMP_LEVEL_COUNTER

Change-Id: If8acdeec5bde33be346332ccaf39d78d0151203d
CRs-Fixed: 3016818
2021-08-27 10:23:21 -07:00
Sai Pavan Akhil Remella
b35419136e qcacld-3.0: wma to target_if migration of roam_stats_event
Currently, wmi_roam_stats_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I5e336b01e1a2183e49b3e6eeb125c7c9fd0fd73c
CRs-Fixed: 3003125
2021-08-24 13:12:34 -07:00
Lincoln Tran
aa6b97d7f3 qcacld-3.0: Don't send legacy rates in 6GHz band
When operating in 6GHz band, don't send the peer legacy rates as it can
cause a rate mismatch and eventually a crash.

Change-Id: Idda718daaa66aeb5a80ed036055317e64f8226a2
CRs-fixed: 3005578
2021-08-23 21:24:31 -07:00
Utkarsh Bhatnagar
235135f84d qcacld-3.0: Fix unnecessary logs in connect path
Fix unnecessary logs in connect path.

Change-Id: I60a5e7380eccbe0406e45da398f1f690b09ce820
CRs-Fixed: 3016952
2021-08-18 18:43:27 -07:00
Jianmin Zhu
6ffbb3df4b qcacld-3.0: Fix issue that rx_mpdu is 0 for 11a/g mcs 0
For 11a/g mcs 0, preamble:OFDM 0, nss 1x1:0, channel width:20M, 0,
mcs 0 rate:0.
so (((_pream)) | ((_nss) << 3) | ((_bw) << 5) | ((_rate) << 8))  is 0,
so wmi_rate_stats.rate is 0,  rx_mpdu is set to 0.

Fix it by not setting rx_mpdu to 0 when rate is 0.

Change-Id: Ie12660480af42e26c2ea957b6576dbd395730522
CRs-Fixed: 3008693
2021-08-18 09:50:43 -07:00
Ashish Kumar Dhanotiya
d7a6c9e1cb qcacld-3.0: Do not free radio stats memory from wma
Currently driver frees the radio stats memory from wma
in error cases, there is a possibility that if hdd gets
time out for the stats request, it tries to free the radio
stats memory and at the same time if wma receives invalid
stats from fw in that case wma also tries to free the radio
stats memory which may lead to double free.

To aoid above issue, do not free the radio stats memory from
wma, in error cases hdd will free this memory after it gets
time out.

Change-Id: I6f6073a1a8e0be1b87efce288b7567e8fc8d69b0
CRs-Fixed: 3013842
2021-08-18 07:34:28 -07:00
Jia Ding
63ff4f1a48 qcacld-3.0: Support LLSTATS set for P2P mode
ll_stats_set vendor cmd is now only supported for STA mode.
Add support for P2P_GO and P2P_CLI modes since FW supports
LL_STATS for P2P mode as well.

For P2P_GO mode, use WMI_REQUEST_LINK_STATS_CMDID instead
of the club cmd WMI_REQUEST_UNIFIED_LL_GET_STA_CMDID.

Change-Id: I675ff87593e6eb80e1e1fef85ae1f46d24701d63
CRs-Fixed: 3012389
2021-08-17 13:17:46 -07:00
bings
4320b87f57 qcacld-3.0: Pass mld mac addr correctly when creating peer
Make sure mld mac addr is passed to wma when creating peer obj

Change-Id: I4500033d75edd59255e299174de1c49d09a45422
CRs-Fixed: 3014211
2021-08-16 01:08:33 -07:00
bings
90aa002a4a qcacld-3.0: Update correct trigger reason when cleaning up peer
Update correct clean up trigger reason for all the peer in mlo
mode

Change-Id: I6d2653aee2eb2935cfc76d095d570f10a4f52418
CRs-fixed: 3011398
2021-08-12 23:52:35 -07:00
Bapiraju Alla
aaff44964d qcacld-3.0: Create STA self peer with MLD mac address
For station case, create self peer with MLD MAC address.

Change-Id: I53b545763f15df5650e8b4b3dc7ea6ffddc88228
CRs-Fixed: 2994409
2021-08-11 01:33:11 -07:00
Jia Ding
6c3d6f1bd0 qcacld-3.0: Properly format log prints for EHT capabilities
Properly format log prints for EHT MAC and PHY capabilities.

Change-Id: I53a1bffa9099aaaf928e99c3fb931d52dc757285
CRs-Fixed: 3007966
2021-08-10 20:21:45 -07:00
sheenam monga
b6aa87c291 qcacld-3.0: Validate sub_ele_len before calculating len
Currently fw is allowed to provide ch_wr_ie len upto 20 bytes.
If fw provides ie len > 20 bytes then driver may lead to
access invalid memory. To find sub element, subelement len is
calculated from total len without any validation. ele may
point to invalid address when subelement which is calculated
from ie len becomes > len.

Fix is to compare ie len provided by fw with max ie len and
validate subelement len and then proceed with subelement.

Change-Id: I1a833c3828e4afc6e37ed27e008663152b6b5d86
CRs-Fixed: 2995818
2021-08-07 05:12:15 -07:00
Amruta Kulkarni
c71017d971 qcacld-3.0: Roam sync event migration
Wma to target_if migration for ROAM SYNC EVENT

Change-Id: Id2e9d5697f12f709cfdd665dabf1095863d87277
CRs-Fixed: 2990767
2021-08-07 02:58:54 -07:00
Kiran Kumar Lokere
e5265cee59 qcacld-3.0: Do not use NULL data packet for BSS max idle
Do not use the NULL data keep alive method if BSS max idle period
is advertised as NULL packet is not encrypted.
Set the keep alive data method to management if BSS max idle period
is set.

Change-Id: Ib30e8a426e18fe3564fc2de8d48e85fb53840718
CRs-Fixed: 3007868
2021-08-06 14:08:32 -07:00
bings
74c62ced54 qcacld-3.0: Provide peer_info for cdp_peer_create
As DP requirement, provide peer_info for API cdp_peer_create

Change-Id: Ib48c79316bb28584d768c723b22636d5f768445b
CRs-Fixed: 3004339
2021-08-05 15:13:18 -07:00
bings
bebd7a8b45 qcacld-3.0: Pass mld address and assoc link info when creating bss peer
MLO sta needs mld mac and assoc link information to create bss peer
Get mld address and assoc link info from connection manager and pass
it to bss peer creation

Change-Id: Ie04d4eb01f1a039f068b32b6c53aa3e65c919518
CRs-Fixed: 2987483
2021-08-05 15:13:13 -07:00
Amruta Kulkarni
14ef4d1333 qcacld-3.0: Create and delete ML peer context
Create mlo peer context after BSS peer create response and
delete mlo peer context before deleting bss peer.

Change-Id: I322ea83ebe0572b0d593a8988ff6c11e205b0f96
CRs-Fixed: 2972564
2021-08-03 06:54:30 -07:00
Jia Ding
49613d626f qcacld-3.0: Populate EHT MAC and PHY Caps to peer_assoc_params
Populate EHT MAC and PHY Caps to peer_assoc_params based on D1.0
definitions.

Also refine EHT MAC and PHY Caps logging.

Change-Id: I405ae01a1452e884137e368cceaf13ef2c670530
CRs-Fixed: 3001664
2021-08-02 13:38:57 -07:00
Srinivas Dasari
f39f703609 qcacld-3.0: wma to target_if migration of roam_scan_ch list_event
Currently, wmi_roam_scan_chan_list_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I8f59f9ebfe1bbdc7ef37ccc1f10178fe8128e912
CRs-Fixed: 2990376
2021-07-30 21:50:44 -07:00
Srinivas Dasari
a655f5e64e qcacld-3.0: wma to target_if migration of vdev_disconnect_event
Currently, wmi_vdev_disconnect_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I2486cc3f63c4b35305b60ac55cd0a622c7185323
CRs-Fixed: 2990373
2021-07-30 21:50:40 -07:00
Srinivas Dasari
cb5b2dde46 qcacld-3.0: wma to target_if migration of btm_blacklist_event
Currently, wmi_roam_blacklist_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.

Change-Id: I41d2ef6c228acd8f86f24107c02d11f1a8ac6dea
CRs-Fixed: 2990369
2021-07-30 21:50:35 -07:00
Srinivas Dasari
78cb3008e6 qcacld-3.0: wma to target_if migration of wmi_roam_event
Currently, wmi_roam_event_id data is extracted and processing is
also done in wma. This is not inline with component model where
target_if takes care of data extraction and handover the extracted
data to corresponding component(connection mgr in this case).
Add changes to support the same. As the legacy CSR/LIM is not
yet converged, have a wrapper from connection mgr to wma to call
these legacy APIs.

Change-Id: I0e22bbccfe21200b90771a01f9ee7454f4ecb119
CRs-Fixed: 2990355
2021-07-30 14:29:36 -07:00
bings
e4b737f105 qcacld-3.0: Rename API to wlan_peer_mlme_is_assoc_peer
wlan_peer_mlme_get_assoc_peer is renamed to wlan_peer_mlme_is_assoc_peer
Relace wlan_peer_mlme_get_assoc_peer with wlan_peer_mlme_is_assoc_peer

Change-Id: I2b3d98a359d2b8e4e7f3f5016be3ca7a7f3f888f
CRs-Fixed: 2999486
2021-07-26 13:54:00 -07:00
Jia Ding
ff7ff1ca4e qcacld-3.0: Populate EHT PHY and MAC caps from target
Populate EHT PHY and MAC capabilities from target to
tDot11fIEeht_cap structure.

Change-Id: Idf0af3c78afafcd5682760cdfd23bacd3c1dff76
CRs-Fixed: 2998861
2021-07-25 23:26:21 -07:00
Jianmin Zhu
d793245323 qcacld-3.0: Don't compare original value when set tx max power
For STA+P2P concurrency case, once p2p disconnect, STA max tx power is
updated in F/W too per SAR by design,  app can't correct it since reconfig
same max tx power as original is refused by driver.

Fix by not comparing cached max tx power for each vdev in driver when set
max tx power, can set same value as original again to F/W directly.

Change-Id: Ic417946006f07be40aa34f1dc022d7fb5c4aa213
CRs-Fixed: 2996316
2021-07-23 20:17:21 -07:00
Utkarsh Bhatnagar
91d6eaf0fd qcacld-3.0: Use wlan_cm_is_vdev_roaming() API in wma
Use wlan_cm_is_vdev_roaming() API in wma, instead of
wma->interfaces[vdev_id].roaming_in_progress.

Change-Id: Icb88246b2c45c052a1d42dece4983b1e534fe608
CRs-Fixed: 2993180
2021-07-23 18:01:40 -07:00
Lincoln Tran
f1591d8755 qcacld-3.0: Send MLO peer capabilities
Add path to enable the MLO capability flag when sending the peer assoc
command.

Change-Id: I9bfe8472ca0febbd98d3ddb999b4dc4f6c3e10f2
CRs-fixed: 2976191
2021-07-20 23:02:39 -07:00
Jyoti Kumari
f93a29459a qcacld-3.0: Add support for TWT ack event
In case if TWT command (i.e setup, terminate, pause, resume,
nudge) comes from userspace and if the firmware is in below mode
1. scan in progress
2. roam in progress
3. CSA is in progress
4. any other error
then the command needs to be rejected in userspace context

Synchronize the TWT commands so that whenever command goes from
driver to firmware, then driver will receive ack event first
followed by respective event (i.e add dialog, delete dialog,
pause, resume, nudge) with below condition
1. If driver receives the ack event as successful then driver
   waits for this ack event, respective event with status of the
   TWT action frame over the air is expected.
2. If driver receives the ack event as failure then it will
   reject the TWT command request in userspace context.

Change-Id: Ib68b89b74b5e44f28106884efd7412cee49f5bd8
CRs-Fixed: 2987978
2021-07-20 11:08:57 -07:00
Jia Ding
c62dc1e8b1 qcacld-3.0: Configure TSF auto report to target
As part of uplink delay report feature, send WMI cmd to
enable and disable target automatically sending TSF report
to HOST on a per vdev basis.

Change-Id: I79ef5bff5b91aca311ef16d7207e9dd2fb7ae0f2
CRs-Fixed: 2991975
2021-07-20 00:05:00 -07:00
Liangwei Dong
d5706bfc60 qcacld-3.0: Add policy mgr conn list validation
Add policy mgr connection list validation such as duplication
entry error. Flush the drv log and pause the logging
if error happens so that the issue log can't be overwritten
in stress test.

Change-Id: I037863de0bc5ecb8118c5792b6d73c3e200dd5c6
CRs-Fixed: 2991983
2021-07-19 05:38:37 -07:00
Jia Ding
eb0b786e14 qcacld-3.0: Save mac_id and mac_id_valid in TSF report
To support uplink delay calculation, FW will report mac_id and
mac_id_valid in TSF report so as to differentiate from legacy
TSF report. Thus save mac_id and mac_id_valid fields in TSF
report so that host can differentiate the TSF report purposes.

Change-Id: If76fd49ff9693a7733389d184a84360c0564216e
CRs-Fixed: 2991959
2021-07-16 12:13:28 -07:00
bings
79beb418ec qcacld-3.0: Save assoc request frame in qdf_nbuf_t
Legacy mlme need notify assoc request frame to mlo mgr. It should
be sent to mlo mgr in qdf_nbuf_t.

Change-Id: I192503a00346498408971462d3b15cc98efa9919
CRs-Fixed: 2976150
2021-07-16 06:19:41 -07:00
Rajeev Kumar
d0ab865de3 qcacld-3.0: Add wakelock for max clients connected for sap d3 wow
Due to memory limitations, FW only allows SAP clients connected D3 wow
up to 8 clients. Hence, add a wakelock on host. Once the 9th client
joins, hold the wakelock. And release the wakelock when the 9th client
leaves.

Change-Id: I940ab50bfd216452248eed71c1fb02b625354f7b
CRs-Fixed: 2986286
2021-07-14 17:53:39 -07:00
Amruta Kulkarni
0c30cb8f04 qcacld-3.0: Roam sync frame event Wma cleanup
Wma to target_if migration for ROAM SYNC FRAME EVENT

Change-Id: I2a56dadf7f45a13a577bdf49bc9514ab2e6dee29
CRs-Fixed: 2968404
2021-07-12 19:12:01 -07:00
Abhishek Singh
15222dc106 qcacld-3.0: Cleanup pCurRoamProfile from csr session
Cleanup pCurRoamProfile and related code from csr session

Change-Id: I58cd74ed82f6bbccbdea3218c83c18dab2a8afb4
CRs-Fixed: 2987926
2021-07-10 02:58:24 -07:00
Alan Chen
62341748f0 qcacld-3.0: Add new ini item enable_dynamic_pcie_gen_speed_switch
Add new ini item enable_dynamic_pcie_gen_speed_switch for enabling
dynamic PCIe gen speed change.

Change-Id: I7dde4e40e56bf894c7edd0805d09425444648e6b
CRs-Fixed: 2977079
2021-07-07 06:41:27 -07:00
Srinivas Dasari
c65ead975b qcacld-3.0: Let IOT APs recover by avoiding back to back DELBA
Station sends the BA and upgrades to the next possible BA window
size upon receiving all frames successfully from the current
window. Some IOT APs go out of sync from BA window size of the
station when AP fails to receive the BA sent from station. AP
transmits the frames again with previous window sequence number
and won't be ack'ed by station hardware as BA window has already
moved ahead. So, station deletes the upgraded BA and tries
to fallback.

Ideally, AP is supposed to consider the fact that "the previous
window transmission was successful when station upgrades to next
window size". But some APs take little longer time to
recover/upgrade to next window size. Don't delete the BA
immediately and have some tolerance(3 seconds) as the previous
negotiated BA just got deleted.

Change-Id: I6b277223f02dac521316cec20bd5d958785cc2e9
CRs-Fixed: 2970714
2021-07-06 02:15:48 -07:00
Vevek Venkatesan
14d84bf050 qcacld-3.0: add DP reason code support for send_delba
Add DP reason code support for sending DELBA request,
so protocol layer can make decisions for special cases.

Change-Id: I4eeba3513820a98a15682190e40a06ce178d9441
CRs-Fixed: 2983544
2021-07-06 02:15:43 -07:00
Yu Wang
3c0cf58dc4 qcacld-3.0: Add support for AWGN interference mitigation
Register callback function with dcs component to trigger
channel switch when AWGN interference is detected.

Change-Id: Ifb928b4d2b242eba3bd800207117b7c84a4531d6
CRs-Fixed: 2960240
2021-07-02 19:02:03 -07:00
Li Feng
4548644d92 qcacld-3.0: Set moddtim dynamically in the li offload mode
Extend hdd_config_modulated_dtim() to configure moddtim
dynamically in the both non li offload and li offload mode.

Change-Id: I8669ec618d4aa9cd87c4c234972ca500c98119b6
CRs-Fixed: 2970090
2021-07-01 04:24:12 -07:00
Yu Wang
c96692a0f9 qcacld-3.0: allow DCS interference event to wake up host
Set WOW event bitmap for WMI_DCS_INTERFERENCE_EVENTID.

Change-Id: I41d9101789adfdc954e4bade974113c51c7f6141
CRs-Fixed: 2960240
2021-06-29 15:04:53 -07:00
abhinav kumar
d6c9e893a0 qcacld-3.0: Print 5g & 6g candidate rssi threshold in kmsg
In case of WTC_BTM roam trigger reason, if FW reports rssi
threshold for 5G and 6G AP via wmi_roam_trigger_reason,
Host should print it in kmsg.

If wtc_candi_rssi_ext_present is set (1), It means fw
reports 5g and 6g candidate rssi (new firmware case).
If wtc_candi_rssi_ext_present is clear (0), It means fw
doesn’t report 5g and 6g candidate rssi (old firmware case).

Host use flag "wtc_candi_rssi_ext_present" to keep backward
compatibility.

Change-Id: Idbaac2e9d470525641c152b024b8786d262e600c
CRs-Fixed: 2965025
2021-06-29 12:45:35 -07:00
Yu Ouyang
3d25ada75c qcacld-3.0: clean flag chan_switch_in_progress if link tear down
If the channel-list that AP is asking us to switch is invalid, then
we cannot switch the channel. Just call lim_tear_down_link_with_ap()
to disassociate from AP. We will find better AP.
So, vdev_stop, peer_del, vdev_down will be sent. VDEV_MLME state
is back to init.

But, we didn't clean flag chan_switch_in_progress. When better AP
found, vdev will start. Because flag chan_switch_in_progress is true,
WMI_VDEV_RESTART_REQUEST_CMDID sent. But WMI_VDEV_START_REQUEST_CMDID
is expected. And then WMI_VDEV_RESTART_RESP_EVENT received.

Host will send WMI_PEER_SET_PARAM_CMDID with parameter ID
WMI_PEER_CHWIDTH(4) once WMI_VDEV_RESTART_RESP_EVENT received.
However, FW was already back to INIT state because vdev already down.
PEER state was init state, PEE_CHWIDTH set not allowed.

So, flag chan_switch_in_progress should be clean if vdev_stop sent.

Change-Id: I1b72b2a774b80b3725c7a21ec0d308036d551dcb
CRs-Fixed: 2970123
2021-06-29 03:54:14 -07:00
Abhishek Singh
046eb026ea qcacld-3.0: Code cleanup for connection manager in LIM/WMA
Remove unused code related to ndef FEATURE_CM_ENABLE in LIM/WMA.

Change-Id: I1697f0a6c9102e3b70ce6f7a1c78ea895d4d160b
CRs-Fixed: 2977902
2021-06-28 12:24:29 -07:00