提交線圖

29527 次程式碼提交

作者 SHA1 備註 日期
Jianmin Zhu
5bc4f0107c qcacld-3.0: Fix INI force_start_sap doesn't take effect
FEATURE_WLAN_CH_AVOID_EXT isn’t defined for HMT, just defined for HSP,
so restriction_mask isn’t checked in policy_mgr_is_safe_channel, SAP
can't start on unsafe channel even INI force_start_sap=1.

Change-Id: Ie75f62d8649ac9c735a34e83b3d3d786976888bf
CRs-Fixed: 3547298
2023-07-05 17:17:49 -07:00
Rahul Choudhary
e6d00b7de2 Release 5.2.1.73C
Release 5.2.1.73C

Change-Id: If36f050d75e2f643864e6aa02aee65dce2b6d0bf
CRs-Fixed: 774533
2023-07-04 15:41:14 -07:00
Surya Prakash Sivaraj
2cb469800b qcacld-3.0: Allow VHT channel width upgrade
In current design, host driver doesn't allow the
channel width upgrade directly via VHT operation IE.

Allow upgrade of VHT channel width through VHT
operation IE.This will cause VDEV restart to upgrade
the channel width

Change-Id: Ib6a63b72df03b4d4f56cdb0c91d1f5c8ca4612ce
CRs-Fixed: 3537460
2023-07-04 15:41:14 -07:00
Paul Zhang
4910df0bb1 qcacld-3.0: Fix NULL pointer dereference issue
"mlo_vdev_get_by_link_id" may return NULL in failure case.
Add NULL check and release the vdev after process in
function: epcs_handle_rx_req and epcs_handle_rx_resp.

Change-Id: Ia1575b4fbcfde326d8e9b5c7b0562852ca23912b
CRs-Fixed: 3547906
2023-07-04 15:41:09 -07:00
Surya Prakash Sivaraj
27ea06d358 qcacld-3.0: Retain BW during CSA due to gDisableDFSChSwitch
If "gDisableDFSChSwitch" ini is set, SAP do not change the
channel even if radar is detected. Instead, the SAP is
expected to do a CSA to the same channel. However, during
this CSA, the bandwidth is downgraded to 20 MHz.

To fix this, retain the current SAP operating channel width
in CSA similar to the channel.

Change-Id: I7fa65765ce5f5d249ec65904749af589679dfe3e
CRs-Fixed: 3538115
2023-07-04 15:41:04 -07:00
Rahul Choudhary
553cea6296 Release 5.2.1.73B
Release 5.2.1.73B

Change-Id: Iada3610793e7d4ee224352ea012d0090bd719f00
CRs-Fixed: 774533
2023-07-04 09:15:08 -07:00
Vinod Kumar Pirla
1e000aa4c4 qcacld-3.0: Move to single netdev model
Enable the central logic to manage multiple VDEVs from a
single adapter and keep the code under the feature flag.

Enable WLAN_HDD_MULTI_VDEV_SINGLE_NDEV flag in build to
create single adapter which manages multiple VDEVs.
Keep the existing code which manages link adapters under
WLAN_HDD_MULTI_VDEV_SINGLE_NDEV flag undefined condition.

New number of active links field:
    -Introduce new member in adapter which stores number of links
     to create as part of VDEV create, this value to stay same
     throughout the lifetime of adapter which will be used to
     restore the number of links on adapter mode change.

     On mode change this value is used to set number of active
     links bitmap in adapter restrict access of link_info elements
     based on adapter type and mode.

     Currently only one STA adapter will have the value of two
     representing two VDEVs to be created for the purpose of
     two-link ML connection, remaining all adapters will have
     only one link enabled.

New MAC address field:
    -Introduce link_addr field in per link data structure which
     holds link address incase of ML adapter and remove mld_addr
     member in adapter structure, the mac_addr member in adapter
     will now hold the netdev address, incase of ML adapter that
     will be the MLD address.

     To get adapter from MAC address, also search each active
     link's link_addr member, the link address is filled in
     link_addr member during start adapter and as part of
     stop adapter, remove the derived link MAC address in
     each active link info to avoid conflict of new MAC address
     set on different adapter.

Change-Id: If78f75b78a6e42df9df18509aea7fe18e2aa77ff
CRs-Fixed: 3524362
2023-07-04 09:15:08 -07:00
Vinod Kumar Pirla
361d3775af qcacld-3.0: Cleanup active links conn info on close adapter
Iterate all active links for cleaning up connection info
on close adapter to avoid memory leaks.

