提交線圖

26356 次程式碼提交

作者 SHA1 備註 日期
Rahul Gusain
25383f2539 qcacld-3.0: Fix the error handling for NDP txrx
Currently, in host driver, if ucfg_dp_init_tx_rx fails, it returns
error and this error is handled in hdd_init_nan_data_mode by
unregister the wext and detroying the vdev.
But wext unregister fails as it is waiting for rtnl_lock forever
which causes CPU to struck there.

To fix this, add rtnl held flag which will check rtln lock is
supported or not.

Change-Id: Ibc826ace63919979d743f6c8fcc26f1438d25274
CRs-Fixed: 3248716
2022-07-23 21:04:29 -07:00
Sandeep Puligilla
33c1960b40 qcacld-3.0: Enhance MLO debug information
11be supported draft information is added in the
UMAC debug logs.

Change-Id: I99808a775b8442ca764c4336809628c7f8541b5a
CRs-Fixed: 3237799
2022-07-23 21:04:23 -07:00
Madan Koyyalamudi
f3ad583e8c Release 5.2.1.30C
Release 5.2.1.30C

Change-Id: Ifcc923bd5ab91fc6dfd2fff0326935fcde21cb24
CRs-Fixed: 774533
2022-07-23 19:14:35 -07:00
Jianmin Zhu
897377cab3 qcacld-3.0: Add assoc link bit in mlo_support_link_band
Add assoc link bit in mlo_support_link_band to indicate supported band of
assoc link.
bit4: 2 GHz
bit5: 5 GHz
bit6: 6 GHz

Change-Id: I8fa156f43656ba91b8622ce12034ddad0bcf28a2
CRs-Fixed: 3250252
2022-07-23 19:14:34 -07:00
Gururaj Pandurangi
ecb16fabc7 qcacld-3.0: Update params based on new EML caps struct
Update the params based on the new MLO EML caps struct.

Change-Id: I01639f8bb6b0bf98d1486dbdc3cc0442f090a86d
CRs-Fixed: 3245988
2022-07-23 19:14:29 -07:00
Madan Koyyalamudi
0060dd3dcf Release 5.2.1.30B
Release 5.2.1.30B

Change-Id: I79d7e0c22f75e7c1a3492fe8f33898dbad94acb3
CRs-Fixed: 774533
2022-07-23 17:31:48 -07:00
Divyajyothi Goparaju
487d2210e2 qcacld-3.0: Avoid illegal memory access
Currently In os_if_monitor_mode_configure API,
tb attribute is getting accessed before parsing
the data coming from userspace.
This is leading to illegal memory access.

Move tb attribute access after parsing userspace
data with API wlan_cfg80211_nla_parse.

Change-Id: Ia972ebb87e18ed82c6c3a2ff3ce2d10a4b9685b9
CRs-Fixed: 3241952
2022-07-23 17:31:48 -07:00
Madan Koyyalamudi
0c9211ab2a Release 5.2.1.30A
Release 5.2.1.30A

Change-Id: I14bbbd103e9608ec46f695a7c9deafc54d5572f7
CRs-Fixed: 774533
2022-07-22 06:59:55 -07:00
abhinav kumar
8c996f7c38 qcacld-3.0: Logging enhancements for GET driver cmds
For the below GET driver command, print the value
before sending it to user space to enhance automation
tools:
1. GETDWELLTIME for 2 GHz, 5 GHz and 6 GHz channels
2. GETSCANCHANNELTIME
3. GETSCANHOMETIME

Change-Id: I8d090898828049107d4a00bbc3622665aa0e30ac
CRs-Fixed: 3247541
2022-07-22 06:59:55 -07:00
Bing Sun
6d47c060d1 qcacld-3.0: Update HE bw after extracting EHT opertion IE
For 11BE mode, channel width information may be set in EHT
operation IE, and 11BE sta should populate its channel width
information in HE capabilities IE after extracting EHT operation IE.

Otherwise 11BE sta can't sends correct bandwidth information
to 11BE AP.

Change-Id: I08b4b61ad21017fde52d504f6d3e5c9b1e948950
CRs-Fixed: 3246725
2022-07-22 06:59:49 -07:00
Srinivas Dasari
1e3b509a22 qcacld-3.0: Rate limit DELBA process logs
AP/peer may send DELBA continuously in some error scenarios.
Host driver generates a dump of the frame in INFO level
and a log in ERROR level for each DELBA received. This
results in excessive logs to the kernel logging.
Rate limit the logs to avoid spamming kernel logs.

