Grafik Komit

15924 Melakukan

Penulis SHA1 Pesan Tanggal
Liangwei Dong
4a869886ec qcacld-3.0: Fix driver logging stop in dual STA SSR
In STA+STA case, if SSR happens, driver will clear the
no_of_active_sessions = 0 at the beginning of wlan shutdown
by policy_mgr_clear_concurrent_session_count.
In the shutdown process, one STA will be disconnected and
in the setting PCL of second STA, the no_of_active_sessions
will be decreased to 255 from 0
in policy_mgr_store_and_del_conn_info.
Fix by move the policy_mgr_clear_concurrent_session_count
to policy mgr enable/disable.

Change-Id: I70bcc60fe3030db71376a626d6f9625fe299417d
CRs-Fixed: 3063772
2021-10-27 22:24:37 -07:00
bings
bdca7e1af3 qcacld-3.0: Indicate assoc req to son
Indicate assoc req frame to son

Change-Id: Ic5779011cc248ad6fc8b341170b64ac45a1d5a9c
CRs-Fixed: 3043011
2021-10-27 22:24:28 -07:00
bings
3395095322 qcacld-3.0: Do not kickout sta if it is in band steering
When a sta is being steered, sending a deauth may interrupt the
association/EAPOL handshake on the new BSS.

Do not kickout sta if it is being steered.

Change-Id: I15dd26bca27699087cdb790de8cb95281dade385
CRs-Fixed: 3042990
2021-10-27 20:53:09 -07:00
Srikanth Marepalli
a4128d5887 qcacmn: Add roam set param command for roam params
This change introduces the new roam set param WMI command to set
the roam params from host to FW.
Also added a fail_bssid param in wmi_roam_result TLV to know the
roam failed AP BSSID from the FW.
Added a new vendor command event for sending roam events stats
attributes to userspace.

Change-Id: I7a08635a7912cbd940d90a2d62433296740ad913
CRs-Fixed: 3050799
2021-10-27 12:15:50 -07:00
Srikanth Marepalli
742b2805c0 qcacmn: Vendor command to configure/trigger the roam events
Introduce a new vendor command QCA_NL80211_VENDOR_SUBCMD_ROAM_EVENTS
that aims to configure/trigger the roam events from the driver.

Change-Id: Ifd9464cc8cb485890c8d171dc136d377f7a59fa1
CRs-Fixed: 3028404
2021-10-27 12:15:45 -07:00
Ananya Gupta
122bc19864 qcacmn: Fix REO reinjection path in hamilton DP
Add HAL APIs to fix REO reinjection path in hamilton DP

Change-Id: I73c6ec0aeb2f6d4bc72b366e22e9bc826f852426
CRs-Fixed: 3058549
2021-10-27 07:05:06 -07:00
Amir Patel
6d6881fff4 qcacmn: Fix compilation issues from monitor mode
Fix compilation issues from monitor mode

Change-Id: If687dd91bbf29d2bb7d30546e6c1e332cc97d220
2021-10-27 05:34:17 -07:00
Jianmin Zhu
fb1db30308 qcacmn: Fix wrong rssi in monitor mode
If ppdu rssi unit is dbm, need convert to db for API:
qdf_nbuf_update_radiotap, only need convert once for first mdpu in the
ppdu. if convert for each mpdu, wrong rssi will be saved.

Change-Id: I85e92121ddb289e3513022ff092083825197efb4
CRs-Fixed: 3057041
2021-10-27 02:36:07 -07:00
Ke Huang
a317f7c615 qcacmn: Adjust the IPA WDI2 CONS/PROD definition
Adjust IPA WDI2 CONS/PROD definition for the IPA support on
sa415m for Genoa.