Change-Id: Ib3dc11d67dd023104a2289409257c29d2dd8cb14
CRs-Fixed: 3524046
2023-07-04 09:15:01 -07:00
Vinod Kumar Pirla
d04b17ae71 qcacld-3.0: Iterate all links in hdd_is_any_interface_open()
Check the sme opened status of all links in adapter
to identify any open interface.

Change-Id: Ic49f375ff4eefae2a0da460aacd57bc8782ba06c
CRs-Fixed: 3524033
2023-07-04 09:14:54 -07:00
Vinod Kumar Pirla
5910af22bd qcacld-3.0: Wrapper API to check duplicate session
Introduce new API which checks for duplicate session on all the
valid addresses in the adapter.

The existing sme_check_for_duplicate_session() API is extended
to take list of addresses to check for duplicate entry.
The list argument is expected to be NULL terminated to exit the
loop.

Change-Id: I71629aa89e901041d787de18e2305dbbbca5aa50
CRs-Fixed: 3524015
2023-07-04 09:14:47 -07:00
Vinod Kumar Pirla
faca61889f qcacld-3.0: Refactor adapter deinit APIs
To deinitialize per link information, introduce new API
to deinit each active links in adapter.

New API: hdd_deinit_session()

Change-Id: Icc4bedd85818e40b8543c4f397c04367405f8889
CRs-Fixed: 3523981
2023-07-04 09:14:41 -07:00
Vinod Kumar Pirla
618b77fdae qcacld-3.0: Refactor STA and AP mode start adapter
Start station adapter will iterate through all active links
in the adapter.

Refactor SAP start adapter to point to deflink in adapter.

Change-Id: I32ee223305893007ce4db5370f52054e0ab411ca
CRs-Fixed: 3523950
2023-07-04 09:14:35 -07:00
Vinod Kumar Pirla
b7b5d8c821 qcacld-3.0: Refactor vdev create API
Modify the hdd_vdev_create() API to accept link info pointer
as function argument to create VDEV for that particular link info.
The VDEV info is saved in that link info post successful VDEV
create.

Change-Id: I1fd25e93094c34d2ecf8479cbf1f2ebf1566160b
CRs-Fixed: 3523922
2023-07-04 09:14:29 -07:00
Vinod Kumar Pirla
84e6553ede qcacld-3.0: Refactor sta mode initialization
To initialize the station context in link info, pass
the link info pointer to station mode init. Callers
can call on per link to initialize each link individually.

Move netdev flags set and wext register and deregister
to caller of hdd_init_station_mode()

Change-Id: Idbe527d037fc91d3e03269c0577570fc6f30413d
CRs-Fixed: 3523895
2023-07-04 09:14:23 -07:00
Vinod Kumar Pirla
b822b9ea9d qcacld-3.0: Refactor OCB mode adapter in stop adapter
Move the deinit code of OCB opmode adapter to new API.
New API: hdd_stop_ocb_adapter()

Change-Id: I55627881a226196a2eedd11e01f24cd5ae4e6759
CRs-Fixed: 3523816
2023-07-04 09:14:18 -07:00
Rahul Choudhary
588f31a5dc Release 5.2.1.73A
Release 5.2.1.73A

Change-Id: Iea4bd10aa64b0caacb3eed338a1f5ea56ecfe5f2
CRs-Fixed: 774533
2023-07-04 05:52:57 -07:00
Vinod Kumar Pirla
c83cc7b649 qcacld-3.0: Refactor stop SAP/P2P-GO adapters
Move the cleanup code of SAP/P2P_GO type adapters to
new API and call the API from hdd_stop_adapter_ext().

Move ucfg_ipa_flush() to end of cleanup as it is specific to pdev.
New API:hdd_stop_sap_go_adapter()

Change-Id: I046312a4a928889c7be30182b27300e0b1af2fd6
CRs-Fixed: 3523806
2023-07-04 05:52:57 -07:00
Vinod Kumar Pirla
b33dc43f69 qcacld-3.0: Refactor Monitor mode stop adapter
Move the cleanup code of monitor type adapter to
new API in stop adapter.

New API: hdd_stop_mon_adapter()

Change-Id: I841f6862c1ccf068e63751869b432cb9da1cfdb6
CRs-Fixed: 3523777
2023-07-04 05:52:51 -07:00
Rahul Choudhary
f739f4a64c Release 5.2.1.73
Release 5.2.1.73