Change-Id: I94b11b76b862924672e06520b5bf2e731ec462df
CRs-Fixed: 3248606
2022-07-22 06:59:44 -07:00
Madan Koyyalamudi
1225910f06 Release 5.2.1.30
Release 5.2.1.30

Change-Id: Icd09f35c5989912689ed80965fc0ef660bf57a5b
CRs-Fixed: 774533
2022-07-22 02:43:39 -07:00
Azmath Mohammed
842dc538f3 qcacld-3.0: Display control pipes info on WOW ack failure
Display control pipes info on WOW ack failure which helps to
debug issues when full debug history is not available.

Change-Id: I6a84aa01c07831b7109d0741337cae6ac0be2f44
CRs-Fixed: 3246284
2022-07-22 02:43:38 -07:00
Madan Koyyalamudi
d97593419b Release 5.2.1.29Z
Release 5.2.1.29Z

Change-Id: I8762469a426fb4ae0dd0624a19b3be3869b9ffa8
CRs-Fixed: 774533
2022-07-21 23:08:41 -07:00
Divyajyothi Goparaju
89752dbdf5 qcacld-3.0: Check return value of hdd_process_peer_chain_rssi_req
Currently host does not check the return value of
hdd_process_peer_chain_rssi_req, returns success
on error case as well in __wlan_hdd_cfg80211_get_chain_rssi.
Also double conversion of qdf status to os_if status
is taking place which is giving wrong error status.

Remove extra status conversion and consider the return value
of hdd_process_peer_chain_rssi_req.

Change-Id: I387a36afe80eb4e7aa5bad746074d077b20de331
CRs-Fixed: 3245972
2022-07-21 23:08:41 -07:00
Jyoti Kumari
977a4af84c qcacld-3.0: Remove csr_roamstart_bssparams structure
Add all members of csr_roamstart_bssparams structure to
parent structure and remove csr_roamstart_bssparams structure

Change-Id: Ifa9f38305e72de45776d6ead25a7053063792382
CRs-Fixed: 3247189
2022-07-21 23:08:35 -07:00
Madan Koyyalamudi
847185c77e Release 5.2.1.29Y
Release 5.2.1.29Y

Change-Id: I0b9d820411cb34e1cb1c0d7a129962b03bd95e70
CRs-Fixed: 774533
2022-07-21 21:09:19 -07:00
Surya Prakash Sivaraj
ba05c22b03 qcacld-3.0: Fix FT-FILS roaming failure
The AP rejects the FILS-IM association request with reason
"Invalid IE format". In the assoc request, two problems are
seen:
    1. The RSN IE has a junk group management cipher suite.
    2. FILS HLP container IE is fragmented, and the fragment
       IE does not immediately follow the HLP container IE.

In the assoc request, the RSN IE encoded in the authentication
is unpacked and the PMKID is replaced with the pmkr1 name
derived at the end of FILS authentication. Currently, the
existing PMKID in the RSN IE is replaced only if the group
management cipher is present. In non-802.11w case, the new
PMKID is appended at the end of existing PMKID, and leads to
improper IE format.

To fix this, replace the existing PMKID whenever PMKID is
present.

To fix invalid HLP container IE format, encode the HLP
container and its fragment IEs together in the assoc request.

Also, inorder to get the pmksa match from the crypto table for
a FT-FILS, fill both ssid and cache ID. Without cache id, the
cached entry is not updated with MDIE.

Change-Id: I654b5527a726eb7872b90fb19a3d97623f3caa68
CRs-Fixed: 3233081
2022-07-21 21:09:18 -07:00
Aditya Kodukula
c4efabebb6 qcacld-3.0: Avoid rssi overwrite for big data stats
Currently for big data stats, driver stores correct rssi
value in cache_conn_info. But since vdev is in disconnected
state and unified_ll_stats_get_sta command is queried periodically
for every 3 seconds, firmware will now return 0 as a new rssi value.
The correct rssi value which is stored in cache_conn_info now
gets overwritten in hdd_lost_link_cp_stats_info_cb.

To avoid this issue, do not overwrite the rssi value for
big data stats if the rssi value returned by firmware is 0.

Change-Id: Iee0dba113d6ed684c00230a2714744191bcd0f7f
CRs-Fixed: 3248245
2022-07-21 21:09:09 -07:00
Madan Koyyalamudi
39088d2e82 Release 5.2.1.29X
Release 5.2.1.29X

Change-Id: Id831412fb548cd8e9b3661951c07e08cae126e9e
CRs-Fixed: 774533
2022-07-21 17:48:08 -07:00
Mohammed Ahmed
73f6d2fde0 qcacld-3.0: hdd: Fix kernel documentation in files(1/n)
Fix kernel documentation in files for kernel-doc rules to resolve
kernel-doc script warnings.