Change-Id: I7d73cd8d2843875fa6208cb520d49d4f6170fef7
CRs-Fixed: 3042786
2021-10-26 21:02:53 -07:00
Jyoti Kumari
2f0c94020d qcacld-3.0: Validate 3-port combo p2p+p2p+sta based on fw cap
Check the existing two connection are in below comibation or not
GO + GO
GO + GC
GC + GC
GO + STA
GC + STA
If the existing two connection are in above combination and third
connection comes as GO or GC or STA then check whether firmware
supports p2p-p2p concurrency or not.
if firmware supports p2p-p2p concurrency and third connection is
GO or GC or STA then only allow the third connection as GO or GC
or STA otherwise do not allow third connection as GO or GC or STA
with above combination.

Change-Id: I0c2408232e84438dc5dd8d104b75fdee126aa31f
CRs-Fixed: 3043845
2021-10-26 12:29:54 -07:00
Utkarsh Bhatnagar
7c2c085f4b qcacld-3.0: Use Policy Mgr Debug to print Freq info
Use Policy Mgr Debug to print Frequency Range info.

Change-Id: Ia54b8d99bc1f4c6141b83b1e7f5348ca791d8f6e
CRs-Fixed: 3062730
2021-10-26 08:18:40 -07:00
Jianmin Zhu
7a0af0ae4e qcacmn: channel_switch_complete_evt need wake up all waiting threads
2 threads blocked to wait channel_switch_complete_evt for SAP channel
switch is already in progress,  qdf_event_set only woke up 1st thread
later,  2nd  thread still kept blocked with hold  net_dev for debug id
NET_DEV_HOLD_COUNTRY_CHANGE_UPDATE_SAP, leak happened.

Change-Id: Ib76318dd4a613ca1852a56b7701a04385b69ba56
CRs-Fixed: 3061976
2021-10-26 04:44:10 -07:00
Himanshu Batra
b981e05832 qcacmn: Add API to get link peer assoc req buffer
Add API to get link peer assoc req buffer

Change-Id: I293a86f8eaaaf5a2e02802388960386848201a2c
2021-10-26 04:44:06 -07:00
Jianmin Zhu
1997a414a0 qcacld-3.0: channel_switch_complete_evt need wake up all waiting threads
2 threads blocked to wait channel_switch_complete_evt for SAP channel
switch is already in progress,  qdf_event_set only woke up 1st thread
later,  2nd  thread still kept blocked with hold  net_dev for debug id
NET_DEV_HOLD_COUNTRY_CHANGE_UPDATE_SAP, leak happened.

Change-Id: Iad296f68aeaefe5a6b88ad6bea95cc377b2ae515
CRs-Fixed: 3061960
2021-10-26 04:43:44 -07:00
Himanshu Batra
ff8ee42eac qcacmn: Add API to get dp peer authorize state
Add API to get dp peer authorize state.
Also modify dp_tx_get_rbm_id_li to update rbm for IPA offload
scenario

Change-Id: I0f8cca4623a1c3b840f336aa6d67740951cb6700
2021-10-26 03:10:03 -07:00
Jia Ding
af1339925a qcacmn: Add 160p160 and 320 in enum wmi_host_channel_width
enum wmi_channel_width has defined WMI_CHAN_WIDTH_160P160
and WMI_CHAN_WIDTH_320. Therefore add corresponding
definitions in enum wmi_host_channel_width, which is then
1-to-1 mapped to enum wmi_channel_width.

Change-Id: Iff5dc1f678874e1d15581a1ebbacc06c25d09699
CRs-Fixed: 3062062
2021-10-26 01:15:22 -07:00
Pragaspathi Thilagaraj
2fb3776e11 qcacld-3.0: Allow ADDROAMSCANFREQUENCIES irrespective of roam scan control
Based on the new NCHO requirement, allow ADDROAMSCANFREQUENCIES to add
roam scan frequencies irrespective of the roam scan control value.

Change-Id: I5742f6d590e3ec51bfb294610ede05b1935a4790
CRs-Fixed: 3046763
2021-10-25 20:19:00 -07:00
Yue Ma
9579188f04 qcacmn: Add wrapper API wlan_cfg80211_nla_strscpy
From 5.11 kernel, nla_strlcpy() is renamed to nla_strscpy() since
it works more like strscpy() than strlcpy() after the enhancement.
Hence handle it accordingly in WLAN driver by creating wrapper API
wlan_cfg80211_nla_strscpy().

