Introduce new macro to support get TID to link map status command
and TID to link response event.
Change-Id: I2f8fc03c306eae7f11d77253ce0ec565c9df2d71
CRs-Fixed: 3431459
Add a new vendor command QCA_NL80211_VENDOR_SUBCMD_GET_MONITOR_MODE to
get the local packet capture status in the monitor mode. Add required
attributes to respond with status of the monitor mode. The monitor mode
can be started/configured by using the
QCA_NL80211_VENDOR_SUBCMD_SET_MONITOR_MODE subcommand.
Change-Id: I72edd46f85b545d7aecb3c704441e810db9ca711
CRs-Fixed: 3415711
The 11az Trigger Based Ranging for responder related feature
capability is not set currently.
Add 11az TBR responder capabilities.
Change-Id: I0bd9a88231dfc7200895001d109aecdaef4aed59
CRs-Fixed: 3436972
Send the driver disconnect internal reason code as an event to user space
using QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASON vendor command.
Change-Id: I0027675b809b94628b6c0c4b8e8286e38fa9f47d
CRs-Fixed: 3371398
Add a new vendor command and attributes to control and fetch the state
information of the MLO links affiliated with a specific interface.
This will enable user space to dynamically control the MLO links states
based on the latency, throughput and power save requirements.
Change-Id: I1ef710a6f3a1f8723bb3d1c564c0c803bfa0b587
CRs-Fixed: 3416250
Some devices in WDS station mode have limitation when connected
in 3 LINK MLD association where the Primary umac selected and assoc
link should be same. Make sure to have a sanity check before
going for association in such cases.
If the primary umac and assoc links are set to be different then
the connection will be rejected.
Change-Id: If56461a140d4685ba279b1babe04709d919d1650
CRs-Fixed: 3443733
Currently, bss is unlinked from kernel scan db in below cases,
1. Disconnect
2. Connect failure
3. AP moves to hidden SSID mode from normal mode
bss is unlinked in above 1 and 2 cases (i.e. disconnect and
connect failure) to avoid continuous connect failures when
userspace attempts connect to the same AP without issuing a
fresh scan, which may result in blacklisting the AP. But
framework/wpa_supplicant can take care of this now by making
sure that connect is attempted only if scan result is from
a fresh scan.
Unlinking the bss may lead to inconsistency in some scenarios
and found that disconnect is most common scenario. So, don't
call __wlan_cfg80211_unlink_bss_list() in case 1 and 2 to
avoid unlinking.
Change-Id: I2d3af5fcc22360a5ead0e148d623194cb815f882
CRs-Fixed: 3433127
Update puncture bitmap along with channel to upper layer when channel
or puncture bitmap changed.
Change-Id: I68ff46fdf0143919a64a523d79f34d5454bb465b
CRs-Fixed: 3436333
As part of commit I7a08635a7912cbd940d90a2d62433296740ad913
a vendor command is added to enable roam stats event.
This change registers callback to send the added vendor
command event to userspace.
Change-Id: I6dc3f8357ace5bb3fa41b4aa116652a91b9fd924
CRs-Fixed: 3427397
OSIF currently defines function wlan_cfg80211_nla_put_u64() which
provides an interface to the Linux Kernel's nla_put_u64()
functionality. This wrapper handles the fact that the underlying API
has a different name and signature depending upon kernel version.
However, this function has a limitation, namely that if it has to pad
the skb, it will use a netlink pad attribute that may not be defined
in the same enum as the u64 attribute. This can lead to attribute
parsing issues by the recipient.
To avoid this problem, introduce wlan_cfg80211_nla_put_u64_64bit(),
which allows the caller to provide the pad attribute id. This will
ensure that the u64 attribute and the pad attribute are from the same
enum, and hence should prevent nla_parse() issues.
Change-Id: I9e4183fa088248abfdda435b9d5e159400521969
CRs-Fixed: 3414639
Introduce new macro to support ML external auth changes in
host driver with cfg80211.
Change-Id: Ifa9ab729ce12b261d10cddc699bfb9a5e1b4956a
CRs-Fixed: 3385381
Add QCA_WLAN_VENDOR_MCC_QUOTA_TYPE_LOW_LATENCY attribute
to enable/disable Multi-Channel concurrency low latency mode.
The firmware will do optimization of channel time quota for
low latency in Multi-Channel concurrency state if enabled.
Change-Id: Ibcf1ac82b2650899043ea9b61be5e1501e2d85a1
CRs-Fixed: 3409648
Currently, before sending a roamed indication to the kernel,
the host calls kernel APIs ieee80211_get_channel and
cfg80211_get_bss to confirm whether the roamed channel and
BSSID are present in the kernel scan cache or not.
In case if kernel returns the BSS pointer as NULL, Host calls
osif_populate_mlo_info_for_link API and uses BSS pointer
to populate MLO info for the link(s), this results in a
NULL pointer dereference in the host.
Fix is to avoid sending roam done indication to kernel/
userspace if kernel returns BSS pointer as NULL and issue
disconnection with reason REASON_UNSPEC_FAILURE.
Change-Id: I28f51369115a7ef20105073e4fcf6ee912c068b2
CRs-Fixed: 3404248
Add QCA_NL80211_VENDOR_SUBCMD_ROAM_STATS_INDEX.
when qca vendor cmd of QCA_NL80211_VENDOR_SUBCMD_ROAM_STATS get roam
information, driver send all the cached information to user space.
Change-Id: I5fa3202850eb21fe3fbf88ddbf51a803457a948e
CRs-Fixed: 3409607
In api wlan_add_age_ie(), age ie is included in scan
result.
Remove api wlan_add_age_ie() as the bss age is
calculated using NL80211_BSS_SEEN_MS_AGO.
Change-Id: Ided2364ce7a52d942d29343455fc7ae511be9a18
CRs-Fixed: 3391276
Add new QCA vendor attributes to configure the driver for EHT
capabilities and multi-link configuration.
Change-Id: I322a6fe112b83b3636c9383db152bfaa5dd34c14
CRs-Fixed: 3395113
Add new QCA vendor attributes to configure the driver for EHT
capabilities. These attributes are used for testing purposes.
Change-Id: Ic4ea6f5be212da423181d108c8dcae559a08a47e
CRs-Fixed: 3271502
During implementation of commit 257b119c2d87 ("QCA vendor attribute of
update roaming cached statistics info") some deficiencies were noted as
listed below, so fix them. Since these are pre-implementation changes,
no ABI breakage is introduced.
1) Change all RSSI values to be signed values.
2) Add enums for scan type and dwell type instead of documenting
their values with comments
3) Add missing QCA_ROAM_REASON_STA_KICKOUT to enum qca_roam_reason
Change-Id: I270dc1a009e36e37c83cb6298a096ed91b511df1
CRs-Fixed: 3402978
Add new AP concurrency policy QCA_WLAN_CONCURRENT_AP_POLICY_XR to
configure interface for eXtended Reality (XR) requirements.
Change-Id: I514979a9d950de9e0181dbf6d285812ef8a05126
CRs-Fixed: 3401504
The kernel-doc script identified some documentation issues in the
os_if folder, so fix most of them. However do not modify the file
qca_vendor.h since most of the issues there are present upstream, and
the downstream file should match the upstream file.
Change-Id: I71948fb497c1ea2d1dd46308277d99beefde18b8
CRs-Fixed: 3390428
Add vendor subcmd QCA_NL80211_VENDOR_SUBCMD_ROAM_STATS and attribute id
in enum qca_wlan_vendor_attr_roam_cached_stats for collecting roaming
statistics information when diagnosing roaming behavior.
Change-Id: I38fa39c2524e453335cf8281afe403a7c64c8bb4
CRs-Fixed: 3381257
Use macro which indicates maximum number of links we can support
for a given MLO association. Currently this is used for 3 Link
association in which the Association request will have per STA
profile of two other partner links.
Change-Id: If0927367110d58f8e42b40bb987c5b7497b8d551
CRs-Fixed: 3381043
- Add osif callback api to get scan ie params
- Made few mlo manager api's public
CRs-Fixed: 3288038
Change-Id: I15a764682b8164eb1b66adeff44d7e344f2563c3
Add more hang reason codes for the hang reason in the
qca_wlan_vendor_hang_reason enum.
Change-Id: Ia7f21c45d58c980219690cda390127f5d4004391
CRs-Fixed: 3380849
Validate the result of spectral specific ucfg control operation
after processing the control request to get the spectral system
capability information.
Throw error if it is an invalid operation.
CRs-Fixed: 3308464
Change-Id: I11bbd3a9a9ffc8462e420946d54f06a11fad558e
For roam auth vendor event to userspace, currently
16bytes of static memory is allocated for KCK. However,
latest security AKMs have higher KCK length.
Allocate the TLV based on the KCK length received from
firmware.
Change-Id: I2a869989a263f141a9b24a1fb9a97eb34889ac19
CRs-Fixed: 3346092
Add new attributes for the destination MAC address and netdev index in
SCS rule config subcommand.
Change-Id: I8298d9e0080440fce7401fb931e1af42672711cf
CRs-Fixed: 3359591
Wi-Fi Alliance specification for Automated Frequency Coordination (AFC)
system ensures that the Standard Power Wi-Fi devices can operate in 6
GHz spectrum under favorable conditions, without any interference with
the incumbent devices.
Add support for vendor command/events and corresponding
attributes to define the interface for exchanging AFC requests and
responses between the driver and a userspace application.
Change-Id: I8c894236cdb3a33f6eae5dd43879fc84f29a80dd
CRs-Fixed: 3337619
Introduce new macro to support TX control port changes in
host driver with cfg80211.
Change-Id: I1f557c62e225ce019a6ce3174ad2d897b39e0147
CRs-Fixed: 3342945
Add a new subcommand QCA_NL80211_VENDOR_SUBCMD_DOZED_AP to configure
doze mode state on an AP interface. This is also used as an event to
indicate the updated configuration. In doze mode, AP transmits
beacons at higher beacon intervals and RX is disabled.
Uses attributes defined in enum qca_wlan_vendor_attr_dozed_ap.
Change-Id: I183140f0466eb7400cc161afb8c2e295ec587f93
CRs-Fixed: 3267855
Fix the compile error: "declaration of 'struct wifi_pos_osif_ops'
will not be visible outside of wifi_pos_register_osif_callbacks"
when enable CONFIG_WIFI_POS_CONVERGED but disable the macro
WLAN_FEATURE_RTT_11AZ_SUPPORT.
Change-Id: Ib0043a109244d25368b7508b67b5b7b5c26cd3bf
CRs-Fixed: 3338198
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This would include the 6 GHz PSC
frequencies. Define an attribute to allow that behavior to be modified
to include PSCs only if 6 GHz use has been detected.
Change-Id: I81eb9b20c2953e6b0dbf4138b31547db82d7397f
CRs-Fixed: 3351706
Add QCA_WLAN_VENDOR_ATTR_CONFIG_WFC_STATE vendor attribute,
Userspace uses this attribute to configure wfc state to
Driver/Firmware. Driver/Firmware uses this information to
optimize power savings, rate adaption, roaming, etc.
Change-Id: If58bd1e64216de81af6cf82eaabd740b85729eac
CRs-Fixed: 3343034
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This flag controls the frequency list
creation for full scan on the following lines.
1 - Full scan to exclude the frequencies that were already scanned by
the previous partial scan.
0 - Full scan to include all the supported frequencies irrespective of
the ones already scanned by partial scan.
Change-Id: Id48ae28e6d0e719b9db9b2e73bd76f9be1ea0b3e
CRs-Fixed: 3343567
Add vendor sub commands index
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT_INDEX.
This index is used to identify the vendor event from the socket buffer.
This vendor event notifies the application layer about the primary
netdev after each MLO association.
Change-Id: Icccf0498412ee6831dcf61f9dd7c7e828848c2eb
CRs-Fixed: 3297028
Introduce a new attribute to configure access category
override for UDP frames of BE/BK category. Unlike, the
earlier attribute QCA_WLAN_VENDOR_ATTR_CONFIG_UDP_QOS_UPGRADE
which will override for all UDP frames, this attribute is
for overriding only for BE/BK based UDP frames.
CRs-Fixed: 3332609
Change-Id: Ife6104b97bca83653fdcac31f2c91007d1aa6f2a
Introduce a run time roam configuration for "hand off delay for RX".
This value, in milliseconds, will delay the hand off for the specified
time to receive pending RX frames from the current BSS.
Change-Id: I961109a2f9287a611ae8f4b38e2ea824ecf9c559
CRs-Fixed: 3329952
As part of MLO dynamic link deletion handling, cfg80211_disconnected is
taking link_id as an argument.
Add changes to support link_id param in cfg80211_disconnected.
Change-Id: Ia312b5e5768ba9abb11675839e912d4819a2fa86
CRs-Fixed: 3315102
Add a new vendor subcommand
QCA_NL80211_VENDOR_SUBCMD_MLO_PEER_PRIM_NETDEV_EVENT to send notification
to application layer about primary netdev of an MLO peer association.
Also define the attributes present in this subcommand.
Change-Id: I84ba177c5d7155f627d4d3fa86c64c4f9b24951c
CRs-Fixed: 3280634
Add a new QCA vendor attribute to configure the periodic sounding for Tx
beamformer functionality.
Change-Id: I2f36f98b6665d448c07d676ff9a5fa907a980c5c
CRs-Fixed: 3328364
Introduce new macros to interface ML SAP capable
host driver with cfg80211.
SAP needs to provide additional information
about the clients when beaconing as ML SAP.
Change-Id: Ie673927d1f8617da38170d41e6aaedae13f4f5c8
CRs-Fixed: 3331264
Current code directly passes the result of wlan_vdev_get_psoc(vdev) to
wlan_objmgr_get_peer_by_mac, without null pointer checking, which can
result in null pointer dereferencing.
To fix this issue, add checking of the psoc pointer before passing to
wlan_objmgr_get_peer_by_mac.
Change-Id: Ica5ebbc448a6da8b1e7c846f05773d95f995eaca
CRs-Fixed: 3327337