CRs-Fixed: 3237683
Change-Id: I3ba8e8c559a105ca0bc55219b623c606d2acca56
2022-07-21 17:48:08 -07:00
Madan Koyyalamudi
4c26310b33 Release 5.2.1.29W
Release 5.2.1.29W

Change-Id: Ifb2d8586692083cb26cc50a7f6cf07327f936f7d
CRs-Fixed: 774533
2022-07-21 11:01:54 -07:00
Nirav Shah
05edbb507f qcacld-3.0: Correct description of ratemask_set ini
Correct description of ratemask_set ini for VHT mode
to avoid wrong configuration.

Change-Id: I91b887d8268f8faa0d0c32f90da032d00eaa14f2
CRs-Fixed: 3198950
2022-07-21 11:01:54 -07:00
Madan Koyyalamudi
100dd5a1ed Release 5.2.1.29V
Release 5.2.1.29V

Change-Id: I1928bbf86299688216e72b84375227cb6943bb3a
CRs-Fixed: 774533
2022-07-21 07:46:06 -07:00
Vinod Kumar Myadam
618d070651 qcacld-3.0: Enable feature flag PKTLOG_HAS_SPECIFIC_DATA
In ath_pktlog_hdr, uint32_t type_specific_data member is
required for the framework while parsing with structure
type wh_pktlog_hdr_v2_t and without this member leads to
crash in userspace.

wifi hal expects "status" variable which is inside struct
packet_dump to be of "tx_pkt_fate" enum and any value
other than this will cause a tombstone crash.

As sizeof (struct ath_pktlog_hdr) is different in driver
and wifi hal, if PKTLOG_HAS_SPECIFIC_DATA is not enabled
then "status" is not decoded at correct offset which
causes the crash

So, feature flag PKTLOG_HAS_SPECIFIC_DATA is made available
globally to avoid crashes in userspace.

Change-Id: Ie6aca4bbcb5795595945cc4470162ab32c9c6734
CRs-Fixed: 3241071
2022-07-21 07:46:06 -07:00
Madan Koyyalamudi
d722b1a825 Release 5.2.1.29U
Release 5.2.1.29U

Change-Id: I9f93e2d8cb90a8749942c6c87ea1883fbbb6d931
CRs-Fixed: 774533
2022-07-21 05:50:37 -07:00
abhinav kumar
f66512e051 qcacld-3.0: Avoid possible NULL pointer dereference
In target_if_get_roam_vendor_control_param_event_handler,
there are 2 possible NULL pointer dereference issues:

1. Host calls target_if_get_psoc_from_scn_hdl API to get
   psoc object. But as per current logic even if psoc is
   NULL, psoc is dereferenced by passing it as an argument
   to get_wmi_unified_hdl_from_psoc.

2. Host calls get_wmi_unified_hdl_from_psoc API to get
   wmi_handle pointer. But as per current logic even if
   wmi_handle is NULL, wmi_handle is dereferenced by
   passing is as an argument 1 to function
   wmi_extract_roam_vendor_control_param_event.

Fix is to update the sanity check logic for psoc and
wmi_handle pointers to avoid possible NULL pointer
dereference.

Change-Id: I3c3df062b538b05218e729d7bf6806e221073269
CRs-Fixed: 3242435
2022-07-21 05:50:37 -07:00
Madan Koyyalamudi
645dab45ba Release 5.2.1.29T
Release 5.2.1.29T

Change-Id: Ia03c4b59f7e47cafd840e0f658dd67d3b5cf6a89
CRs-Fixed: 774533
2022-07-20 00:14:19 -07:00
Utkarsh Bhatnagar
45601af361 qcacld-3.0: Restrict TDLS 2.4 GHz bw to APs
Restrict BW for TDLS when connection is made
in 2.4 GHz to that of AP.
Also, restrict the BW if the TDLS connection
is made in DFS channel.

Change-Id: Ida8693837b4b8e11a706b5b9fa482399630d2beb
CRs-Fixed: 3246100
2022-07-20 00:14:19 -07:00
Madan Koyyalamudi
f87cb0505b Release 5.2.1.29S
Release 5.2.1.29S

Change-Id: If91a817da7004d59bc7f76efd5c07fd28e7d91d6
CRs-Fixed: 774533
2022-07-19 22:31:53 -07:00
Ashish
02feb5207d qcacld-3.0: Validate bw in lim parse tpe ie
Currently host driver does not validate bw in lim parse tpe ie
api before it gets next higher bw, there is a possiblity
that this bw becomes invalid and driver ends up with out of bound
access for get higher bw array.

