커밋 그래프

1337 커밋

작성자 SHA1 메시지 날짜
Edayilliam Jayadev
1c9f82f0ec qcacmn: Use PPDU duration to find end time stamp
Use the PPDU duration given by FW to find the end time
stamp of management frames.

CRs-Fixed: 3181500
Change-Id: Ibabe82c8e2d3cd7e494e764a9a2baeded89a7300
2022-04-28 10:40:59 -07:00
Edayilliam Jayadev
3a96deddfb qcacmn: Read all the snapshots before wait count calculation
Read all the REO snapshots before calculating wait count.

CRs-Fixed: 3181495
Change-Id: Ica542f3c5ff8d32c983b82100bdf29761d0bf872
2022-04-28 10:40:48 -07:00
Basamma Yakkanahalli
a9b55f2c20 qcacmn: APIs to handle MLME VDEV OP flags
Added APIs set, get, and clear mlme vdev op flags.

Change-Id: Ibc20e07553545fd3c30f42f192171922f63e4b4c
CRs-Fixed: 3161657
2022-04-28 08:40:18 -07:00
Edayilliam Jayadev
94d603ee9b qcacmn: Add support for multiple snapshot versions
Add support for multiple version of management Rx reorder
shared snapshots.

CRs-Fixed: 3171325
Change-Id: Idae8d3f8179dc4a60730033e55d5744324133839
2022-04-26 10:00:35 -07:00
Amit Mehta
e498989902 qcacmn: Add DP component ID
Add DP component entry in debug id and umac component id.

Change-Id: Ia4302f5b22c26cd099821388e09be0358b83ab1b
CRs-Fixed: 3165355
2022-04-25 23:11:56 -07:00
Deeksha Gupta
ae58fedfe0 qcacmn: Update EHT operation IEs as per draft 1.3
Update EHT operation IE definitions as per 11be draft 1.3 specification.

Change-Id: If8dbfa29e6e674adabdc65299a064fc839f19a9a
CRs-Fixed: 3159329
2022-04-25 14:08:25 -07:00
Deeksha Gupta
5e413d3cc5 qcacmn: Update EHT capabilities as per draft 1.3
Update EHT Capabilities as per 11be draft 1.3 specification.

Change-Id: Ic0a051e59b1941f95f1e70bb0e12cec3986d2099
CRs-Fixed: 3108211
2022-04-25 12:47:34 -07:00
abhinav kumar
5cb3946000 qcacmn: Support multi-client service bit info from FW
Add change to fetch and save the WMI service capability
bit of FW to support multi-client low latency feature
using service bit.

Change-Id: Ifce82c06fc913668949ed06634da1eebcea80397
CRs-Fixed: 3180932
2022-04-25 05:38:28 -07:00
Pragaspathi Thilagaraj
4abe857789 qcacmn: Add support for per candidate roam frame capability
Firmware advertises per candidate roam frame capability to
indicate:
1. Firmware sends auth/assoc frames for each candidate to
which roaming was attempted.
2. Fill the frame info TLV with authentication algo = 3
for authentication frames.

Add support for the roam per candidate frame info capability

Change-Id: I95c23031ab0fbc21fb9d8db3bd54004e4d1ac234
CRs-Fixed: 3172311
2022-04-22 08:39:58 -07:00
Dundi Raviteja
e04b80efc6 qcacmn: Add pre cac component support params
Add component id, module id and debug id for
pre cac component.

Change-Id: I2abee4b8a48c816d50d04451bbf97a2188d37b54
CRs-Fixed: 3176256
2022-04-21 01:20:24 -07:00
abhinav kumar
e7861fb758 qcacmn: Update pmk for roamed AP to pmk cache table
Assume AP1 and AP2 are SPMK APs. For SPMK AP(s), Host
should add an entry of an AP in PMK cache table like below in
two cases only:
Case 1. When DUT successfully associated with SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing beacon of associated AP after
            successful connection.
Case 2. When DUT successfully roamed to SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing roam sync indication event.

In case of connection with SPMK AP, Host selectively deletes PMK
entry for other SPMK supported AP(s) on basis of “is_spmk_ap”
flag and maintains only one entry for all SPMK AP(s). And host
sends the same single PMK in RSO for further roaming to SPMK AP.

