Commit Graph

21 Commits

Author SHA1 Message Date
Deeksha Gupta
f1acd4d6d6 qcacmn: Add support to get Link info from reconfig ML IE
In the driver, add support to get the Link information from a given
reconfig variant Multi-link element.

Change-Id: Ia23b26ddb4195da21c071ee5f3c198e0492ef952
CRs-Fixed: 3348524
2022-12-27 11:09:13 -08:00
Deeksha Gupta
3c3a62b04b qcacmn: Add support to get MLD mac address from reconfig ML IE
In the driver, add support to get the MLD mac address from a given
reconfig variant Multi-link element.

Change-Id: I8c54f58f05a89cd5624ea5dc34b6630c06777013
CRs-Fixed: 3348125
2022-12-27 11:08:44 -08:00
Deeksha Gupta
730d9abd4d qcacmn: Add API to find Multi-Link element based on variant
Based on the ML IE variant, add new API to find the first
Multi-Link element or the start of the first Multi-Link
element fragment sequence in a given buffer containing
elements, if a Multi-Link element or element fragment
sequence exists in the given buffer.

Change-Id: I89535f67aeb012c872216c8971b29f5afa359d07
CRs-Fixed: 3326673
2022-12-06 11:26:18 -08:00
Krishna Rao
68a8c47232 qcacmn: Add clarification for util_find_mlie()
Add further clarification for util_find_mlie() that the buffer passed
should contain only 802.11 Information Elements, and should not
contain other information like 802.11 header, 802.11 fields that are
not elements, etc.

Change-Id: Id577cdc08189cd0f60053b1345ee15b3bb4f0eca
CRs-Fixed: 3316369
2022-10-22 11:27:23 -07:00
Gururaj Pandurangi
9fa8fc8b46 qcacmn: Add API to extract MSD caps from cmn info field
Add API to extract MLD AP MSD capabilities from MLO IE
common info field if present. This will be shared with FW
via peer assoc cmd.

Change-Id: I0ebcd5408a40f3314932d4a2a7e586c208af2ee5
CRs-Fixed: 3271118
2022-09-02 21:00:31 -07:00
Vinay Adella
0e54add2cb qcacmn: Utility functions to parse Probe Request Variant of Multi-Link IE
These utility functions help to parse the Probe Request Variant of
Multi-Link IE.
It implements 11BE draft 2.0 spec

Change-Id: I09dcf47ef481278f5c74082002f83d9c8e2155a4
CRs-Fixed: 3213367
2022-06-27 02:10:23 -07:00
Amruta Kulkarni
83e349e4ae qcacmn: Generate link specific probe response
Changes made to link generation api to handle probe response.

Change-Id: I5b86599a9704e3c41bbb0d0127078d586e4d1d8c
CRs-Fixed: 3158769
2022-06-15 11:09:00 -07:00
Paul Zhang
96b039f9f8 qcacmn: Correct the kernel-doc format
Correct kernel-doc format for the functions in file utils_mlo.h.

Change-Id: I5a91675867885d8fdf262c7ea7f98a09f9e2e539
CRs-Fixed: 3203893
2022-06-07 08:18:52 -07:00
Shreedhar Parande
5f96fd74c9 qcacmn: Parse EML capability subfield in Common info for non-AP MLD
Parse EML capability sub field present in Common Info field of Basic
Multi-Link element from Association request send by non-AP MLD.

Add new API to get EML capabilities from the ML IE.
Update definitions for EML as per IEEE802.11be D1.5.
Store parsed EML capability in node to send these to Target.

CRs-Fixed: 3203322
Change-Id: Ib208ba2d8e86df7360656c1c844e4835a93cedc4
2022-06-03 11:39:20 -07:00
Paul Zhang
aeacfe3922 qcacmn: Add new API to fetch ML IE info
In order to provide the info about common info len and BSS
param change count, add API util_get_mlie_common_info_len()
and util_get_bvmlie_bssparamchangecnt().

Change-Id: I0f5fea2265cbb8f1df265542af7009d624a0129b
CRs-Fixed: 3202491
2022-05-27 19:37:23 -07:00
Deeksha Gupta
598c7f9c07 qcacmn: Update ML IE handling as per D1.4 new definitions
Update multi link IE definition as per 11BE draft 1.4 spec.

Change-Id: I560d63019d10e22672dc95e9426fa6e8aca5a105
CRs-Fixed: 3156980
2022-05-06 16:42:10 -07:00
Shashikala Prabhu
1a3a58f4de qcacmn: Add API to get MLD CAP info from Basic Variant ML element
Add API to get the MLD capabilities from a given Basic variant Multi-Link
element or element fragment  sequence.