In current scenario when host driver tries to start vdev on
frequency 5640 for country US and executes this API for frequency
5640, at the same time country is changed to CN and this frequency
becomes invalid. so in the execution of this API host driver gets
invalid bw from reg set param and ends up with out of bound access
for get higher bw array.
To address above issue, add a check to validate bw before driver
acceses get higher bw array.

Change-Id: I335057f75f67408275003b3fd7830c740eead301
CRs-Fixed: 3239465
2022-07-19 22:31:53 -07:00
Madan Koyyalamudi
c859401253 Release 5.2.1.29R
Release 5.2.1.29R

Change-Id: I6b64b0890be91ea5497fe5c8ff742a6d7a58c4b3
CRs-Fixed: 774533
2022-07-19 18:51:09 -07:00
Amruta Kulkarni
7becf9ee33 qcacld-3.0: Handling of ML probe response
- Validate and process the ML probe response
- Drop the beacon frame if ml probe sent flag is true

Change-Id: Id55cd381bab334628650e19e74044ca102f65dbc
CRs-Fixed: 3237674
2022-07-19 18:51:09 -07:00
Madan Koyyalamudi
a829700951 Release 5.2.1.29Q
Release 5.2.1.29Q

Change-Id: I10af7138aeb162e6624978b15da352d2812a6ce7
CRs-Fixed: 774533
2022-07-19 13:49:35 -07:00
Srinivas Dasari
7fcf50b5c1 qcacld-3.0: Consider AUTO phy_mode in legacy platforms as well
Currently, phy_mode AUTO is not considered for candidate scoring
config if the platform doesn't support 11BE currently. This is
added as part of 11BE changes and the mode is considered fine
before the change I7f35379b94dcb64dec0da463b95967125dc7fd14.
This doesn't seem to be intentional.
So, consider phy_mode AUTO also for legacy platforms.

Change-Id: Id2eaa8208f5bf5a875e1e72a2117a24b070e6e6b
CRs-Fixed: 3242455
2022-07-19 13:49:34 -07:00
Jinwei Chen
d7e0ec3e67 qcacld-3.0: check memory size in dp_prealloc_get_context_memory
check memory size in dp_prealloc_get_context_memory, if memory size
needed > pre-allocated, then fall back to dynamic memory allocation.

Change-Id: I2727feef066046b54dff9206a1f6699ef4455fe8
CRs-Fixed: 3222594
2022-07-19 13:49:29 -07:00
Rahul Gusain
e0c46cf74e qcacld-3.0: Add support for NDI del virtual intf
Currently host driver deletes NDI interfaces using
vendor command. With the kernel 5.12 version onwards,
interface deletion is not allowed using vendor commands
as it leads to deadlock when driver tries to acquire
the RTNL_LOCK at the time of netdev register/unregister.

With this change, support both del_virtual intf and ndi
delete vendor cmd to stop and deinit adapter.
Now, with NDI delete vendor subcmd, NDI is down as stop adapter
and deinit adapter is executed and del virtual intf will clean
up(stop, deint and close) the adapter.
Since ndi delete vendor cmd already comes with the rtnl lock
and driver does not need to take the rtnl lock again
which will help to avoid the above issue.

Change-Id: I0fe69b1648dc76b902b8eea1fc4aef695d1bd152
CRs-Fixed: 3170293
2022-07-19 13:49:24 -07:00
Madan Koyyalamudi
9059d14776 Release 5.2.1.29P
Release 5.2.1.29P

Change-Id: I11ed84eb30a167742721ea034f21f45ee83b1236
CRs-Fixed: 774533
2022-07-19 07:06:31 -07:00
Rahul Gusain
6dc9fa750c qcacld-3.0: Send deauth frame to STA if OCI is invalid
After channel switches to new channel, STA sends sa query request to
AP/SAP device. SAP process sa query request and if OCI is invalid in
that sa query, then it sends deauth to STA on new channel.

Change-Id: I52a5dcaf2e0826d3bd899d7f52f02400927c4ae6
CRs-Fixed: 3227530
2022-07-19 07:06:31 -07:00
Madan Koyyalamudi
47d9394625 Release 5.2.1.29O
Release 5.2.1.29O

Change-Id: If1b397272e23c3a7110c66f9566207c437fed6ee
CRs-Fixed: 774533
2022-07-19 03:33:42 -07:00
VIJAY RAJ
702557e085 qcacld-3.0: Roam reason and sub-reason code conversion during diag logging
Wrong value of Roam reason and sub-reason code is sent to
userspace via diag logging.