Initially, DUT is connected with AP2. Then Disconnection happens with
AP2 due to NUD failure. After disconnection, the upper layer sends
flush PMK requests for AP1 and AP2. Host deletes old PMK entries for
both APs. Now upper layer sends a set PMK request for AP2. Host adds
AP2 entry in PMK cache table but host does not set "is_spmk_ap" flag
in PMK table for this entry as DUT is not connected to AP2. Now host
receives a connect request for AP1 from the upper layer. DUT
successfully associated with AP1 by performing full SAE authentication.
Host adds an entry for AP1 in the PMK cache table and sets "is_spmk_ap"
flag for AP1 but fails to delete the entry for other SPMK AP(s), here
AP2, from PMK cache table. This is because of "is_spmk_ap" flag is not
set for AP2. At this point of time below is the PMK cache table entry
for SPMK AP(s): The Host PMK cache table has two entries for two SPMK
APs.

   BSSID       PMK     is_spmk_ap flag
    AP2       PMK2           0
    AP1       PMK1           1

Now FW roams to AP2 using PMK1. Host process roam sync indication for
AP2 and updates "is_spmk_ap" flag for AP2 in the PMK cache table. As
Host has a stale entry for AP2 in the PMK cache table, Host sends AP2’s
PMK (here PMK2) in RSO command which firmware will use for further
roaming but roaming fails due to invalid PMK, as target SPMK AP expects
PMK1 in reassociation request.

To handle these scenarios, FW should send PMK info of roamed AP and
host override stale entry for roamed AP (if any) with roamed AP's PMK
in PMK cache table.

Change-Id: I3c6a49be065e4744e438c2762c103eb3095a2253
CRs-Fixed: 3168078
2022-04-20 11:49:22 -07:00
Edayilliam Jayadev
3d17fd1925 qcacmn: Update bitmap of valid MLO links
Update the bitmap of valid MLO links.

CRs-Fixed: 3166124
Change-Id: I295531325e7e1d787323b4bfff34e3cd1f9001ef
2022-04-20 07:52:02 -07:00
Edayilliam Jayadev
7685147fb3 qcacmn: Skip management Rx reorder for CTRL frames
Skip management Rx reorder for all the frame types
other than management.

CRs-Fixed: 3166120
Change-Id: I4b056cf89ee1e1cf3e7d18a51fbe2c09a40d0b66
2022-04-20 07:51:51 -07:00
Edayilliam Jayadev
4ccecd0b01 qcacmn: Initialize link id in reo params
Initialize link id value in the reo params structure.
Link id is derived from the pdev object.

CRs-Fixed: 3166104
Change-Id: I444f5881690c3d48729f7232d6464bc9d1c4c892
2022-04-18 22:39:47 -07:00
Amruta Kulkarni
aab13aceda qcacmn: Add Multi Link Probe Request IE struct
Add multi link probe request variant ie structure
in common code.

Change-Id: I857b04d05bf1c56f54ed396f2ca71beed3d44069
CRs-Fixed: 3154390
2022-04-18 17:16:22 -07:00
Edayilliam Jayadev
7993262fbe qcacmn: Add sanity checks on reo algorithm entry
Add following checks in the entry to management Rx REO algorithm entry.

        1. REO parameter are valid
        2. Frame type is management

CRs-Fixed: 3166096
Change-Id: I171fc51c1dfa948e32608aa3a1bb05fc6cb2197d
2022-04-16 01:24:56 -07:00
Edayilliam Jayadev
62833eadc8 qcacmn: Fix wait count calculation
Return wait count as zero when all the frames of a given link are
processed by host SW. Also initialize the management packet counter of
host snapshot to 65535.

CRs-Fixed: 3166064
Change-Id: I88e757981e09640be93df8d3a583c6f14b2781b9
2022-04-16 01:24:49 -07:00
Edayilliam Jayadev
e80654cb53 qcacmn: Enhance debug framework for mgmt reo
Enhance the debug framework used to log frames entering and exiting
management Rx reorder module.

CRs-Fixed: 3166029
Change-Id: I4594b0a0e383f243b4c1f0fe7b3894235463820f
2022-04-16 01:24:40 -07:00
Edayilliam Jayadev
b8afe3b775 qcacmn: Fix compilation issues in mgmt Rx REO
Fix compilation issues in management Rx reorder module.

CRs-Fixed: 3166051
Change-Id: I34d77ebaa964181cb43e31f85f4c6288b782be61
2022-04-12 02:59:21 -07:00
Shubham Pawar
ee9cd039b3 qcacmn: Added support to get the status of mgmt rx reo sim feature
Add support to get the status mgmt rx reo sim feature

cfg80211tool wifiX g_mgmt_rx_reo_simulation

Change-Id: Ia60cd25c0b044484b3e6a44ebc536ac1cf0c3804
CRs-Fixed: 3154130
2022-04-11 23:23:27 -07:00
Jeevan Kukkalli
7f9da4ae12 qcacmn: Add lite monitor set/get functions
-Add lite monitor tx/rx filter config set/get fucntions
-Add lite monitor tx/rx peer config set/get functions