Change-Id: I4c5ca1738048605c842c827d1706353bc012fed8
CRs-fixed: 3060060
2021-10-25 18:31:25 -07:00
Yue Ma
6c387e6f24 qcacmn: Include panic_notifier.h to access panic_notifier_list
From 5.14 kernel, panic_notifier_list is moved from kernel.h to
panic_notifier.h, hence explicitly include the header file in
order to access panic_notifier_list.

Change-Id: Icf546ebea5a19b79602031b4fd92b498db0048c0
CRs-fixed: 3060060
2021-10-25 18:31:21 -07:00
Aditya Sathish
af7379f8c4 qcacmn: Fix the second cfreq2 for channel 33 for 320MHz
Fix the second cfreq2 frequency returned by the service
API, wlan_get_320_center_freq, for a channel ranging
between 33 (6115MHz) to 61 (6225MHz).

CRs-Fixed: 3060832
Change-Id: I656a5d6633cfa48aaeff5f0ba53e4c6138f5d8f8
2021-10-25 12:15:47 -07:00
Gaurav Sharma
0be0d71e91 qcacmn: Handle announce timeout value in TWT setup command
Handle announce timeout value that is received as a part of
the TWT setup command and provides it to the firmware through
the WMI_TWT_ADD_DIALOG_CMDID. If timeout value is non-zero
then firmware waits up to timeout value to use data frame as
announcement frame. If timeout value is 0 then firmware sends
explicit QoS NULL frame as announcement frame on SP start.

Change-Id: I682d1dc4e304042e4e9b8d6c6a73dc13fbbdccab
CRs-Fixed: 3053956
2021-10-25 07:47:15 -07:00
Tallapragada Kalyan
5026c5a3d3 qcacmn: Add nbuf and nbuf->data prefetch in Lithium RX
Adding a nbuf and nbuf->data prefetches in 2nd loop
of Lithium datapath RX improved UDP throughput by
about 250Mbps.
PINE default driver: 3189Mbps @ 100% core-3
PINE with prefetch:  3469Mbps @ 100% core-3

Note: PINE reo ring is mapped to core-3.
Change-Id: I7f166b52c3697facdce3954994755c9c1412c1f3
2021-10-25 07:47:11 -07:00
Gaurav Sharma
47d6589295 qcacmn: Add TWT attribute to configure TWT related parameters
Add QCA_WLAN_TWT_SET_PARAM TWT attribute to configure TWT related
parameters.

Change-Id: I0fb5fdb3518705f9ae7fcd144b3de1ba8aafd372
CRs-Fixed: 3054075
2021-10-25 07:47:06 -07:00
Gaurav Sharma
361b27b945 qcacmn: Add TWT vendor attribute to configure announce timeout value
Add QCA_WLAN_VENDOR_ATTR_TWT_SETUP_ANNOUNCE_TIMEOUT attribute to
configure announce timeout value for announce TWT session.

Change-Id: If9d14c78347e9a5075d132f444d14295a666cd03
CRs-Fixed: 3055553
2021-10-25 07:47:01 -07:00
Surya Prakash Sivaraj
be788b58f7 qcacld-3.0: Save ext cap IE from join request
Host sends the EXT CAP IE based on the capability
coming from the supplicant in join request. But, after
roaming the cached join request will be freed. Therefore,
after roaming few capabilities sent by the userspace are
not saved and therefore lost in reassoc request.

Save the EXT CAP IE from the join request in the VDEV
and use the cached capability for sending Ext cap IE.

Change-Id: I71947388b4c6e9e56a5832557416d9b462de70e2
CRs-Fixed: 3038496
2021-10-24 23:17:55 -07:00
Shwetha G K
31b6632b36 qcacmn: Waikiki CFR HAL changes
Waikiki CFR HAL changes

