Commit Graph

7080 Commits

Author SHA1 Message Date
Srinivas Girigowda
a58817a89b qcacld-3.0: Replace WLAN_ALL_SESSIONS_DIALOG_ID with TWT_ALL_SESSIONS_DIALOG_ID
There are duplicate macros for the same purpose, hence
replace WLAN_ALL_SESSIONS_DIALOG_ID with TWT_ALL_SESSIONS_DIALOG_ID.

Change-Id: I63130869eed8dffcce85fe6a04586592ab3eaca2
CRs-Fixed: 3047686
2021-09-30 15:14:58 -07:00
Bing Sun
09c0fa4748 qcacld-3.0: Add API to set/get phymode for easymesh
Add API to set/get phymode for easymesh

Change-Id: I6d03de8ae61fa1b752213edcfd053e219fba3de9
CRs-Fixed: 3038234
2021-09-30 13:01:23 -07:00
Bing Sun
c7defa218a qcacld-3.0: Set/get candidate channel to switch when radar is detected
Currently driver switches to a random channel when radar is detected.
Easymesh expects ap switching to a given channel.

Add API to set/get given channel. AP should switch to given channel
when radar is detected.
The given channel will be cleared after a radar detection.

Change-Id: I29b97e247583be768842c128e6a3e5d5bfd859f7
CRs-Fixed: 3034735
2021-09-30 10:51:40 -07:00
Bing Sun
00740c5de2 qcacld-3.0: Add API to get/set HT20/40 mode for easymesh
Add API to get/set HT20/40 mode for easymesh AP mode

Change-Id: Ic6b06b4bd05003537939a77cdd8daa82d2ecc5fa
CRs-Fixed: 3034726
2021-09-30 10:51:34 -07:00
bings
a44cf88b36 qcacld-3.0: Implement legacy commands of easy mesh
Provide below APIs for easy mesh.
API to get the current frequency of the given VDEV.
API to get acs status of the given VDEV.
API to get cac status of the given VDEV.
API to get/set bandwidth of the given VDEV.
API to get band information of the given VDEV.
API to get connected STA count of the given VDEV.
API to get BSSID of the given VDEV.
API to get SSID of the given VDEV.
API to set channel of the given VDEV.
API to get/set cac timeout of the given VDEV.
API to get/set country code of the given VDEV.

Change-Id: Ia0bd201ad8155a66a4a8c5517f6fa43f3f358505
CRs-Fixed: 3027192
2021-09-30 10:51:28 -07:00
Bing Sun
7ff37bd587 qcacld-3.0: Refine wlan_hdd_get_adapter_by_vdev_id_from_objmgr
Refine API to get adapter from vdev directly.

Remove parameter hdd_ctx of wlan_hdd_get_adapter_by_vdev_id_from_objmgr.
It is good enough to get adapter from input parameter vdev.
Move output parameter adapter to return value.

Change-Id: Ide6ac7466cee0f1e7fea9b31d325bd432548ff55
CRs-Fixed: 3037265
2021-09-30 10:51:23 -07:00
Ashish Kumar Dhanotiya
d5474482ea qcacld-3.0: Free HE op element memory for change interface
Currently host driver does not free the memory for HE
operation from cache connection info when it receives change
interface from STA to SAP mode which results in mem leak.

To address above issue, free HE operation element memory on
STA to SAP interface change.

Change-Id: I837640814459a62d819e606fc44adc9bfc60fe5c
CRs-Fixed: 3045848
2021-09-30 03:10:04 -07:00
Abhishek Singh
62fbb8beb7 qcacld-3.0: Remove unused HDD wait timeouts
Remove unused HDD wait timeouts WLAN_WAIT_TIME_STOP_ROAM and
WLAN_WAIT_DISCONNECT_ALREADY_IN_PROGRESS.

Change-Id: Ib89bb7be810c945fb25d0ce687843199d843024c
CRs-Fixed: 3047421
2021-09-29 15:05:17 -07:00
Ashish Kumar Dhanotiya
646474a49b qcacld-3.0: Fill assoc reject status correctly
Currently driver is not filling assoc reject status because of
which assoc reject status is always set to 0 which always
represents assoc success, informing the incorrect information
to user space.

To address above issue, fill assoc reject status correctly
from connection manager.

