Commit Graph

1918 Commits

Author SHA1 Message Date
Pragaspathi Thilagaraj
ba7f3371ee qcacmn: Set LTF keyseed required for existing peer also
LTF keyseed required flag is set only for newly created PASN
peer. This value is filled from the security mode value received
the PASN peer create request event from the firmware.
If PASN peer already exists, then the peer is just added to the
peer list and secure LTF keyseed required flag is not updated.
This leads to wrong sequence of commands going to firmware.

Expected sequence: Install TK -> Set LTF keyseed -> PASN Auth
STATUS.

Observed Sequence: Install TK -> PASN Auth status -> Set LTF
keyseed -> PASN Auth status.

So set the is_ltf_keyseed required flag for already existing
PASN peer also

Change-Id: If9994ad01a96bdb26ad55538a67feaed7e22892f
CRs-Fixed: 3742573
2024-03-29 15:51:58 -07:00
Vinod Kumar Pirla
0d945daa64 qcacmn: Extend vdev stop and peer delete cmd for link switch
Enhance WMI command of existing peer delete and VDEV stop to
add new TLV to carry MLO params with link switch BIT set when
link switch is in progress.

Change-Id: I50b1aa48e4e2c976a56bcd3b75395eef6830e627
CRs-Fixed: 3663340
2024-02-18 22:37:29 -08:00
Pragaspathi Thilagaraj
3918591d4f qcacmn: Parse roam abort reason in wmi_roam_result TLV
Add support to parse roam abort reason in wmi_roam_result TLV

CRs-Fixed: 3712575
Change-Id: I06481186852ce6a1b4b9466c76f96b3a2bddfa41
2024-02-09 03:51:42 -08:00
Lin Bai
6fbd10b2eb qcacmn: Fix function prototype and definition mismatch
Fix function prototype and definition mismatch,
to avoid compiler complain.

Change-Id: I21729bf9daa6561d6282bb456451e1e1a0748609
CRs-Fixed: 3674783
2024-01-16 08:15:45 -08:00
Lin Bai
ece2e29fdf qcacmn: Fix uninitialized variable used issue
Fix uninitialized variable used issue,
to avoid compiler complain.

Change-Id: I21729bf98aa6561d6282bb456451e1e1a0748609
CRs-Fixed: 3674783
2024-01-16 08:15:35 -08:00
Jianmin Zhu
476e23f5cb qcacmn: Add service bit for p2p device update mac addr
Add service bit for p2p device update mac addr dynamically.

Change-Id: Ib957aa606c640e6b94db580e33a4454e90da2f49
CRs-Fixed: 3687270
2023-12-28 13:01:22 -08:00
Asutosh Mohapatra
56e6df6383 qcacmn: Send additional interface combinations to fw
As part of set feature set command, update STA_P2P,
STA_SAP, STA_NAN, STA_TDLS, STA_SAP_P2P, STA_SAP_NAN,
STA_P2P_NAN, STA_P2P_TDLS, STA_SAP_TDLS, STA_NAN_TDLS,
STA_SAP_P2P_TDLS, STA_SAP_NAN_TDLS, STA_P2P_P2P_TDLS,
STA_P2P_NAN_TDLS iface combinations to fw.

Change-Id: I360ee80778ce4a7a89341374ab3e861890507ef2
CRs-Fixed: 3674698
2023-12-14 09:10:54 -08:00
Jianmin Zhu
7555136c16 qcacmn: Avoid assert for race condition issue
If wmi_update_stats_event_id handler is unregistered between
wmi_unified_get_event_handler_ix and wmi_handle->event_handler
called in __wmi_control_rx for race condition issue, assert will
happen for invalid event_handler.

To avoid it, validate wmi_handle->event_handler when call it.

Change-Id: Ibcb0c076c3d5f80f506f3338dd0c5ee313e5a9b7
CRs-Fixed: 3667177
2023-12-07 22:38:58 -08:00
jinbao liu
7f2e70fcec qcacmn: Add wmi APIs for multi rx reorder queue setup
Add wmi APIs for multi rx reorder queue setup to save setup time.

