Optimize the recurrent VDEV reference accounting in following
APIs. The caller of these APIs already has VDEV reference.
1) hdd_enable_hw_filter()
2) hdd_disable_hw_filter()
3) hdd_enable_action_frame_patterns()
4) hdd_disable_action_frame_patterns()
Change-Id: I75b2dc3047458449712e897b08365ecc4ec45855
CRs-Fixed: 3463868
2 SAP start ACS but different channel range at almost
same time. First SAP selected and started on DFS channel
5260, second SAP select and start on MCC channel of 5180,
policy_mgr_allow_concurrency in
__wlan_hdd_cfg80211_start_ap check fail and abort the second
SAP start because of MCC not allowed for DFS channel SAP.
Refine the logic in API policy_mgr_is_ap_ap_mcc_allow
to cover this case, try to override 2nd SAP channel
to avoid start failure.
Change-Id: Ie483e1fc68f73ce87d14f647ee6fe27b015b5a79
CRs-Fixed: 3512135
To reset MSCS params reset on disconnection, change the
reset_mscs_params() API argument to link info pointer.
Existing callers moved to deflink.
Change-Id: Ibfaa5e0b88a9d818618cbe5187cf46227627d033
CRs-Fixed: 3463850
To manage the channel switch on each link of SAP,
change the following APIs to take link info pointer
instead of adapter.
Existing callers moved to deflink.
1) hdd_switch_sap_channel()
2) hdd_dcs_hostapd_set_chan()
Change-Id: I7607559a24ab98037ae71e48bc14e111add3db64
CRs-Fixed: 3463836
To configure DHCP server offload for each link in VDEV,
change the function argument of below APIs to take link info
pointer.
Existing callers changed to deflink.
1) wlan_hdd_dhcp_offload_enable()
2) wlan_hdd_set_dhcp_server_offload()
Change-Id: Ib6e16a172233354213f9ef03876248713197b1a0
CRs-Fixed: 3463796
The SAP config in AP context is per link and to validate
the ACS and operating channels on each link, change the APIs
mentioned below to take link info as function argument.
Existing callers moved to deflink.
1) wlan_hdd_validate_acs_channel()
2) wlan_hdd_validate_operation_channel()
Change-Id: I3936f24965bef5a7a3839b517d4c2eb9db81004b
CRs-Fixed: 3463784
Whitelist SSIDs are configured per netdev.
Therefore, move the ssid white list configurations
from psoc level to per vdev level.
Change-Id: Ia555f0c15362099afaae562a2779f7c26c1f4fe5
CRs-Fixed: 3510816
Add EHT OMI control field support with BW, RX NSS, and TX
NSTS extension subfields. These fields are combined with
the corresponding HE OMI control subfields to support the
transmission and reception of PPDUs for bandwidths greater
than 80 MHz.
Change-Id: I09603b3b7dcd7bc84fe2075c9ec48b0b6da3b265
CRs-Fixed: 3469763
Add vendor command support to configure MLO and EMLSR mode
capability configuration for EHT testbed and DUT STA. It
includes EHT OM control support, EMLSR padding delay
configuration, enabling STR MLMR mode, forcing power save
on active MLO links for a defined number of beacon periods,
forcing active MLO links, and invoking EMLSR mode entry or
exit.
Change-Id: If4fb2c576b789aa2e28d6742a02ebdc01eb6e994
CRs-Fixed: 3507770
Populate assoc link id in join request from scan entry self
link id
Also check if vdev is MLO vdev before copying partner info
to join req from connect request
Change-Id: I0ddff6e4b0b312e94e42977ea472ee94ac6e919e
CRs-Fixed: 3523640
Add support to force power save on all the active MLO links
for a defined number of beacon periods. Force power save
allows the firmware to suspend STA links for X beacon
periods and remain asleep even if the AP advertises TIM as
opposed to regular power save mode where STA links wake up
if the AP indicates that it has buffered data to send.
Change-Id: I98251f84edeebc462703cb2ad7d9ef3f73b460a4
CRs-Fixed: 3507781
During roaming sync, disconnect happens from osif for some reason,
RSO_STOP is dropped for reason
RREASON_DRIVER_DISABLED/REASON_ROAM_STOP_ALL, RSO_DISABLE is sent to
F/W for different reason REASON_DISCONNECTED. RSO_DISABLE happened
without RSO_STOP before, so F/W assert.
To fix it, for disconnect from osif, set RSO_STOP reason as
REASON_DISCONNECTED, same as RSO_DISABLE REASON_DISCONNECTED, then it can
be sent to F/W during roam sync.
Change-Id: Ie0c63bd735a231e61cca1eb7bbc6d785f2860f53
CRs-Fixed: 3520269
The create/modify the beacon data buffer in each
AP context of the link, change the following function
argument to take link info pointer instead of adapter.
Existing callers moved to deflink.
1) hdd_update_beacon_rate()
2) __wlan_hdd_cfg80211_change_beacon()
3) wlan_hdd_cfg80211_alloc_new_beacon()
Change-Id: I0f556eb6774f747c8ec59102d629e58ffcbe1969
CRs-Fixed: 3463774
To store/load MLO SAP configuration on each link's AP context
in adapter, change the function argument of below APIs to take
link info pointer instead of adapter.
Existing callers moved to deflink.
1) wlan_hdd_mlo_reset()
2) wlan_hdd_mlo_update()
3) wlan_hdd_mlo_sap_reinit()
Change-Id: I35d1459b22d290dccfb8710586a8facd59425265
CRs-Fixed: 3463288
To modify the beacon and SAP config in AP context which is per
link data structure, efactor below APIs to take link_info as
function argument instead of adapter.
Existing callers moved to deflink pointer.
1) wlan_hdd_set_sap_hwmode()
2) hdd_update_he_obss_pd()
Change-Id: Ibd1152cc86244b859daf0e86275ac83ad1b6ef8f
CRs-Fixed: 3463264
The below list of APIs are changed in function prototype
which are related to packing IEs in buffer in the AP context
which is per link. The per link data structure link info can
be passed to fill beacon IEs on each link.
Existing callers moved to deflink.
1) wlan_hdd_add_extra_ie()
2) wlan_hdd_add_extn_ie()
3) hdd_update_11ax_apies()
4) hdd_update_11be_apies()
5) wlan_hdd_add_hostapd_conf_vsie()
6) wlan_hdd_add_sap_obss_scan_ie()
7) wlan_hdd_get_sap_obss()
8) wlan_hdd_set_channel()
Change-Id: Ia34fc1017dfdeb83135c9fa38fcdbb51a9c613d4
CRs-Fixed: 3463226
The cleanup of existing connection info is per link so
change the function argument to take link info pointer
to reset the info.
Existing references are changed to deflink.
Change-Id: Ic6e8e181faadcfb568a0580e368b665cb95f7b26
CRs-Fixed: 3462660
To cleanup the HE connection info in station context of each link,
change the hdd_cleanup_he_operation_info() function argument
to link info pointer instead of adapter.
Existing references are changed to deflink.
Change-Id: I49a2e4b1b521bd435ba0ba26a3c7f421e7fed45c
CRs-Fixed: 3462494
To cleanup the beacon information of previous beacon per
each link, change the function argument of following API.
hdd_cleanup_prev_ap_bcn_ie().
Existing references are changed to deflink.
Change-Id: I1cfb1562dd45696093417e2e2b8a018090810a18
CRs-Fixed: 3462479
The wlan_hdd_check_remain_on_channel() is a wrapper API around
wlan_hdd_cancel_existing_remain_on_channel() with an additional
opmode check. Perform this opmode check to caller.
The wlan_hdd_cancel_existing_remain_on_channel() reimplements
wlan_hdd_cleanup_remain_on_channel_ctx(), so remove this API
and move existing callers to wlan_hdd_cleanup_remain_on_channel_ctx().
Change-Id: Ia23f4f22d6fb8ed5009ad973fd63012b259d308f
CRs-Fixed: 3462426
Disable BSS color collision detection for the following-
- Testbed STA for all modes
- STAUT if EHT mode is EMLSR.
As part of BSS color collision detection, scan is invoked in
FW after the defined detection period and as part of this,
EMLSR exit happens in the middle of tx/rx. Thus, disable the
capability for EMLSR mode.
Change-Id: I6417f7c081c1408372924b20d8985a597a536e27
CRs-Fixed: 3507796
Currently, driver post NDP end all command on the scheduler but
never release it. This casues timeout in the scheduler and driver
releases the vdev which is never referenced. This causes crash in
driver.
To resolve this issue, release the NDP end all command when NDP
Host Update event received from the firmware.
Change-Id: Iffe4f79b7c131c48cbf2b085d8bbc6e1fb0b5f0a
CRs-Fixed: 3521989
During wlan0 vdev0 roaming, before roam sync received, 2nd sta wlan1
vdev2 connect req came, disabled RSO of vdev0, so vdev0 roam aborted, and
disconnected.
To fix it, serialize roaming disable during connect too, don’t disable
roaming of other connected sta until serialization allowed in
wlan_serialization_activate_cmd ->cm_connect_active
Change-Id: I64eca8bc4de27e0b0afd0af2af3e83f3874fcecd
CRs-Fixed: 3515381
Add check to determine whether FW support multipass
SAP before enabling multipass support
Change-Id: I7db5a7bad6b9ac89c8c4e7c4c177695671402657
CRs-Fixed: 3515310
Currently, Host intersects STA and AP capability of HTC
HE support before sending to FW via peer assoc. Since
testbed default for HTC HE support is 0 on assoc link,
Host sends 0 on assoc link and 1 on partner link in
peer assoc command whereas FW expects Host to send just
the AP's capability on both links in peer assoc command
and the current behavior is causing low UL throughput.
Thus, change peer HTC HE support to only AP support.
Change-Id: I44a8ecb3b10226daba079dd855e5f35cfb6d2608
CRs-Fixed: 3435836
Driver obtains RX rates info from data frames and reports them to
kernel in chips which the MACRO FEATURE_RX_LINKSPEED_ROAM_TRIGGER
is enabled. However, in some old chips that the MACRO is disabled,
no rates info will be reported. To address this issue, this change
adds the RX rate reporting func(using rate_flags and FW raw_rate).
Change-Id: I75235137ba82d325d8af0664f616bd99ac3140dc
CRs-Fixed: 3449897
Currently driver fills join request from cm_vdev_connect request
and cm_vdev_connect request is filled from connect request.
Fill join request directly from cm vdev connect
request and update the vdev connect request from scan entry for
assoc vdev and for link vdev copy populate the connect request
directly from cm_connect request.
Change-Id: I408eb8044e96437558666a1948233a0df30bfd22
CRs-Fixed: 3516716
Update Preamble Puncturing INI parameter "he_rx_pream_punc" to
default which gets from FW.
Also update the cfg HE 2 GHz and 5 GHz capabilities parameters
instead of memcpy.
Change-Id: If424ce4a4fe771a2817677a50a472a2c77529d90
CRs-Fixed: 3515585