Change-Id: I52dab4467f1105e0cc7f525449f554c857eadf61
CRs-Fixed: 3043471
2021-09-29 12:42:08 -07:00
Chaoli Zhou
90edf483e5 qcacld-3.0: Fix getting wrong nss issue for dual APs case
In the dual APs DBS case, hdd_get_sap_operating_band
always return the operating band of last adapter and
might not be the current adapter's operating band,
which is not right.
So adding this fix to get operating frequency of
current adapter and then convert to according band,
then get the correct nss info.

Change-Id: Ief171d9b3d66937bede5fbe65be031bdc19529c8
CRs-Fix: 3043735
2021-09-29 08:59:02 -07:00
Zhaoyang Liu
66d0a8d7b9 qcacld-3.0: fix might sleep crashed issue from invalid context
Currently host driver processing link layer status event is under
protection of spin lock, it disabled preempt. Now function
wma_unified_radio_tx_mem_free to free memory in wma tries to get
mutex lock, this cause issue about sleeping function called from
invalid context. Fix the issue to spin unlock before memory free.

BUG: sleeping function called from invalid context at kernel/locking/mutex.c:937
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 256, name: kworker/u16:3
Preemption disabled at:

Call trace:
___might_sleep+0x20c/0x210
__might_sleep+0x50/0x88
__mutex_lock_common+0x6c/0xe20
mutex_lock_nested+0x2c/0x38
qdf_mutex_acquire+0xa8/0x2bc [wlan]
wma_unified_radio_tx_mem_free+0x34/0xe0 [wlan]
sme_radio_tx_mem_free+0x24/0x50 [wlan]
wlan_hdd_cfg80211_link_layer_stats_callback+0x6c4/0x750 [wlan]
wma_unified_link_iface_stats_event_handler+0x32c/0x364 [wlan]
__wmi_control_rx+0x46c/0x560 [wlan]
wmi_rx_event_work+0x224/0x390 [wlan]

Change-Id: I3d36b755f2221492d65cc0b891c1f35ee0204bbc
CRs-Fixed: 3044009
2021-09-29 08:58:57 -07:00
Rajeev Kumar
d916b7996f qcacld-3.0: Address race between disconnect and system suspend
A race between cfg80211 disconnect and wiphy system suspend can lead
to either DPM WD or serialization VDEV disconnect active command
timeout since scheduler thread gets suspended as part of wiphy
suspend and both cfg80211_disconnect and wiphy suspend/resume acquire
RTNL lock. To address this race condition avoid disconnect when wiphy
suspend is already completed since scheduler thread gets suspended
as part of wiphy suspend and it can't process vdev disconnect.

Change-Id: Ia7e42cffb3f6b08b33c878b68122dbdc00bad251
CRs-Fixed: 3042442
2021-09-29 01:29:51 -07:00
Yu Wang
d3a8dfe1b6 qcacld-3.0: update rates set on connect success
Update operational rates set, extended operational rates set
and MCS based rates set in VDEV MLME legacy priv object on
connect success.
Refine the APIs for fetching these rates.

Change-Id: I7697b3d2e26e2fc565a2e672afe19f255af89d7e
CRs-Fixed: 3044036
2021-09-28 21:11:56 -07:00
Pragaspathi Thilagaraj
7e90b8b5f5 qcacld-3.0: Fix missing attributes in connectivity logging events
Fix few missing attribute in below connectivity events:
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_RESPONSE
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCORE_CURR_AP

Also send the roam candidate info properly to userspace.

Change-Id: Ia9c4f095316adf8f40294f1e119cad648749bb72
CRs-Fixed: 3037650
2021-09-28 21:11:51 -07:00
Alan Chen
be6943d526 qcacld-3.0: Add error log if qmi sync resume fails
During periodic stats poll for ll_stats and get_station_stats,
if qmi sync resume fails, add an error log.

Change-Id: Iad8d6959d39a6caaa67a24671c833d5e64e47d26
CRs-Fixed: 3045876
2021-09-28 13:59:54 -07:00
Ashish Kumar Dhanotiya
4cbab28a38 qcacld-3.0: Reject big data stats command in case of connected sta
Currently for station case if driver receives big data stats
command when station is connected it does not reject the command
and returns the big data stats. Since this command is not
supposed to come in connected case, for some of the stats,
driver returns incorrect values for some of the stats.

With this change reject the big data stats command for connected
station case as this command is for disconnected station.

Change-Id: I543b38f448eb3a8b2d97bd09c888957450116124
CRs-Fixed: 3043000
2021-09-28 11:53:32 -07:00
Gururaj Pandurangi
8a75333def qcacld-3.0: Rename WMI_HOST_REGDMN_MODE to HOST_REGDMN_MODE
Rename WMI_HOST_REGDMN_MODE_11AC_VHT20_2G to
HOST_REGDMN_MODE_11AC_VHT20_2G to avoid duplicate
definitions and to be in line with the common repo.