Change-Id: I5a4c89b88b4ba076d1883edc44b075fbceca27eb
CRs-Fixed: 3659035
2023-12-07 22:38:47 -08:00
Will Huang
b55e7ac81f qcacmn: Add support of sending multiple COEX config
Add an API to support sending multiple COEX config in one WMI command.
This is to optimize and save target host to firmware WMI command
communication time.

Change-Id: Ie510ee3ebfca67a2b748c403ec52a8d7b597f676
CRs-Fixed: 3651226
2023-12-05 02:18:28 -08:00
Srinivas Dasari
91f4b92931 qcacmn: Add debug logs at WMI layer to dump the mcast filters
Currently, mcast filter mac addresses are logged at PM layer
as part of filter preparation, but it's difficult to understand
which mac address are sent to firmware.
Add logs for the same at WMI layer to dump the final mcast
filters.

Change-Id: I43c8b0e1107129a0070f141eb3edda75349d5233
CRs-Fixed: 3669791
2023-11-28 04:08:34 -08:00
Asutosh Mohapatra
3ed7625c2a qcacmn: Check wmi service ext2 bit set with caution
Currently while checking for wmi service bit,  if
service bit is part of service ext2, host is not
validating if service bit index is valid or not,
and returns incorrect value.

For example, if host is checking for
WMI_SERVICE_PDEV_PARAM_IN_UTF_WMI and
num_wmi_service_ext_bitmap value is 4 then this service
bit can't be set, but seeing this value is set.

To address this issue if service ext2 bit
index is valid or not.

Change-Id: Ie4c766219e3793b46fa88dddb9544786142b92ef
CRs-Fixed: 3662190
2023-11-28 00:43:48 -08:00
Ashish Kumar Dhanotiya
6d2a8d0925 qcacmn: Add support for ll_lt_sap service capability
Add support for ll_lt_sap service capability

Change-Id: I8c180c824faa804d52c25b7a0f2649f5c2c02fcd
CRs-Fixed: 3647648
2023-11-12 15:23:07 -08:00
Rakesh Boyina
47cbcd3bd0 qcacmn: WMI mapping changes for recommended max active links
WMI mapping changes for recommended max active links parameter

Change-Id: Iea9b674f47d23bd9e392cdafb1f6b08b1a28fda3
CRs-Fixed: 3643059
2023-11-05 12:37:03 -08:00
Ashish Kumar Dhanotiya
fc3c65c255 qcacmn: Add bearer switch WMI interface changes
When there are more than one audio transport mediums
are available, there is a possibility to switch the
audio transport medium from one medium to another
medium.
To provide this support to switch the audio transport
medium, and to indicate the status of the bearer
switch to fw, add WMI interface changes.

Change-Id: Ic9a2406e3be339b644ff8918a2a0f95705b0620b
CRs-Fixed: 3653960
2023-11-03 10:09:36 -07:00
Madhavan Ganesan
86db3eda0e qcacmn: Update the fixed param for UTF command and event id
Update the fixed param for UTF WMI command and event id.
Update the pdev_id in UTF command id.

Change-Id: I67d1e5698a31acd630a4c4f60410dff454999c5d
CRs-Fixed: 3648165
2023-10-31 01:49:26 -07:00
Himanshu Batra
e0aa09dbbf qcacmn: Add WMI pdev param for 3-link MLO TX
Add WMI pdev param for 3-link MLO TX

Change-Id: I39b1ed7e8e7967f60d1815929980ff0cce80d085
CRs-Fixed: 3648527
2023-10-31 01:49:13 -07:00
Himmat Lal
9bad623d07 qcacmn: Add WMI support for ulofdma_rtd feature
Add WMI support for ulofdma_rtd feature

CRs-Fixed: 3630903
Change-Id: I1359ea807b072dc7e53a68e1e823944927547afc
2023-10-19 14:42:55 -07:00
Linux Build Service Account
f92a6676c0 Merge "qcacmn: Support 5 GHz high RSSI roam" 2023-10-17 17:40:04 -07:00
Srikanth Marepalli
2ed0f23533 qcacmn: Support 5 GHz high RSSI roam
Support 5 GHz high RSSI roam to higher band