Convert the value of reason and sub-reason code to qca
specific code before sending it to userspace

Change-Id: Iebdc5f8673e2da6a208a89caca9a742202256bcc
CRs-Fixed: 3236178
2022-07-19 03:33:41 -07:00
Ananya Gupta
33d6134296 qcacld-3.0: Disable feature to deliver all OOR frames to stack
Disable DP_RX_DELIVER_ALL_OOR_FRAMES feature
This reverts commit I3ad59fc3b3fc8e70b2f05a7cfa23e2646c1e03a4.

Change-Id: I786b03daebbf412e75015b5eabe561dfa36614c8
CRs-Fixed: 3235707
2022-07-19 03:33:35 -07:00
Madan Koyyalamudi
ae1f0044a0 Release 5.2.1.29N
Release 5.2.1.29N

Change-Id: Idf32a161678c4ea4b7783751277efcf95821a53d
CRs-Fixed: 774533
2022-07-19 01:35:44 -07:00
Vinod Kumar Pirla
6fad793761 qcacld-3.0: Check dynamic NS offload based on trigger
Currently a userspace request to enable NS offload dynamically
gets rejected if the offloads are in disabled state.

After this change, when a request to enable or disable of NS offloads
is received in the host and if the trigger type is to dynamically update
the NS offloads, then update the dynamic offload configuations and inform
the FW.

Change-Id: Ifb4a1d37b5f2e6c89d043b00f9cc0aaf426d870e
CRs-Fixed: 3237980
2022-07-19 01:35:44 -07:00
Madan Koyyalamudi
bcf4fe9a55 Release 5.2.1.29M
Release 5.2.1.29M

Change-Id: I9e40a598b3ced3749a7b93ac9d09f79d7e7f8ebc
CRs-Fixed: 774533
2022-07-18 23:36:10 -07:00
Gururaj Pandurangi
9605f2337c qcacld-3.0: Add host fixes related to EMLSR association
Add following host fixes related to EMLSR association.
1) Use phy cap get macro to extract EMLSR hw mode id.
2) Add logic to send EMLSR cap flag during vdev start.
3) Add logic to copy EML caps from assoc link common
info subfield to MLO peer assoc struct in order to
share EML caps to FW on both links via peer assoc.
4) Add checks to update EMLSR cap flag only if both
STA and AP support and advertise EMLSR mode.
5) Send EMLMR support flag along with EMLSR support
flag to FW as part of vdev set IE cmd for roaming
scenarios. Also, update common info length when EML
caps are present.

Change-Id: Ied2570d498a43adadd93899d4fdbe023d320676b
CRs-Fixed: 3235059
2022-07-18 23:36:09 -07:00
Jyoti Kumari
10414f0f46 qcacld-3.0: Update cbmode during start bss
When intolerant STA connects to SAP, the forty MHz intolerant bit
will be set to 1 in assoc request frame.
So when supplicant triggers to change the channel width, the
secondary channel offset or supported channel width ie in HT info
field of beacon should be 0 instead of 1.

As part of fix, copy sec_ch_offset from start_bss_config
structure and store it to cbmode of csr session during bss
start. So whenever channel width change request comes, this
cbmode will have non zero value and it will set the secondary
channel offset as 0 internally.

Change-Id: Iaa5461ef7d72e9bdf942dd0faab7c0409611ca7e
CRs-Fixed: 3245288
2022-07-18 23:36:04 -07:00
Madan Koyyalamudi
a2cb479c3e Release 5.2.1.29L
Release 5.2.1.29L

Change-Id: Ia33638eaad28975f2bbabf27e2cf362d794d0521
CRs-Fixed: 774533
2022-07-18 21:18:58 -07:00
Liangwei Dong
f31505e491 qcacld-3.0: Fix 2.4 GHz SAP can't be started on 40 MHz
If SAP is initially started on 40 MHz bandwidth, keep using it.
But still keep the old logic 20 MHz for internal CSA for SAP.
This is to fix the SAP can't bring up on 2.4 GHz 40 MHz bw if SAP
OBSS scan disabled and configured as HT40 in hostapd conf.

Change-Id: Ib01be7fe594130f1eee35e3bfb773b1e913ec9c1
CRs-Fixed: 3234564
2022-07-18 21:18:58 -07:00
Madan Koyyalamudi
03f2ad7fe5 Release 5.2.1.29K
Release 5.2.1.29K

Change-Id: I9877525cfea5039cc56e3a807014ef430133fc74
CRs-Fixed: 774533
2022-07-18 17:44:25 -07:00