Change-Id: Ibcea794bdd5bd4544fb9b0c70d29982a423d845e
CRs-Fixed: 774533
2023-07-04 02:30:45 -07:00
Vinod Kumar Pirla
da7995c849 qcacld-3.0: Refactor sta mode type stop adapter logic
Move the stop adapter logic of below OPMODEs to unified
function. The function is called on adapter level and internally
all the active links are cleaned up.
1) QDF_STA_MODE
2) QDF_P2P_CLIENT_MODE
3) QDF_NDI_MODE
4) QDF_P2P_DEVICE_MODE
5) QDF_NAN_DISC_MODE

Change-Id: I54dea594e643329d0dfc6ebb7a9dc6f411bff0eb
CRs-Fixed: 3523734
2023-07-04 02:30:45 -07:00
Vinod Kumar Pirla
5e392557c9 qcacld-3.0: Refactor hdd_vdev_destroy() API
Modify the API to take link info pointer of VDEV to destroy.
The API can be used to iterate all the eligible links in adapter
during interface down.

Introduce new API deinit of vdev destroy event completion variable
and to reset all vdev IDs to invalid on open adapter.

Change-Id: I28c0fff88cac79af94bcb7df7604373150eac052
CRs-Fixed: 3523683
2023-07-04 02:30:38 -07:00
Vinod Kumar Pirla
2e7fb09aee qcacld-3.0: Refactor IEs reset on SAP adapter stop
Move the IEs reset on SAP/P2P_GO adapter stop to new API
1) hdd_reset_ies_on_sap_stop()

Modify the below API to take link info pointer to reset VDEV
probe response IEs.
1) wlan_hdd_reset_prob_rspies()

Change-Id: Ia386be49aa19b51d97e3d9eb0368c68a2886c437
CRs-Fixed: 3523646
2023-07-04 02:30:32 -07:00
Rahul Choudhary
f42252f24c Release 5.2.1.72Z
Release 5.2.1.72Z

Change-Id: Ib064363bad3165a81969b7660a3038f29a6944f2
CRs-Fixed: 774533
2023-07-03 23:02:51 -07:00
Vinod Kumar Pirla
e1ee5f5a62 qcacld-3.0: Refactor stop pre cac adapter
Move cleanup of pre cac adapter in stop adapter to new API.
New API:
1) hdd_stop_and_close_pre_cac_adapter()

Change-Id: I358349e65a0bfa2227b5d93ac6395c13dac9b442
CRs-Fixed: 3523625
2023-07-03 23:02:50 -07:00
Vinod Kumar Pirla
8c93ab2d7a qcacld-3.0: Refactor monitor mode cleanup in stop adapter
Move RTPM wakelock release on monitor mode stop and session
delete to new APIs.
New APIs
1) hdd_monitor_mode_release_wakelock()
2) hdd_monitor_mode_disable_and_delete()

Change-Id: Ib1b0d060fd96dc131d54e1261cadf67e3c23e1d4
CRs-Fixed: 3523612
2023-07-03 23:02:45 -07:00
Vinod Kumar Pirla
bfd69f55cf qcacld-3.0: Refactor NAN disc disable in stop adapter
Move the code logic to disable active NAN discovery
in stop adapter to new API.

New API: hdd_disable_nan_active_disc()

Change-Id: I60c0c36484cdf2ddabe99a5666ccdfd9e2a0b1d5
CRs-Fixed: 3523577
2023-07-03 23:02:40 -07:00
Rahul Choudhary
289ba01949 Release 5.2.1.72Y
Release 5.2.1.72Y

Change-Id: Ie6c2fc074e799849d3589867350cfdc91be784fc
CRs-Fixed: 774533
2023-07-03 19:42:41 -07:00
Vinod Kumar Pirla
70dd9fbc0d qcacld-3.0: Refactor STA/P2P_CLI disconnect in stop adapter
Move the disconnect of connected vdev during stop adapter
for STA and P2P_CLIENT modes to new API.

New API: hdd_sta_disconnect_and_cleanup()

Change-Id: Ifd14244f6e2e538e9b07cdf2440e0998430ff0a1
CRs-Fixed: 3523561
2023-07-03 19:42:41 -07:00
Vinod Kumar Pirla
a49097833e qcacld-3.0: Refactor hdd_unsafe_channel_restart_sap() iterator
Iterate through all the active links in adapter to restart
SAP on unsafe channels.