Change-Id: Id757e33161177007a27d150e7fe595e8210849bc
CRs-Fixed: 3630716
2023-10-17 15:53:36 -07:00
Linux Build Service Account
2faf139b73 Merge "qcacmn: Extract band info from wmi_roam_neighbor_report_info" 2023-10-17 14:40:27 -07:00
Srikanth Marepalli
8e03aad368 qcacmn: Do not fill roam fail reason in roam success case
Firmware doesn't fill any roam fail reason in roam success case,
which would result in having fail reason value as '0'.
But driver ends up converting the reason '0' to 'unknown'.
So, convert the roam fail reason only in roam fail case.

Change-Id: I0fea2788673e049fd078bcc6200b9612e538ee37
CRs-Fixed: 3632850
2023-10-11 20:52:25 -07:00
Vinod Kumar Myadam
9bb0d120db qcacmn: Add support for INI twt_disable_info
Add support for INI twt_disable_info

Change-Id: Ib82f238b60e9b56636b9209edfc1e9773708553f
CRs-Fixed: 3629015
2023-10-04 08:13:45 -07:00
Vijay Raj
da8873f2bd qcacmn: Extract band info from wmi_roam_neighbor_report_info
In API extract_roam_11kv_stats_tlv(), band info value is
fetched from wmi_roam_scan_info. This results in failure
during active mode when single tlv is sent for each event
as wmi_roam_scan_info tlv is not populated for event
expect for roam specific events.

Extract band info from wmi_roam_neighbor_report_info
tlv for neighbor report and BTM events in order
to overcome the above mentioned issue.

Change-Id: Ie53ec36ea1b788219b33f0956b489d5bbe0bb9b0
CRs-Fixed: 3631719
2023-10-04 02:32:20 -07:00
Gururaj Pandurangi
852d0cee43 qcacmn: Add support to configure MLD ID in scan request
In the MLO-MBSSID test, STA can request information of
non-Tx BSS through Tx BSS by configuring non-Tx BSS MLD
ID within the ML probe request that is invoked as part
of scan request. Add support to configure MLD ID in
scan start params to FW.

Change-Id: I4a6debf6c3ec830fbe3aee1d3aa60ad7218cbcd6
CRs-Fixed: 3591596
2023-10-02 20:30:12 -07:00
Aasir Rasheed
8c6365939b qcacmn: Send max num of active links to fw
This change is to send max num of active links recommended
by AP to the fw.

CRs-Fixed: 3599429
Change-Id: Id84b7d1aa8d6eb29d3acef2f3e8c552bc6c636f0
2023-10-01 18:12:23 -07:00
Huashan Qu
ad7c045aca qcacmn: Add NULL check for scan_info pointer
Add NULL check for scan_info pointer to avoid NULL pointer deference
in function extract_roam_trigger_stats_tlv().

Change-Id: I42f957d00b1ad27845782f099865210eb4ba24a0
CRs-Fixed: 3624591
2023-09-27 22:14:06 -07:00
Amruta Kulkarni
02a38d9b75 qcacmn: Add wmi service bit support for t2lm
Add support for wmi service tid to link support.
Fw will indicate t2lm support using this bit.

CRs-Fixed: 3605468
Change-Id: I4d5f4e587da1cf362dcfaf2d89e7af176a115dcf
2023-09-26 14:41:11 -07:00
Aasir Rasheed
7b3fb7fb8b qcacmn: Add wmi interface to send CSA status indication
This change is to add wmi interface for sending channel
switch Announcement event status indication from host driver.

Change-Id: I4b22280e4e4c85ebf54394c80d4fefa62eef4b2d
CRs-Fixed: 3616927
2023-09-26 05:26:18 -07:00
Surya Prakash Raajen
6bd218f3be qcacmn: Send standby pdev info to FW
Send standby pdev/radio which is expected to be up while
in powersave mode to FW, to switch master control for
timers.