CRs-Fixed: 3057984
Change-Id: Ibe19f580eff3d70764abc4031665d3c1299cdb8f
2021-10-25 10:04:32 +05:30
Wu Gao
3ea97cb758 qcacld-3.0: Reduce log level when get unexpected action frame
There is frequent output when get unexpected vendor specific action
frame. So, add this change and reduce the log level.

Change-Id: I9d832546a4436bdf7dd25cb00a7de5cce1295b31
CRs-Fixed: 3060750
2021-10-22 20:49:17 -07:00
Srinivas Dasari
32e5171037 qcacld-3.0: Drop the blacklist event if no APs are present
Currently, target_if forwards the blacklist event to upper layers
even if there is no AP info present. This event can be dropped in
target_if to avoid accessing unallocated memory.

Change-Id: Icfaabb0a8e3304882979ffde7f5cd27fd4c8a067
CRs-Fixed: 3057424
2021-10-22 18:19:15 -07:00
Yu Wang
f09d8efa11 qcacmn: add wmi support for MLO link set active command
Add wmi support for MLO link set active command.

Change-Id: If0dbadc3d0687bfeee9e2ddb14e9c843f5ba9250
CRs-Fixed: 3036840
2021-10-22 14:25:57 -07:00
Naga
85bfde2f0a Revert "qcacmn: Enable timer based low threshold interrupt"
This reverts commit Ia33b110337e610ab9b5d7a9cecb61f6952cd3379.

Change-Id: I07e2c8565b2aaa6cfd55b262d65ba0269a0a1d8a
2021-10-22 12:41:13 -07:00
Pragaspathi Thilagaraj
aa648a7c18 qcacld-3.0: Send beacon miss disconnection logging event
Add support to send beacon miss disconnection logging event.
Fix the diag attribute end marker in the event table.

Change-Id: I11fc8859af383b69bcba42654fb3a2bc597fef83
CRs-Fixed: 3056266
2021-10-22 12:40:53 -07:00
Pragaspathi Thilagaraj
671676a37d qcacld-3.0: Enable time sync only on connection/roam
Currently WMI_DBGLOG_TIME_STAMP_SYNC_CMDID command sent
every 1 sec causes RTPM collapse and inturn has power
impact. So to avoid this enable time of the day synchronization
only after connection/roaming.

Send WMI_DBGLOG_TIME_STAMP_SYNC_CMDID as part of RSO
start command.

Change-Id: Iee3cefe1318a6e5507a43cefb9666cc2a439fe06
CRs-Fixed: 3060762
2021-10-22 12:40:33 -07:00
Arun Kumar Khandavalli
0e4c14ca77 qcacmn: Return assoc peer as true in case of mlo disabled
In certain cases the driver checks whether the peer is a assoc link
or non-assoc link, in case of legacy connection when mlo is disabled
return true for assoc link.

Change-Id: I50e6b22754ffb26fbb4b7892a962bc754479f7a8
CRs-Fixed: 3059278
2021-10-22 10:20:42 -07:00
Ashish Kumar Dhanotiya
91dbd69b0e qcacmn: In restart case invoke regulatory callbacks only once
Currently driver invokes regulatory callbacks after pdev create
and from reg cc event processing. In case of restart of the
driver because of SSR or idle restart, driver ignores the default
country and sets the user set country which was there before SSR
or idle shutdown. Now driver continues restart and creates pdev.
During pdev creation it propagates reg rules from psoc to pdev
which was there in psoc before shutdown and after pdev creation
it invokes the regulatory callbacks, as part of this hdd dynamic
callback is invoked and it tries to schedule the regulatory work.
Since idle restart is a vdev operation so driver is not able to
schedule the work as it does not get the dsc op and it waits for
500 ms to reschedule the work. In this 500ms time driver gets the
response of the set country command which was sent to fw to set
user country. This command also invokes the hdd dynamic callback
and regulatory work gets scheduled and scan channel list command
is sent to fw.
Now if any scan is going on in the FW and after 500ms if first
work gets rescheduled, it again sends the scan channel list to fw
which cancels the ongoing scan.