Change-Id: I9f0d8069a970523948fd604b4977efd3d41a4d2d
CRs-Fixed: 3177254
2022-04-27 07:24:14 -07:00
Krishna Rao
f94ac12152 qcacmn: Add support for ML subelement defragmentation
Add support for subelement defragmentation in the common handler for
generating link specific (re)association request/response, as well as
in the helper for parsing partner info from the Link Info field of the
Basic variant Multi-Link element.

CRs-Fixed: 3117210
Change-Id: I3727c9008043ac4132a8675bf15e73949fde63cd
2022-02-28 09:10:22 -08:00
Krishna Rao
30b0de6998 qcacmn: Add support for ML IE defragmentation
Add support for Multi-Link element defragmentation in the common
handler for generating link specific (re)association request/response,
as well as in the API for getting per-STA partner link information.

CRs-Fixed: 3116412
Change-Id: I237c593b44ec3a7c3347ccb95633cec362ba5411
2022-02-28 09:10:04 -08:00
Krishna Rao
a50a68c40d qcacmn: Generate Link Specific Assoc Request for MLO
Generalize the existing link specific assoc response generation
functionality to make it common between link specific assoc request and
assoc response generation, and expose modified APIs for both. Add
handling of Non-Inheritance IEs as well as fixed field parsing to both.
Add guard checks and other fixes.

CRs-Fixed: 3083541
Change-Id: Ibf642ddc6b40ce258d50f3eeb4f820648222a758
2021-12-09 13:42:00 -08:00
Krishna Rao
39c0eb2153 qcacmn: Add API to get partner link info from Basic Variant ML element
Add API to get partner link information in the per-STA profiles
present in a Basic variant Multi-Link element. The partner link
information is returned only for those per-STA profiles which have a
MAC address in the STA Info field. Also note that the current
implementation does not have Multi-Link element fragmentation support
- this will be added in an upcoming change after shared helper
utilities for the same are available. Similarly, the current
implementation does not have support for per-STA profile fragmentation
- this may be added once it is introduced in the IEEE802.11be
standard.

Change-Id: Ied7092ba1366d39fa15adffc3737d4ad5c0adf59
CRs-Fixed: 3040491
2021-11-29 07:34:05 -08:00
Krishna Rao
5f1d4dd7fb qcacmn: Add API to get link ID from Basic Variant ML element
Add API to get the link identifier from a given Basic variant
Multi-Link element or element fragment sequence, of the AP that
transmits the Multi-Link element/element fragment sequence or the
nontransmitted BSSID in the same multiple BSSID set as the AP that
transmits the Multi-Link element/element fragment sequence and that is
affiliated with the MLD that is described in the Multi-Link element.

Change-Id: I45039a6ed8ccd9403eae9514c60bcd8d694d2a31
CRs-Fixed: 3040407
2021-11-16 20:58:00 -08:00
Krishna Rao
77e686b250 qcacmn: Add API to get MLD address from Basic Variant ML element
Add API to get the MLD MAC address from a given Basic variant
Multi-Link element or element fragment sequence.

CRs-Fixed: 3053521
Change-Id: I96cf893ae4a089c20bd2d8b783c4e3d1d4eb3e4a
2021-11-16 12:21:57 -08:00
Krishna Rao
b5253e0f65 qcacmn: Add API to get the variant of the given ML element
Add API to get the variant of the given Multi-Link element or element
fragment sequence.

Change-Id: I09b10c8e14e1a7e7b500116782f07d9fde7a78e1
CRs-Fixed: 3040403
2021-11-14 07:07:39 -08:00
Krishna Rao
f0b40c96d7 qcacmn: Add API to find Multi-Link element
Add API to find the first Multi-Link element or the start of the first
Multi-Link element fragment sequence in a given buffer containing
elements, if a Multi-Link element or element fragment sequence exists
in the given buffer.

Change-Id: I3dbd0f9053e3a1e20b47c182b5258f49b1e2c409
CRs-Fixed: 3040400
2021-11-12 18:06:25 -08:00
Amruta Kulkarni
f6032d1c4a qcacmn: Generate Link Specific Assoc Response
Generate link specific association response for
MLO partner links.

CRs-Fixed: 2970626
Change-Id: I48520290c09f48ce356d166e1cd2ef24938e8fb2
2021-08-03 06:55:23 -07:00