Change-Id: I4b48d93859359d1b6aee0b9993fd1bd3bff863f2
CRs-Fixed: 3621705
2023-09-25 05:17:23 -07:00
Paul Zhang
a64af3b447 qcacmn: Get profile index and count for non-tx AP
In the scenario about MLO 5 GHz + 6 GHz and 6 GHz is non-tx AP in
MBSSID, if DUT tries to connect 5 GHz link as assoc link and uses
the scan entry generated from 5 GHz beacon. Then there is no info
about profile index and count in the scan entry and these info is
necessary for firmware when vdev up.

To resolve this issue, get the info from 6 GHz scan entry if it
exists.

CRs-Fixed: 3616899
Change-Id: Ic9bf9bc107c3486be1e87ea2c19c5d388ca41883
2023-09-25 01:30:04 -07:00
Linux Build Service Account
0ad872defa Merge "Revert "qcacmn: Trigger recovery when WMI command is sent in wow mode"" 2023-09-22 01:13:57 -07:00
Shashikala Prabhu
f58bde59f4 qcacmn: Print the timestamp of FW_HANG command and Tx completion
A customer has reported an issue regarding the FW not asserting when it
receives the WMI_FORCE_FW_HANG_CMDID from the host. We need to confirm
whether the FW actually receiving the command or it is stuck in the WMI
command queue because it’s full.
To do this, adding some prints along with the timestamps in the WMI command
path and WMI command Tx completion path.

Change-Id: Ib4d6423365a150f91597a9d83ab8a85a053de777
CRs-Fixed: 3598136
2023-09-21 17:57:34 -07:00
Aditya Kodukula
7c2ddd6c3e qcacmn: Hide 4th and 5th bytes of MAC address
Currently in the driver, we hide 2nd, 3rd and 4th bytes of the
MAC address in GKI builds. Since 2nd and 3rd bytes are needed for
debugging, hide only 4th and 5th bytes of the MAC address.

Change-Id: Ia432bb0d40e0a09b56e581f192a810e727127d3a
CRs-Fixed: 3616774
2023-09-20 20:10:21 -07:00
Jianmin Zhu
e5f945ccce Revert "qcacmn: Trigger recovery when WMI command is sent in wow mode"
This reverts Change-Id: I65efe5601e15055c5407f085e1fdcae5b28d6b81.
Its okay to fail send request instead of triggering crash recovery.
Triggering self recovery is only for fatal errors which can’t be
recovered without doing SSR.

Change-Id: I59532074c361bba4412ceb66f3f0e1e99d73bf06
CRs-Fixed: 3617795
2023-09-19 17:21:37 -07:00
Vijay Raj
75a684099b qcacmn: Add support to handle WMI_MLO_LINK_STATE_SWITCH_EVENTID
Register event handler for WMI_MLO_LINK_STATE_SWITCH_EVENTID.
Add target if event handler for the
WMI_MLO_LINK_STATE_SWITCH_EVENTID event, and register
corresponding mlo manager callbacks.

Add extract API for link state switch event parameters received
Call the diag event API from MLO manager post extracting the
event

Change-Id: Ib588ee87a5c37c6a34c86ce8cbf134a273c6461b
CRs-Fixed: 3610041
2023-09-15 21:09:43 -07:00
Surya Prakash Raajen
ff56ef27f4 qcacmn: Add mlo teardown support for standby active mode
Add mlo teardown support for standby active mode in
mlo setup sequences and wmi

Change-Id: Iaa727527c53ff0ad6c7682e039ef23fa537e1ae0
CRs-Fixed: 3613367
2023-09-15 17:34:13 -07:00
Aasir Rasheed
760a93969c qcacmn: Implement handling of mlo standby csa
Implement handling of mlo sta standby csa beacon
and initiate the transmission of a link bss request
command tlv to the firmware for standby link.

Change-Id: Ibdf903c69757b47f301ab9fa7c563407915532d6
CRs-Fixed: 3605764
2023-09-13 14:20:44 -07:00
Gururaj Pandurangi
0b84f05679 qcacmn: Fix compilation warnings on x86
Fix the compilation warnings on x86.