Change-Id: Ieb4eff375b9156b18613d42d044533094a11a352
CRs-Fixed: 3522689
2023-07-03 19:42:36 -07:00
Rahul Choudhary
6de48cc3e3 Release 5.2.1.72X
Release 5.2.1.72X

Change-Id: I75cb3d8206aa3a737f329c309562ccaeee0acdcb
CRs-Fixed: 774533
2023-07-03 16:19:13 -07:00
Vinod Kumar Pirla
4257a119c3 qcacld-3.0: Refactor NDI cleanup in stop adapter
Move the NDI cleanup code to new API and move
hdd_any_valid_peer_present() API to take link_info
as function argument instead of adapter.

1) hdd_any_valid_peer_present()
2) hdd_peer_cleanup()
3) hdd_stop_and_cleanup_ndi()

Change-Id: I7eccb056fa3e1fe0d90b94e8603144bc1c9e30ea
CRs-Fixed: 3523547
2023-07-03 16:19:13 -07:00
Vinod Kumar Pirla
06b6176019 qcacld-3.0: Move IP notifier work cancel and fc deregister
Move APIs related to IP notifier work callback and flow control
deregister to two new APIs.

New APIs:
1) hdd_cancel_ip_notifier_work()
2) hdd_adapter_deregister_fc()

Change-Id: Id76a92f52d80fb7e0ed52d46bb52a95b22cbd25e
CRs-Fixed: 3523483
2023-07-03 16:19:07 -07:00
Vinod Kumar Pirla
8306eab0e2 qcacld-3.0: Iterate all links in hdd_indicate_mgmt_frame
To fill the VDEV array from adapters, loop through all the
active links in each adapter.

Change-Id: I5607a8d7afaa3a2e6df210cfff4e678050505f42
CRs-Fixed: 3523474
2023-07-03 16:19:01 -07:00
Rahul Choudhary
de43aee3ea Release 5.2.1.72W
Release 5.2.1.72W

Change-Id: I47c2946084b658e2719cad1ed70524180aea1f53
CRs-Fixed: 774533
2023-07-03 12:53:35 -07:00
Vinod Kumar Pirla
1c7864f73d qcacld-3.0: Use link info pointer to reset/abort VDEV scan
Modify the following APIs to take link info pointer as function
argument to reset/abort scan on the corresponding VDEV.
Also enchance the iterator to loop through all the active links
in each adapter.

1) hdd_reset_scan_operation()
2) wlan_hdd_scan_abort()
3) hdd_abort_mac_scan_all_adapters()

Change-Id: I3da827b496712bc9fbe52e7cdcf432de2210b0d8
CRs-Fixed: 3523463
2023-07-03 12:53:35 -07:00
Vinod Kumar Pirla
13441796a7 qcacld-3.0: Iterate all links in shutdown and reset adapter
Iterate through all the active links in adapter in the following
APIs to loop the VDEVs.
1) hdd_reset_all_adapters()
2) wlan_hdd_auto_shutdown_enable()

The below API is changed to take link info pointer as function
argument
1) hdd_send_twt_del_all_sessions_to_userspace()

Change-Id: I689037a11c86602e7f9a2cd1f0b66ddeaa1a4228
CRs-Fixed: 3523139
2023-07-03 12:53:29 -07:00
Prasanna JS
44ddeedbd9 qcacld-3.0: Move SR changes from WMA to Target_if
Move SR changes from WMA to Target_if and remove
WMA api's which was previously using to update
SR threshold.

Change-Id: I219cd56195471df561a5789fb235e375a14e756c
CRs-Fixed: 3374674
2023-07-03 12:53:24 -07:00
Rahul Choudhary
d2ca48fd4f Release 5.2.1.72V
Release 5.2.1.72V

Change-Id: I8bf127b35a8b635227f172b451b675019bcd661d
CRs-Fixed: 774533
2023-07-03 05:29:29 -07:00
Liangwei Dong
c5c0b9bbed qcacld-3.0: Update 6 GHz channel max weight
ACS will mark non ACS channel(filtered by PCL) to SAP_ACS_WEIGHT_MAX.
But the filtered channel still need a reasonable weight to
calculate the combined weight for ACS bw 40/80/160/320.
Assign weight value SAP_ACS_WEIGHT_ADJUSTABLE to such channels and
update it with reasonable after all channels weight are computed.