Change-Id: I7ecd409641cd998b01165863758f56459282fa7b
CRs-Fixed: 3044438
2021-09-27 22:22:13 -07:00
Dundi Raviteja
d0babd7fd8 qcacld-3.0: Don't delete monitor interface when STA interface is down
Don't delete monitor interface while STA interface is getting down,
instead de-register packet capture callbacks and register back
when STA interface is UP again.

Change-Id: I42ea39ec619c08d99fa5ba287be20249e2b2582f
CRs-Fixed: 3013758
2021-09-27 17:57:43 -07:00
Pragaspathi Thilagaraj
bb16d8f7de qcacld-3.0: Add new logging dispatch table entries
Add new logging dispatch table entries to support below
event types:
QCA_WLAN_VENDOR_ATTR_DIAG_EVENT_ASSOC_REQ
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_DEAUTH_RX
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_DEAUTH_TX
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_DISASSOC_RX
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_DISASSOC_TX
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BEACON_LOSS_DISCONN
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCAN_START
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCAN_DONE
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCORE_CURR_AP
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCORE_CAND_AP
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_RESULT
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_CANCEL
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BTM_REQ
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BTM_QUERY
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BTM_RESP
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BTM_REQ_CANDI
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_BTM_WTC
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAPOL_M1
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAPOL_M2
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAPOL_M3
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAPOL_M4
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_GTK_M1
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_GTK_M2
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_REQUEST
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_RESPONSE
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_SUCCESS
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_FAILURE

Change-Id: I3bcdbf40e95ecfbcea67d42315d888f831234e05
CRs-Fixed: 3030111
2021-09-26 04:49:55 -07:00
Pragaspathi Thilagaraj
9081371b4b qcacld-3.0: Add changes to send connectivity log events to userspace
Fill the QCA_NL80211_VENDOR_SUBCMD_DIAG_DATA event data and
send the event to userspace.
Add dispatch table for the connectivity events to lookup
attribute type, id and length.

Change-Id: I1fc8467409852a430874ac1d926b06ec8dafb736
CRs-Fixed: 3030085
2021-09-26 04:49:49 -07:00
Pragaspathi Thilagaraj
5e4b2f49ad qcacld-3.0: Fill and send connectivity logging management frame events
Fill the management frame data and enqueue the filled record to the logging
queue.
Frame sequence number, peer rssi, tx_status, authentiation algo,
authentication frame transaction sequence number will be filled to the
log record.

Change-Id: I069b7816fdc52eeed964d6586c52b58d1a5d5cd4
CRs-Fixed: 3030075
2021-09-26 04:49:44 -07:00
chunquan
ddee734acb qcacld-3.0: Fix tcp drop for out of order
When NAPI enabled for Non-SMP platform, the 32th pkt is
send to tcp stack by netif_receive_skb, the first 31 pkts
are still in backlog queue, out of order issue will happen

Change-Id: Ieef5250fef9fcabb86e0e65673529c7db89a96c1
CRs-Fixed: 2997452
2021-09-25 22:56:40 -07:00
Bing Sun
0855f4f6ae qcacld-3.0: Start 11be AP without mlo IE with WLAN_FEATURE_11BE_MLO
When WLAN_FEATURE_11BE_MLO is enabled, 11be AP without mlo IE fails
to start because of number of links being 0.

11be AP without mlo IE is a valid case. It should be supported.

Change-Id: I66fce67e7235cd75db4599f7f06d239f7e1d965a
CRs-Fixed: 3042868
2021-09-24 20:44:40 -07:00
Lincoln Tran
af893f201c qcacld-3.0: Update SET_FCC_CHANNEL command
If driver receives the command with parameter -1, the driver is enabling
all bands. Add check to see if the device supports 6G first, otherwise
don't change the band settings.

Change-Id: I2e0980015d8e8bad10fbdcd6f397ac1ca383a5bb
CRs-fixed: 3038801
2021-09-24 02:14:20 -07:00
Amruta Kulkarni
1e0e7a7328 qcacld-3.0: Add SCC concurrency check for STA+STA roaming
In case of STA+STA roaming, to enable roaming on primary vdev
check is added to handle SCC concurrency case.