Change-Id: I47cc1085c64468b8a0fada871e2f5d3707ca7063
CRs-Fixed: 3078298
2022-04-05 10:11:03 -07:00
Pooventhiran G
1f04b5497c qcacmn: Retrieve cipher_type for IGTK/BIGTK keyix
For IGTK/BIGTK keyix, cipher table is not populated. Retrieve
cipher_type from key structure.

Change-Id: Ic61e66854f91317194ee90f64187fd2b787827b0
CRs-Fixed: 3163335
2022-04-05 03:42:25 -07:00
Shubham Pawar
78a2fe5f48 qcacmn: Call wlan_mgmt_reo_sim_stop to stop the simulation
In ucfg_wlan_mgmt_rx_reo_sim_stop() when mgmt rx reo simulation
is in progress, wlan_mgmt_rx_reo_sim_start() is called
incorrectly instead of calling ucfg_wlan_mgmt_rx_reo_sim_stop().

Fix this by calling ucfg_wlan_mgmt_rx_reo_sim_stop() instead of
wlan_mgmt_rx_reo_sim_start() in ucfg_wlan_mgmt_rx_reo_sim_stop().

Change-Id: I906618fc87448cefae54bdcdf00c7f64217362fd
CRs-Fixed: 3154187
2022-04-01 10:50:20 -07:00
Edayilliam Jayadev
0481f4ea66 qcacmn: Fix mgmt Rx REO enabled check
Fix the API which checks whether management Rx reorder
feature is enabled.

CRs-Fixed: 3111715
Change-Id: I6def92eb464b9d256160129b38b1bc189459ecc4
2022-03-30 09:43:20 -07:00
Edayilliam Jayadev
f533a06345 qcacmn: Get pdev from link id and vice versa
Add infrastructure to get pdev object from MLO HW
link id and vice versa.

CRs-Fixed: 3111712
Change-Id: I581cf871e25359b914956e86b7e541fd451277d0
2022-03-30 09:43:14 -07:00
Edayilliam Jayadev
4fb043fdff qcacmn: Add pdev open handler for mgmt Rx REO
Add pdev open handler for management Rx reorder module.
This handler stores all the snapshot addresses to the pdev
private object of mgmt Rx REO module.

CRs-Fixed: 3111704
Change-Id: Iaf12b4edb568b2a32ff901ad5d0f0717b190906b
2022-03-30 09:43:08 -07:00
Edayilliam Jayadev
f67a6e56e9 qcacmn: Expose APIs to print mgmt Rx REO stats
Expose APIs to print management Rx reorder related stats.

CRs-Fixed: 3111702
Change-Id: I5577d52f686662d2aa86550f245520ca1516b8a8
2022-03-30 08:23:56 -07:00
Edayilliam Jayadev
39cd98a9b0 qcacmn: Set wait count to zero for inactive links
Set wait count value to zero for links with invalid MAC
HW snapshot.

CRs-Fixed: 3111694
Change-Id: I94c563c39018ea3364d70eb808081d7496939047
2022-03-30 08:23:50 -07:00
Edayilliam Jayadev
0d5aa6147f qcacmn: Handle discontinuous link id values
MLO HW link ids need not be continuous. Handle
discontinuous link id values at host.

CRs-Fixed: 3111570
Change-Id: I561cdabed8a6b621dba87c49832f5c1d1b194b9a
2022-03-30 08:23:44 -07:00
Edayilliam Jayadev
b4d1204cad qcacmn: Validate the MLO HW link info from global shmem
Validate the MLO HW link related info obtained from the global shared
memory arena of management Rx reorder feature.

CRs-Fixed: 3111549
Change-Id: I6fd7812dc49bfa8428b2ffbf66ae978592734bc0
2022-03-30 08:23:38 -07:00
Pragaspathi Thilagaraj
aa27094cab qcacmn: Add support to set 11az ext feature flags
Add support to set 11az ext feature flags
Read the firmware capability for 11az features and
advertise the corresponding wiphy flags.

Change-Id: I85f6cc2f65a5d9892830f66a726cffc823093bca
CRs-Fixed: 3150584
2022-03-23 19:42:26 -07:00
Pooventhiran G
f5e2da429b qcacmn: Add Get RxPN WMI to obtain Rx PN
Add WMI support to obtain Rx packet number of a non-bss peer.