To address issue, add a change to not invoke regulatory callbacks
from pdev creation if user country set is pending.

Change-Id: I5686163644409ef19507c19ae31f7f1e7892931f
CRs-Fixed: 3054603
2021-10-22 06:14:50 -07:00
Rakesh Pillai
c634e23cf7 qcacmn: Fix the parsing of current pn in REO error path
The current PN is a 128-bit field which was incorrectly
stored into a 64-bit variable, leading to stack corruption.

Fix this by increasing the size of the variable
for current PN to 128-bits.

Change-Id: Ib26cc0bb7d244360afb258a55d5b9a8ddd6aa4ca
CRs-Fixed: 3059345
2021-10-22 03:04:53 -07:00
Naga
3e3c3c8df3 qcacmn: Fix to disable full monitor mode
Fix to disable full monitor mode.

CRs-Fixed: 3057668
Change-Id: I43238db8bf29ab3c7c24d8e5bea537cbd28da896
2021-10-21 22:07:57 -07:00
Srinivas Dasari
35d6ddcb06 qcacld-3.0: Move nan pdev declaration to right place
pdev is declared in nan_enable_req after a variable-size array.
Place the pdev declaration before the array to avoid corruption
while copying contents to the buffer.

Change-Id: I92766c40909bcecaed5f1eb6e2f015447f3c8221
CRs-Fixed: 3060146
2021-10-21 15:49:02 -07:00
Krishna Rao
0d7d011c82 qcacmn: Move basic 802.11 definitions from crypto to common
Move basic IEEE 802.11 field definitions that are not specific to
cryptographic functionality, from a cryptography related header file
to a common header file for IEEE 802.11 definitions so that these can
be used by other 802.11 protocol processing modules. The crypto header
file already includes the common header file, so there is no effective
change in code visibility of the definitions for crypto code.

Change-Id: I439fe818a457cc7694fdb431f5d2c1a7552f2caa
CRs-Fixed: 3059572
2021-10-21 14:05:49 -07:00
aloksing
2674d65536 qcacmn: Add tx capture timer stop flag
Add stop timer flag to avoid resubmission of tx capture work queue timer
while del_tiimer_sync.

CRs-Fixed: 3056656
Change-Id: I72bfb6916f02297b15bb733359c0e4d7f91f0b73
2021-10-21 08:55:47 -07:00
Hariharan Basuthkar
ef0a6ab42b qcacmn: Trigger ACS only if AFC master chan list is non-empty
When the AFC response has a disjoint set of CFIs and frequency range,
the ACS trigger is called even though the AFC master channel list is
empty.

Due to this, ACS happens even though the AP's destination power
mode is LPI.

To fix this issue, call ACS trigger only if the AFC master channel list
is non-empty.

Change-Id: I217d23827b34ac577649b82b278a203bf01fa1f6
CRs-Fixed: 3052805
2021-10-21 07:31:07 -07:00
Pragaspathi Thilagaraj
589f8b8bff qcacld-3.0: Add support for BTM request logs in connection manager
As part of target if convergence, roam stats event handling
is moved to target if from wma. BTM request logs are not
sent in the new path.

Add support for BTM request logs in connection manager.

Change-Id: Icc66c5dc608260f2a0f75c5d1a85c799195f9f3e
CRs-Fixed: 3054987
2021-10-21 06:02:45 -07:00
Sai Rupesh Chevuru
ba3f9c04c8 qcacmn: Update TID value in skb priority from the MPDU buffer
Update TID value in skb priority from the MPDU buffer.

Change-Id: I707190f0c3095b4c47bd4b3cffd4a94f5952939c
CRs-Fixed: 3037067
2021-10-21 02:33:44 -07:00
Santosh Anbu
5479ef4492 qcacmn: Add API to update mlo params in start request
Remove ifdef macro inside a function and move the mlo param
update to separate function.