Change-Id: Id43856b344ce016a17e5bf921c629f3dcc2be138
CRs-Fixed: 3041409
2021-09-24 00:01:21 -07:00
Will Huang
7e2055c8ba qcacld-3.0: Fix possible memory leak of hdd_medium_assess_timer
If hostapd stop bss happen together with SSR, it is possible
eSAP_STOP_BSS_EVENT not post and hdd_medium_assess_deinit()
miss to invoke.

Fix it by invoke hdd_medium_assess_deinit() in failure path.

Change-Id: I79814be745fab366e1073438a295414f7de3f69a
CRs-Fixed: 3037020
2021-09-23 04:25:06 -07:00
Arun Kumar Khandavalli
7876d018c4 qcacld-3.0: use nl interface for eapol
For latest chipsets use nl interface for eapol handshake for all
device modes.

Change-Id: I5f5b5f2b34687ec90c93f406b39196fc18c31375
CRs-Fixed: 3021188
2021-09-22 13:48:53 -07:00
Kiran Kumar Lokere
fb85fcd3b0 qcacld-3.0: Disable 6G security check if RF testmode is enabled
The 6GHz security check is enabled by default. Disable the check
if RF test mode is enabled.

Change-Id: Id6af514f6a31f6351b1b0d784c2b9f7d301496c0
CRs-Fixed: 3040621
2021-09-22 03:15:48 -07:00
Pragaspathi Thilagaraj
f5c868fc78 qcacld-3.0: Stop connectivity logging after stop modules
When wifi is turned off, if the connectivity logging queue is
not empty, the wlan logging thread tries to dequeue the record
and send the logging event to the userspace. While performing
dequeue operation, the records from queue are copied to temporary
buffer before read pointer is incremented. There could be a
condition where this buffer is allocated in ini domain after stop
modules is done and freed in active domain if the wlan_logging
thread is preempted during stop modules.

So to avoid this domain mismatch, start the queue only if
start_modules is done and stop the queue after stop modules
to avoid dequeue being done during/after stop modules.

Change-Id: Ied8c36b19bc66474d3c4d8f913f3e3dbf9a574a0
CRs-Fixed: 3035644
2021-09-22 03:15:43 -07:00
Yu Ouyang
4c86f51c68 qcacld-3.0: Add time slice duty cycle in wifi_interface_info
Android S VTS test case GetLinkLayerStats_1_5 need get interface time
slice duty cycle info. VTS will get it over vendor command
QCA_NL80211_VENDOR_SUBCMD_LL_STATS_GET.

So, we need put time slice duty cycle percentage in structure
wifi_interface_info.

Change-Id: Iff644b4b1ed6dd34badc2008d2957c98e0207aa6
CRs-Fixed: 3040005
2021-09-21 06:51:24 -07:00
abhinav kumar
aff41cb30e qcacld-3.0: Send rso config to fw as per setband
When band is changed from dual-band to single band
(2G only):
1. host need to remove IDLE & BTC trigger bits from
WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
2. Send WMI_ROAM_IDLE_CONFIG_CMDID with enable=0

When band is changed from single band (2G only) to
dual-band:
1. host need to add IDLE & BTC trigger bits from
WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
2. Send WMI_ROAM_IDLE_CONFIG_CMDID with enable=1
and with default configurations.

To configure the above value in FW, send an RSO
update to FW whenever host receives set band command
from the upper layer.

Change-Id: I5a78deee713ff8514640d1867098e4045b77a231
CRs-Fixed: 3033081
2021-09-20 16:59:23 -07:00
Srinivas Dasari
2640226147 qcacld-3.0: memset reject_ap_info properly before usage
Currently, reject_ap_info is used at many places and memset is
not done before filling it. memset the buffer to avoid reading
garbage values.
Also, modify the current initialization of ap_info in
cm_add_bssid_to_reject_list to memset.

Change-Id: Ic0fabc1733c4ea63dccb2e45b2a2dc37791e594d
CRs-Fixed: 3040299
2021-09-20 16:50:37 +05:30
Wu Gao
36d764e1af qcacld-3.0: Stop CFR once get disconnection event
CFR only works when DUT as STA and connected to AP. But, host doesn't
stop CFR if CFR started and disconnect to AP. So add this change to
stop CFR once get disconnection event.

Change-Id: I5a616dbe4c35311fb260514a8d33ed9a1361c514
CRs-Fixed: 3026715
2021-09-19 21:31:25 -07:00
Aditya Kodukula
ecaf320fdc qcacld-3.0: Add Kernel version check to enable AKM support
Add a kernel vesion check to enable the AKM suites support.