Change-Id: Ic9edafc5b33462f5c96faa391e6441141aa09837
CRs-Fixed: 3591586
2023-09-12 23:35:21 -07:00
Amruta Kulkarni
7dd25ffe56 qcacmn: Add debug prints for Vdev start and peer assoc
Change is made to add debug prints for VDEV start
and peer assoc commands sent to FW.
This change is made to help with debugging logs.

CRs-Fixed: 3611450
Change-Id: I40a0991330edd4ba71b7b71f2f7cf36364f4f365
2023-09-12 23:34:49 -07:00
Srinivas Pitla
734c9fcae7 qcacmn: Add WMI service support for WSI stats info
This change adds service bit support for WSI stats
to FW

Change-Id: I06119c2196b951393e8bbbb82bd4a10436207d63
CRs-Fixed: 3601765
2023-09-11 15:50:57 -07:00
Aditya Sathish
25c27f83e0 qcacmn: Add support for WSI link info libraries
Add support to capture ingress and egress stats
in the MLO manager

Change-Id: Ife0acab15ba802c953cfcf3a720c6e54933ded5e
CRs-Fixed: 3601749
2023-09-11 15:50:46 -07:00
Pragaspathi Thilagaraj
1c1ebf792c qcacmn: Fix two enum members using same name
Fix the conflict between the host and fw enum
for mlo teardown reason.

CRs-Fixed: 3610563
Change-Id: I20638ed0cbe6b88e20f48815c236e92b833a34a9
2023-09-11 03:38:57 -07:00
Vijay Raj
e762867930 qcacmn: Extract MLO specific data for BTM logging
Extract MLO band data from roam stats event for
BTM query, BTM request and BTM response logging.

MLO Band refers to the band of the link involved
in MLO conenection.

Change-Id: Ia60821f7973fe1d39eb824a3eac7791672503084
CRs-Fixed: 3583688
2023-09-09 03:36:54 -07:00
Vijay Raj
489ba59cfe qcacmn: Add MLO support for roam_scan_stats_tlv
Modify roam_scan_stats_tlv and roam_scan_ap_stats_tlv
to introduce mlo specific elements for Roam scan start
and Roam candidate ap logging.

Change-Id: I8e72abc3b888614faf533fd8086cf73a29c26f85
CRs-Fixed: 3582433
2023-09-08 04:12:34 -07:00
Deeksha Gupta
1a1cc914ec qcacmn: Added new parameter in p2p_set_noa command
Added support for new "start" parameter in
p2p_set_noa driver command.

CRs-Fixed: 3598704
Change-Id: I6c9c06ea58e1736dedb3a241b1f04f1b9ce71b44
2023-09-05 20:19:25 -07:00
Vijay Patil
0adf2938cc qcacmn: Add support to handle PEER_OPER_MODE_CHANGE event
Firmware sends PEER_OPER_MODE_CHANGE event to host in SAP
mode when a connected client indicates upgrade/downgrade
of its bandwidth.
Host needs this data as any further SAP bandwidth
upgrade/downgrade should honor the indicated bandwidth for
that specific peer.

Change-Id: If15f491fd970486d8e84d1845866688d837ea2b4
CRs-Fixed: 3604865
2023-09-05 15:15:11 -07:00
Tiger Yu
d187eb44e0 qcacmn: Fix the memory leak for the wmi_rx_diag_work_queue
Add workqueue destroy in the wmi detach for the wmi_rx_diag_work_queue
to avoid the system memory leak.

Change-Id: Ic183ddaa2e53292a50e0b379877a92ddcaf45b02
CRs-Fixed: 3597405
2023-08-31 18:36:49 -07:00
Sai Rupesh Chevuru
94eb798731 qcacmn: new WMI peer param to update DMS capability
new WMI peer param to update DMS capability.

Change-Id: I497a8beb2d0afae27b18eac056e7f3a5fcf47f82
CRs-Fixed: 3598740
2023-08-31 18:36:19 -07:00
Amruta Kulkarni
1684c8ceac qcacmn: T2LM timer changes
Currently the T2LM timer is maintained by host.
Code change made to add support to run the T2LM timer in FW.

CRs-Fixed: 3594141
Change-Id: I7eee4800f68b07d5492a0336e3fe8e0db17d2020
2023-08-31 11:02:17 -07:00