Change-Id: I2037519fda00c17efcec3bab34340f27d58324c0
CRs-Fixed: 3058432
2021-10-21 01:11:55 -07:00
Edayilliam Jayadev
f1527f6374 qcacmn: Handle overflow of management rx reorder list
Deliver the oldest management frames to upper layers if
the management rx reorder list grows beyond the maximum
configured size.

Change-Id: Id0199849e26804310dd502051b8e14f56f0df795
CRs-Fixed: 3051431
2021-10-20 00:32:56 -07:00
sheenam monga
728d7cf617 qcacld-3.0: pcl code clean up
In current implementation, validation code of
SCC, MCC, DBS or SBS is repetitive for all
combinations.

Remove repetitive validation code and make
common apis for scc, mcc and dbs validation.

Change-Id: Ic88f01dd9bbcc3d5dcc3453b2c6fef030cfe0305
CRs-Fixed: 3052959
2021-10-19 16:25:21 -07:00
Srinivas Dasari
6fb15f3572 qcacld-3.0: Abort any ongoing p2p scans while enabling NAN
Framework disables p2p before enabling NAN as P2P+NAN concurrency
is not supported. NAN operations happens through wifihal and p2p
operations happen through wpa_supplicant which are two different
userspace components. Wifihal call to enable NAN may come to host
driver before disabling p2p through wpa_supplicant. There are high
chances for p2p scan to be in running state while NAN enable is
received. Firmware NAN state machine goes to inconsistent state
and disables NAN as p2p scan is running in such cases.
So, stop the ongoing p2p scan before enabling NAN as P2P+NAN
concurrency is not supported currently.
Also, forward the pdev to NAN component inorder to iterate through
all P2P vdevs.

Change-Id: Ibe30a5ebe90514aee4f6721cdc5476570524cad8
CRs-Fixed: 3054576
2021-10-19 16:25:15 -07:00
Krishna Rao
7c24c73fd8 qcacmn: Add size definitions for subfields in Basic ML Common Info
Add definitions for size in octets for the following subfields in the
Common Info field of Basic variant Multi-Link element: BSS Parameters
Change Count, Medium Synchronization Delay Information, EML
Capabilities, and MLD Capabilities. These definitions are as per
IEEE802.11be D1.0 (but also happen to apply as of IEEE802.11be D1.2).

Change-Id: I36725292f29da1f03caed6baa5d25c02a06c2c4f
CRs-Fixed: 3057853
2021-10-19 14:06:08 -07:00
Himanshu Batra
2100a410a5 qcacmn: Add APIs to modify connect_req/connected vdevs bmap for ML STA
Add APIs to modify connect_req/connected vdevs bmap for ML STA

Change-Id: I3c68f2f7a87db49eb72ddf0d9e85ae7387974c85
2021-10-19 09:49:48 -07:00
Zhaoyang Liu
08e7ee70fe qcacmn: clear pcie low power interrupt register after suspend
For specific QCA6174 device, need clear LOW_POWER_INT_MASK register
bit3/4 to disable pcie low power interrupt after suspend, bit3 is for
INTR_L1SS and bit4 is for INTR_CLKPM, this is to fix issue that PMIC
VREG_L30A don't turn off when XO is in shutdown state.

Change-Id: I4833e4143c48a3bf734745a5e772a7a76a94d63c
CRs-Fixed: 3028269
2021-10-19 05:35:16 -07:00
Himanshu Batra
d0ac79827e qcacmn: Clear vdev MLO Cap as part of updating vdev mlme address
The MLO cap is getting reset as part of getting valid candidate, this is
leading to reset of MLO cap for supplicant selected ML candidat as well.
Add fix to Clear vdev MLO Cap as part of updating vdev mlme address

Change-Id: I19ce9711011173505a829dc5b308e8890b8ffe6c
2021-10-18 20:56:19 -07:00