Change-Id: I3d4897b37023e357b7023e60c6777c9b836f5df0
CRs-Fixed: 3035884
2021-09-18 10:54:52 -07:00
Gururaj Pandurangi
98f9fe57f4 qcacld-3.0: Reduce log level of certain error logs
Reduce log level of a few error logs to reduce
excessive logging.

Change-Id: I3e93d033bc29a7dfee5c5ef18d52cded54fc1cbb
CRs-Fixed: 3035970
2021-09-17 16:53:25 -07:00
Pragaspathi Thilagaraj
612fe2eca2 qcacld-3.0: Add infrastructure for connect/roam logging
Add new files for connect/roam logging. Add changes to
initialize the logging buffer.
Make changes to support enqueue/dequeue log.
Define enums for MAIN_TAG, Sub TAG, category.
Add structure definitions for logging buffer.

Change-Id: I1d283fcf464da90d4f5533214d480ddda156ec27
CRs-Fixed: 3013486
2021-09-17 13:47:47 -07:00
Ashish Kumar Dhanotiya
7195028bb7 qcacld-3.0: Create dump in progress wifi kobject under feature flag
Currently wifi creates kobject for dump in progress feature without
any feature flag, since this kobject is for dump is progress
feature and there is already feature flag available for this
feature so move this code under feature flag.

Change-Id: Ib1155194dbec434c3ecd9949514c6c9931e3e661
CRs-Fixed: 3036752
2021-09-17 11:28:40 -07:00
sheenam monga
265f8960fa qcacld-3.0: Enhance g_enable_go_force_scc for liberal mode
INI g_enable_go_force_scc states the force MCC to SCC mode.
Mode 1-strict: Implement force scc strictly as part of start bss
Mode 2-liberal: Turn on p2p go on provided channel and move
first p2p go to the new p2p go channel after set key.

Currently for p2p-GO forceSCC, support is present where no matter
what is the GO negotiated channel in start_bss, driver will force
the other GO/STA/GC channel (on the same band) to the current GO
channel. This is force SCC strict mode where value 1 is used for
g_enable_go_force_scc ini. In this mode GC will have to do full
scan as the GO channel may be different from actual negotiated
channel. DUT may see some issues if GC dosent do full scan in
this mode.

As part of this change, add support for value 2(Liberal mode)
in g_enable_go_force_scc ini. As part of this liberal mode,
driver will allow the GO to start in MCC mode and after set key,
it will check any other concurrent GO and will do forceSCC for
that GO to the newly formed GO channel.

Change-Id: Ifc7beb06335616c51dc064f48a78b825dbdbda25
CRs-Fixed: 2992098
2021-09-17 01:18:27 -07:00
Will Huang
5936edf256 qcacld-3.0: Add H2E require flag to extended support rate
If SAE/H2E required by hostapd configure, it must populate in
supported rate or extended support rate set, add host driver support
to check this flag and populate it in extended support rate set.

Change-Id: Id75b5743e93a1a0f1d13150d5436d256e2ca117c
CRs-Fixed: 3016492
2021-09-17 01:18:06 -07:00
Ashish Kumar Dhanotiya
33ec87f37a qcacld-3.0: Add feature flag for connection roaming ini
Currently driver don't have any feature flag for connection
roaming ini config and it directly tries to read the connection
roaming ini file, on some of the platforms if this ini file is
not present it returns failure message but some of the platforms
results in timeout which results in unexpected behavior.

To address above issue add a feature flag to read connection
roaming ini config.

Change-Id: Ica4159533e46ca5cc2048bf50eab2290bf5ae7d5
CRs-Fixed: 3035148
2021-09-16 10:47:19 -07:00
Alan Chen
b876624d30 qcacld-3.0: Change log level of ns offload print
Change the failed to cache ns request log level from error to debug.

Change-Id: Idc5799f41d831c238efd6061e1363a9fd58b63c5
CRs-Fixed: 3037768
2021-09-16 08:28:20 -07:00
Bing Sun
9a4383eb29 qcacld-3.0: Change mlo sta state when changing state of a SAP station
Peer state of mlo sta info is not changed to OL_TXRX_PEER_STATE_AUTH
while Peer state of link sta info is changed to OL_TXRX_PEER_STATE_AUTH

Peer state of mlo sta info should be changed together with link sta info.
When change the state of a SoftAP station, do it for mlo sta info.