Change-Id: Iba6565a0f57cc3fe4997427733e922eefc917516
CRs-Fixed: 3537962
2023-07-03 05:29:28 -07:00
Rahul Choudhary
28ff1fa68c Release 5.2.1.72U
Release 5.2.1.72U

Change-Id: Ic65acb44190647500dcca496e41b0b14195f3e71
CRs-Fixed: 774533
2023-07-03 01:47:48 -07:00
Surya Prakash Sivaraj
5e69b2f7f7 qcacld-3.0: Prevent CSA in middle of CAC
If precac interface is in the middle of CAC, do not
entertain any CSA request coming as part of userspace/
country change/unsafe channel handling. Processing the
Channel change request in middle of CAC leads to teardown
of the SAP as SAP is in SAP_STOPPED state.
This leads to pre-cac failure.

To fix this, prevent CSA while CAC and once CAC is finished,
check the sanity of the operating channel based on
unsafe/disable channel list and move it to a valid channel.

Change-Id: I2757753a2a13bdaef60f9b9a46fcd569ddb7306c
CRs-Fixed: 3505593
2023-07-03 01:47:47 -07:00
Rahul Choudhary
06bb23e366 Release 5.2.1.72T
Release 5.2.1.72T

Change-Id: I92af04db8a8404b614d822f7b412c5581ebf3103
CRs-Fixed: 774533
2023-07-02 13:21:03 -07:00
Vinod Kumar Pirla
a4bd503720 qcacld-3.0: Iterate all links in adapter for below APIs
For the following iterator APIs, loop through all the active
link info in each adapter.
1) hdd_is_roaming_in_progress()
2) hdd_is_any_adapter_connected()
3) hdd_get_con_sap_adapter()

Change-Id: Ic48011f4fa2e833e2c18c1ea72b5a75d9c1e8133
CRs-Fixed: 3523126
2023-07-02 13:21:02 -07:00
Arun Kumar Khandavalli
ef9686e9e8 qcacld-3.0: Update the 11be draft version
Now that all the draft 3.0 version related changes are merged update
the draft version accordingly.

Change-Id: If6a4d1e1cef8923af03d321229bba0443f37103a
CRs-Fixed: 3545914
2023-07-02 13:20:57 -07:00
Vinod Kumar Pirla
a4494b8fa5 qcacld-3.0: Iterate all the links to report best RSSI
To report best RSSI of all the links, iterate through
all the active links in adapter.

Change-Id: I2cea05894e5e3e946ea604ec2965401334ee8c8b
CRs-Fixed: 3523109
2023-07-02 13:20:52 -07:00
Vinod Kumar Pirla
15bc64b5ac qcacld-3.0: Iterate all links in hdd_adapter_iterate()
Modify the adapter iterate function pointer
hdd_adapter_iterate_cb() to take link info pointer as
function argument. The API can be called for each
link info pointer in adapter to iterate.

Change-Id: I0908667ed34067c61e857ff2b1d30a3bbccdb31f
CRs-Fixed: 3523082
2023-07-02 13:20:46 -07:00
Rahul Choudhary
e02436f8ca Release 5.2.1.72S
Release 5.2.1.72S

Change-Id: I7bc135f438e9f456e049aa963323fb54507d8d11
CRs-Fixed: 774533
2023-07-02 09:59:42 -07:00
Vinod Kumar Pirla
3c0d10833f qcacld-3.0: Iterate all links in hdd_state_info_dump() API
Iterate through all links in hdd_state_info_dump() API

Change-Id: I56d63f9add94fa0e5a5d3327e9de703a7addb84b
CRs-Fixed: 3523074
2023-07-02 09:59:42 -07:00
Vinod Kumar Pirla
704def9b08 qcacld-3.0: Refactor roam enab/disable APIs
Club the almost similar implementation of of below two APIs and
refactor to a single API to enable and disable roaming on other
VDEVs.

Removed:
1) wlan_hdd_enable_roaming()
2) wlan_hdd_disable_roaming()

New API: wlan_hdd_set_roaming_state()

Change-Id: If59ca593a6a994bbc879c5fda8ae36ce34c5839a
CRs-Fixed: 3523066
2023-07-02 09:59:37 -07:00
Rahul Choudhary
63f44b9caf Release 5.2.1.72R
Release 5.2.1.72R

Change-Id: Ib2cf4c6b53e08a8f93acf4b8a9bd37c23718c6cc
CRs-Fixed: 774533
2023-07-02 06:39:57 -07:00