Change-Id: I841c1869299ebf5eeb21ee6406426a964d2d7112
CRs-Fixed: 3150832
2022-03-16 19:34:14 -07:00
Jyoti Kumari
7c3b36f765 qcacmn: Print reference id in debug prints
Print ref_id in all debug prints. It will make sure even if
string value is not added in string_from_dbg, there will be ref
id to debug leak issue.

Change-Id: If35a298239dd09cb4169474da34e30e85a2cde92
CRs-Fixed: 3147857
2022-03-16 04:02:08 -07:00
shubpawa
68f86baf32 qcacmn: Added support to enable/disable mgmt rx reo sim feature
Add support to enable/disable mgmt rx reo sim feature

cfg80211tool wifiX mgmt_rx_reo_simulation 1 (Enable)
cfg80211tool wifiX mgmt_rx_reo_simulation 0 (Disable)

Change-Id: I3dbe202a86ab2911ea6a0bd1295ba02c39402fa0
CRs-Fixed: 3100349
2022-03-15 07:38:01 -07:00
Wu Gao
ce53a6f23f qcacmn: Fix error of macro CLEAR_PARAM
CLEAR_PARAM failed to clear bit at bit position of "val". This change
correct to ((__param) &= (~(1 << (__val)))).

Change-Id: I20a9203592c0f48c3d2999985edd8ff81f55eb9d
CRs-Fixed: 3137825
2022-03-15 00:10:48 -07:00
Deeksha Gupta
b06ca5bc3d qcacmn: Update key management after bss create response
Add support to update key management with higher security
after BSS create response.
Also, Currenlty if there are multiple AKM and ucast cipher.
Host overwrites AKM and ucast cipher value with the new one.
Instead of overwrite, add support to do ORing to keep all values.

Change-Id: I679a86debef649efbce1a08b60512d127f7fbbee
CRs-Fixed: 3113222
2022-03-14 10:11:25 -07:00
Jyoti Kumari
95a1bc6a1a qcacmn: Add TWT ID in string_from_dbgid
Add TWT ID in string_from_dbgid

Change-Id: Ib98b18c6bc52af140d9e351c07ed150f0289faa1
CRs-Fixed: 3147818
2022-03-14 06:09:57 -07:00
Venkateswara Swamy Bandaru
73e1de72ef qcacmn: Add EHT PPET related defines
Add EHT PPET related defines in EHT capability IE.

Change-Id: I0e230e41710910d5542d308fa45940476729ba58
CRs-Fixed: 3148749
2022-03-11 23:49:53 -08:00
Vulupala Shashank Reddy
f31ce2f1c1 qcacmn: Fix TWT rx frames capture in packet capture mode
Currently the TWT rx frames are dropped in
tgt_mgmt_txrx_rx_frame_handler considering them as unspecified
packets as action category for TWT is not defined.

Define TWT action category so that the TWT frames will not be
considered as unspecified frames and dropped while processing.

Change-Id: I2d9c01e89029bcbb379a5a9c77a7d101de155d6a
CRs-Fixed: 3087275
2022-03-02 18:39:50 -08:00
Vinay Adella
dbf8b39a83 qcacmn: Remove excessive logging in console
Move to qdf_debug API to avoid excessive logging.
As these logs can come in interrupt context, it can cause
latencies to other threads.

Change-Id: Ibcada15235a74e9534588ae08d21bf97f4d61393
CRs-Fixed: 3120558
2022-02-28 09:10:17 -08:00
nakul kachhwaha
6c2a986833 qcacmn: Export objmgr APIs and add lmac_if registration APIs
Export objmgr APIs to be used by SON module to register
and unregister create/destroy handler.
Also add lmac_if API to register lmac_if ops from SON
module.

Change-Id: Id4c19807792b9f7b46387ae907f853151e4e28c6
CRs-Fixed: 3118986
2022-02-24 04:25:26 -08:00
Krishna Rao
3f38db23d4 qcacmn: Add APIs to defragment elem/subelem fragment sequence
Add APIs to defragment a sequence of 802.11 element/subelement
fragments. Add an inline mode to carry out the defragmentation within
the source buffer in order to reduce buffer requirements and to
eliminate memory copies/moves for the lead element/sublement.
Conversely, add a non-inline mode to copy the defragmented payload to
a separate buffer.

Add common helper functionality shared between these APIs.

CRs-Fixed: 3124132
Change-Id: Ia68584e918ddcf626b748f2b0c3a5da6492b40b6
2022-02-19 10:54:58 -08:00
Sajini R
1ec23ade38 qcacmn: Increase max number of socs to 5
For Quad-band IPQ9574 + 3 QCN9000 RDP, max number of SOCs
needs to be increased to 4 and another IPQ9574 RDP with QCN9224
might mostly have upto 4 PCI devices, hence increase the number
of max SOCs to 5.