Change-Id: I6c157d1381543637d9ce82c9a45864eed6de4396
CRs-Fixed: 3032861
2021-09-15 06:12:52 -07:00
sheenam monga
dd9481c12a qcacld-3.0: change mode to p2p device for p2p interface
Currently, mode of p2p virtual interface with type managed
is added as sta mode. This may cause issue during p2p find
as in function p2p_vdev_check_valid probe response frames
are dropped for sta mode.

Fix is to convert mode to P2P DEVICE mode from STA mode in
case added interface string contains p2p substring.

Change-Id: I9bf9d8c44af940b42c38cd7819bcdb9c00a90a26
CRs-Fixed: 3036500
2021-09-15 00:49:07 -07:00
Alan Chen
ea9938f5e4 qcacld-3.0: Fine tune PM QOS vote for allowing/preventing RTPM
For CPU, the enter & exit latency of the deepest LPM mode(CXPC) is
about ~10ms. So long as required QoS latency is longer than 10ms,
CPU can enter CXPC mode. Add 10 ms threshold for allowing and
preventing dynamic RTPM from PM QOS callback.

Change-Id: I8e3026e0e1bab548ab727a52569de9cb17fb5918
CRs-Fixed: 3032657
2021-09-13 17:02:57 -07:00
Aditya Kodukula
ac2783819c qcacld-3.0: Move MDNS offload changes to a new file
Add a new file and move mdns offload changes into it.

Change-Id: I6b42dd7abfbf91952ca2b7e6a89b46df269ff32f
CRs-Fixed: 3032927
2021-09-12 01:12:17 -07:00
Lincoln Tran
1922e2a9b5 qcacld-3.0: Move regulatory wait to restart path
The current logic to wait for the regulatory update is set in
hdd_wlan_start_modules. However, this function is called in both normal
startup and in idle restart. The regulatory event only comes to the
driver on idle restart. Set the flag in the idle restart path only.

Change-Id: I52ac1f2d84650fd3757133c9bc28e87ee2b903cb
CRs-fixed: 3030575
2021-09-10 17:51:48 -07:00
Yu Wang
a4791d8279 qcacld-3.0: add build flag for network package timestamping
Network package timestamping is optional for TSF feature,
to make it configurable, add a new build flag
WLAN_FEATURE_TSF_PLUS_SOCK_TS.
This flag will be set only when CONFIG_WLAN_SYNC_TSF_PLUS
is enabled and CONFIG_WLAN_SYNC_TSF_PLUS_DISABLE_SOCK_TS
is not.

Change-Id: I413e85fadf93264cd41c2739b6d870aa08d60efb
CRs-Fixed: 3027378
2021-09-10 15:36:13 -07:00
Yu Wang
cfeefec851 qcacld-3.0: add fallthrough statement to fix compile error
Add fallthrough statement to identify intentional fall-through case.

Change-Id: I563cec88808a8e72e136e67ca81de1a0105c8e60
CRs-Fixed: 3033125
2021-09-10 15:36:06 -07:00
Kiran Kumar Lokere
7ef82b2370 qcacld-3.0: Fix the TWT suspend operation command failure
TWT params are optional attributes for TWT suspend operation.
Do not mandate the check for TWT params for TWT suspend command.
Parse the TWT params if attribute is present in the suspend
command else use the default value.

Change-Id: I62fa5e0e8a9c0346957184b9578bdd273017df21
CRs-Fixed: 3027776
2021-09-10 15:35:54 -07:00
Chaoli Zhou
c4e53f966a qcacld-3.0: Return EBUSY instead of EINVAL in SSR case
In the SAP + p2g go SSR case, wpa_supplicant
will receive INTERFACE_UNAVAILABLE while driver
is doing SSR, then it will triger wpa_supplicant
to remove the p2p go from the interface and
change the mode from NL80211_IFTYPE_P2P_GO to
NL80211_IFTYPE_STATION. But it has the possibility
that switch mode failure due to qdf_is_recovering
is true from __dsc_vdev_can_trans, then
wpa_supplicant will get error code -EINVAL from
wlan_hdd_cfg80211_change_iface.
But current wpa_supplicant just only support
mode switch retry in the EBUSY case, so change the
return value from EINVAL to EBUSY if driver is
in recovery state to let wpa_supplicant has the
chance to do mode switch retry in the SSR case.

Change-Id: Id0f959a1e8386061d0258f520dba17e9efae1d08
CRs-Fixed: 2929212
2021-09-10 15:35:47 -07:00