Change-Id: Ie8a121c630bc41f084ca772a84503c816ed86514
2022-02-18 05:56:22 -08:00
Krishna Rao
8b712ebbaf qcacmn: Add APIs to get info about elem/subelem fragment sequence
Add an API to get the following information for a first 802.11 element
present in the beginning of a given buffer, and a series of elements
after it in the given buffer: a) Whether a contiguous subset of these
elements starting with the first element form an element fragment
sequence. b) If they form an element fragment sequence, then the total
length of this sequence inclusive of headers and payloads of all the
elements in the sequence. c) If they form an element fragment
sequence, then the total size of the payloads of all the elements in
the sequence (not including the element ID extension of the lead
element, if applicable).

Similarly, add an API to get the following information for a first
802.11 subelement present in the beginning of a given buffer, and a
series of subelements after it in the given buffer: a) Whether a
contiguous subset of these subelements starting with the first
subelement form a subelement fragment sequence. b) If they form a
subelement fragment sequence, then the total length of this sequence
inclusive of headers and payloads of all the subelements in the
sequence. c) If they form a subelement fragment sequence, then the
total size of the payloads of all the subelements in the sequence.

Add common helper functionality shared between these APIs.

CRs-Fixed: 3124120
Change-Id: I26d2d75670dbb99c927517181d58f4d816ae754b
2022-02-18 04:53:12 -08:00
Krishna Rao
b76c403d0e qcacmn: Add APIs to create elem/sublem fragment sequence
Add an API to create a sequence of 802.11 element fragments, and
similarly, add an API to create a sequence of 802.11 subelement
fragments. Add an inline mode for both these APIs to carry out the
fragmentation within the source buffer in order to reduce buffer
requirements and to eliminate memory copies/moves for the lead
element/subelement. Conversely, add a non-inline mode to create the
fragment sequence in a separate buffer.

Add common helper functionality shared between these APIs.

CRs-Fixed: 3124099
Change-Id: I48ef6e529360ea40d58320327a50884bc1638689
2022-02-16 15:11:43 -08:00
Krishna Rao
046cd79da6 qcacmn: Add APIs to get elem/subelem frag generation requirements
Add an API to get information on requirements related to generation of
802.11 element fragment sequence. Currently this includes an
indication of whether fragmentation is required or not for the given
element ID and payload length, and if fragmentation is appplicable,
the minimum required size of the buffer where the element fragment
sequence created would be written.

Similarly, add an API to get information on requirements related to
generation of 802.11 subelement fragment sequence. Currently this
includes an indication of whether fragmentation is required or not for
the given payload length, and if fragmentation is appplicable, the
minimum required size of the buffer where the subelement fragment
sequence created would be written.

Create common helper functionality shared between the above APIs.

CRs-Fixed: 3124090
Change-Id: I7047e2117aae1a8856ee49c460f333914aa19a8b
2022-02-16 15:11:37 -08:00
Bing Sun
bdbcc9ddf0 qcacmn: Handle CSA in MLO sta partner link before it is up
Before MLO sta partner link is up, FW can't indicate CSA event to host.
For this case, host need save csa parameters and process it when MLO
sta partner link is up.

Change-Id: Id1803f32787002e020c6899ec72e428feb765b7f
CRs-Fixed: 3082438
2022-02-11 02:57:46 -08:00
Bing Sun
7ee4663048 qcacmn: Save quiet status to sta context of MLO mgr
Save quiet status of indicated link to sta contect of MLO mgr. Any link
should check quiet status of MLO connection, then decide whether it
can trigger inactivity to FW or not.

Change-Id: Ic294bbe6452030b6cae495ca0dd3e504416e2c9e
CRs-Fixed: 3117825
2022-02-11 02:57:40 -08:00
Srinivas Girigowda
b6ef4fe306 qcacmn: umac: Add TWT componentization structs and skeleton code
Add TWT componentization structs and skeleton code.

Change-Id: I1c99c15b94cc39c6e5c7a32eea0d8095cf72555c
CRs-Fixed: 3085344
2022-02-11 00:24:42 -08:00
Rahul Gusain
949beb6cad qcacmn: Send fils discovery template to wmi layer
Add support to send Fils discovery template via target if

Add func to compute shortssid with the help of shortssid table

Change-Id: I78fa50641ee5ae0c338719c4cec91573a212f396
CRs-Fixed: 3114903
2022-02-07 12:27:04 -08:00