Commit Graph

18420 Commits

Author SHA1 Message Date
Srinivas Dasari
62bb6191b1 qcacld-3.0: Wait for NDP_END indication from firmware
When application issues NDP end to terminate an NDP connection,
host driver sends a request to the firmware and firmware
terminates the NDP by sending NDP end frame to the peer.
Currently, driver returns immediately after posting request to
the firmware. Application might issue NDI delete immediately
after returning from NDP_END request.
But firmware might take some time to complete the NDP termination
and send NDP_END indication to driver.
When driver tries to delete the NDI before receiving NDP_END
indication from firmware, it causes inconsistency in firmware as
the NDI on which the NDP is parked is freed.
So, wait till the NDP_END indication comes from
firmware(or timeout happens) before returning from ndp_end request
context.

Change-Id: Ied7ed36451ef007e38f67d48c54290b9dd674f54
CRs-Fixed: 2616018
2020-02-10 13:32:36 -08:00
nshrivas
f10037c085 Release 5.2.0.169V
Release 5.2.0.169V

Change-Id: I78f70276ab2abb47da3631a6e6d7d44435a0d752
CRs-Fixed: 774533
2020-02-10 11:59:00 -08:00
Sravan Goud
bf58054b02 qcacld-3.0: Add feature flag to not process rxdma decrypt err
Add feature flag DROP_RXDMA_DECRYPT_ERR to not process or drop
frames coming with error code as rxdma decrypt error.

Change-Id: I9ca8905c6487051f57a5203e5fe1a530a74a951a
CRs-Fixed: 2617442
2020-02-10 11:59:00 -08:00
Ashish Kumar Dhanotiya
b3ae646bf2 qcacld-3.0: Add support for the NAN config items
Currently there is no inis for NAN component:
1. To configure the keep alive period for the
NDI interface.
2. To enable/disable discovery of NAN cluster with
Master Preference (MP) as 0 when a new device is
enabling NAN.

Add ini support to configure above mentioned values.

Change-Id: I47b67eb89fb8849960a9f492d2909e45b96308f3
CRs-Fixed: 2617839
2020-02-10 11:58:46 -08:00
nshrivas
e5b9856f61 Release 5.2.0.169U
Release 5.2.0.169U

Change-Id: Iba1b3e13f41a5e5d03ca0b96f1cee5bc704235cd
CRs-Fixed: 774533
2020-02-10 10:14:50 -08:00
Kiran Kumar Lokere
63faa9b6b0 qcacld-3.0: Rename ioctl ldpc setting for SAP
Rename the ioctl ldpc setting for SAP to use same naming as
STA mode.

Change-Id: Iaebde9cf542637bd82dbc3812b96dec77683cc2c
CRs-Fixed: 2618149
2020-02-10 10:14:50 -08:00
Abhishek Ambure
293c2d3bf6 qcacld-3.0: Always append preferred roam scan channels
For ADDROAMSCANCHANNELS command, always append user given channels
into the existing preferred channels list in driver. If the preferred
channel list exceeds SIR_ROAM_MAX_CHANNELS i.e. 80 then overwrite
oldest entries with new channels.

Change-Id: Ifa12b1e4d75dd927bdbceea9a076ed1bcbd91f4f
CRs-Fixed: 2618318
2020-02-10 10:14:30 -08:00
nshrivas
e45298865b Release 5.2.0.169T
Release 5.2.0.169T

Change-Id: Ia6de100db07b9411edf3454831b29e7b9c7b165d
CRs-Fixed: 774533
2020-02-10 08:32:29 -08:00
Ashish Kumar Dhanotiya
f6871a8e8c qcacld-3.0: Resolve memleak in hdd_configure_sar index
In hdd configure sar index api if the FW supported version is not
SAR_VERSION_2, in that case there is a mem leak issue as the
memory is allocated for sar_command is before the fw sar version
check and in case of fw sar version check failed, memory allocated
for sar command is not freed.

To resolve above issue, move the version check before the memory
allocation for sar command.

Change-Id: I1d5e6bad63134c89ac456c3247eebad79e8f8c79
CRs-Fixed: 2618648
2020-02-10 08:32:29 -08:00
sheenam monga
65415d12d9 qcacld-3.0: Log optimization for NCHO
Currently there are unnecessary/duplicate logging. Identify and
reduce those logs that are not necessary.

Change-Id: I648b84786f9009d45e54fa67c21c834a1eae1608
CRs-Fixed: 2617648
2020-02-10 08:32:11 -08:00
nshrivas
a464d4d014 Release 5.2.0.169S
Release 5.2.0.169S

Change-Id: I3c51e82c98e9c55577c88649c8c8ec1075b96606
CRs-Fixed: 774533
2020-02-10 06:41:18 -08:00
Surabhi Vishnoi
765dcc910f qcacld-3.0: Add FTM TIME SYNC component in target_if
This patchset adds the FTM TIME SYNC component in
target_if to register the ftm time sync wmi events/cmds.

Change-Id: I4ea14266a912c9d261a67809556774860b5ddab1
CRs-Fixed: 2617055
2020-02-10 06:41:17 -08:00
nshrivas
c37f9e0261 Release 5.2.0.169R
Release 5.2.0.169R

Change-Id: If767eab636a6650c5b059832977383b0811d338b
CRs-Fixed: 774533
2020-02-10 04:31:34 -08:00
Surabhi Vishnoi
8333061e83 qcacld-3.0: Add pld API to get the audio timestamp
Add pld API to get audio timestamp needed in FTM wlan
timesync feature to synchronise the audio clocks of
master and slave devices

Change-Id: I6f08e33904e26728492286f516ce5a8074afd1ea
CRs-Fixed: 2616917
2020-02-10 04:31:33 -08:00
nshrivas
dcb6fb30c1 Release 5.2.0.169Q
Release 5.2.0.169Q

Change-Id: Ic1d0207ed0dd04b85181328cb2f529630441fe3f
CRs-Fixed: 774533
2020-02-10 02:31:49 -08:00
Sourav Mohapatra
5e4000bde8 qcacld-3.0: Remove validate_context check from wlan_resume
Presently, there is a very narrow race condition that causes
scheduler_thread to remain in a suspended state for undefined period of
time. The race condition occuers between idle_psoc_timeout and
wlan_hdd_cfg80211_resume_wlan.

As a part of idle_psoc_timeout, the driver calls hdd_wlan_stop_modules
that sets the flag "stop_module_in_progress" and checks if driver is in
suspended state. If yes, it resets the flag and returns. But in the case
of a race condition, before this reset and return is carried out,
wlan_hdd_cfg80211_resume_wlan is invoked. The validate_context inside
the resume function fails due to the above mentioned flag being set. As
a result, resume fails and the driver stays in suspended state. This
causes the driver to enter a infinite loop of stop_modules not being
successful.

To close this small window of contention, remove the validate_context
check. hdd_ctx is always guranteed to be valid and also DSC takes
care of synchronizing the operation, thus the check is redundant.

Change-Id: I723f78e4c33bdc531776c46eff2428dbd869493f
CRs-Fixed: 2616177
2020-02-10 02:31:49 -08:00
sheenam monga
724306fbed qcacld-3.0: Log optimization for beacon report
Currently there are unnecessary/duplicate logging. Identify and
reduce those logs that are not necessary.

Change-Id: I5473db8cf2406aa6aa2f8531cf5a0cc8b7bd2188
CRs-Fixed: 2614121
2020-02-10 02:31:35 -08:00
nshrivas
7ac4ced743 Release 5.2.0.169P
Release 5.2.0.169P

Change-Id: I41b5839be463d20244d8294c8b494e4bc4d82780
CRs-Fixed: 774533
2020-02-08 18:59:48 -08:00
Alan Chen
a507e41a87 qcacld-3.0: Add module enable check in pm_qos_notify
pm_qos_notify() should do nothing if WiFi module is not enabled.

Change-Id: I8eaf78f2ec547f33921c8337b9b3ae178c1709e1
CRs-Fixed: 2618148
2020-02-08 18:59:47 -08:00
nshrivas
426d193a9e Release 5.2.0.169O
Release 5.2.0.169O

Change-Id: Id68511f3faa7525721c890e5a986a8b127a1d7a0
CRs-Fixed: 774533
2020-02-08 02:07:04 -08:00
Amruta Kulkarni
fc875ea635 qcacld-3.0: Cleanup for function wlan_reg_is_dfs_ch()
Replace wlan_reg_is_dfs_ch() with wlan_reg_is_dfs_for_freq()

Change-Id: Ifa62248169ad7b8ff1c62cab44c92d99a8db0e45
CRs-Fixed: 2609311
2020-02-08 02:07:03 -08:00
nshrivas
db47e1d060 Release 5.2.0.169N
Release 5.2.0.169N

Change-Id: I89a85d84fb647da99f44c113cc227b786236245d
CRs-Fixed: 774533
2020-02-07 23:16:38 -08:00
Srinivas Dasari
a44ae3f2a3 qcacld-3.0: Send appropriate NDP peer mac address for remove peer
Currently, wma->peer_macaddr is passed as peer mac address for
NDP peer removal. This gets filled only when PEER_STATS_INFO is
queried from firmware. This is not the right mac address to be
sent for peer removal. Driver might attempt to remove an invalid
peer(or NULL) which leads to assertion in wma_remove_peer.
Get the peer mac address from tpDeleteStaParams which is
sent from lim and pass it to wma_remove_peer.

Change-Id: I90beb7edc1d6ad5790ed972dcb9d3ac42bc04ea7
CRs-Fixed: 2617918
2020-02-07 23:16:38 -08:00
nshrivas
7a562b0d3f Release 5.2.0.169M
Release 5.2.0.169M

Change-Id: I3f55700d58805c0d918e5ebe905248862350b4b1
CRs-Fixed: 774533
2020-02-07 17:21:37 -08:00
Ashish Kumar Dhanotiya
309af01f1d qcacld-3.0: Configure sar sleep index to FW
Currently there is no SAR index is configured to the FW
before device goes into suspend mode.
with the new requirement, configure the sleep mode index
as sar power limit to the FW before device goes into
suspend mode and configure safety mode index to the FW
on wakeup.

Change-Id: Icedbab047ec3bb252f0ed9c1b2baf04d2726a60e
CRs-Fixed: 2617102
2020-02-07 17:21:36 -08:00
nshrivas
751c9593b0 Release 5.2.0.169L
Release 5.2.0.169L

Change-Id: I2a8abb6fc8d07b03ec4c340a556b0d25d7243258
CRs-Fixed: 774533
2020-02-07 15:42:20 -08:00
gaurank kathpalia
385977d071 qcacld-3.0: Optimize log in connect path
Optimize log in connect path during phase. Remove duplicate logs
and combine scattered info.

Change-Id: I6f57405669987b35d5c0acb2f0b818e5e61bd7a9
CRs-Fixed: 2617508
2020-02-07 15:42:20 -08:00
nshrivas
fcdfa57793 Release 5.2.0.169K
Release 5.2.0.169K

Change-Id: I9302433333be5d10551841d13ce83931befcd778
CRs-Fixed: 774533
2020-02-07 14:13:03 -08:00
Pankaj Singh
134bb1fe06 qcacld-3.0: Reduce excessive logging in P2P module
Currently there are lot of duplicate logging. Identify and
reduce those logs that are not absolutely necessary.

Change-Id: I649ce3bec8c3c8542fe9edd08907da9ab01fa948
CRs-Fixed: 2617504
2020-02-07 14:13:03 -08:00
nshrivas
53f0eca883 Release 5.2.0.169J
Release 5.2.0.169J

Change-Id: Ib07138b8234c54a6056c759fb892e2a9229b5ca0
CRs-Fixed: 774533
2020-02-07 12:12:56 -08:00
Abhishek Singh
9e0b8cdc2e qcacld-3.0: Remove duplicate logs from sta_send_add_bss
lim_sta_send_add_bss_pre_assoc, sta_send_add_bss and
wma_send_peer_assoc have duplicate logs.

Also send_peer_assoc_cmd_tlv print all the required info with
flags and other params.

So remove the duplicate logs and keep only missing info in
sta_send_add_bss and wma_send_peer_assoc, which is not printed
anywhere.

Change-Id: Ic5aa63f1a4296553b584bcc768d8c5cb04ddddf3
CRs-Fixed: 2616910
2020-02-07 12:12:56 -08:00
Abhishek Singh
df747419bc qcacld-3.0: Optimize logging in wma peer create
Optimize logging in wma peer create

Change-Id: Iabaf73703336f3294a508f27c74a2df97b480eb7
CRs-Fixed: 2617006
2020-02-07 12:12:41 -08:00
nshrivas
62ef5a7b60 Release 5.2.0.169I
Release 5.2.0.169I

Change-Id: I25d65b07c4a4a2ea15b2954918b5156f7f1200d6
CRs-Fixed: 774533
2020-02-07 10:39:41 -08:00
Abhishek Singh
3be6fabc18 qcacld-3.0: Optimize logs while printing HT/VHT/HE MCS
Optimize logs while printing HT/VHT/HE MCS

Change-Id: Ie4953c25841b7940df101affa9cf5c4b4a9a099e
CRs-Fixed: 2616911
2020-02-07 10:39:41 -08:00
Alan Chen
c88bfc6f5a qcacld-3.0: Trigger runtime pm sync resume during driver unload
Runtime PM needs to be sync resumed during driver unload. Hence, call
runtime pm sync resume during driver unload.

Change-Id: I20423871a82f33fcbaa3a64d741022f128785075
CRs-Fixed: 2615676
2020-02-07 10:39:26 -08:00
nshrivas
1773a4618b Release 5.2.0.169H
Release 5.2.0.169H

Change-Id: If75d4d656e22fdf42869da67994e334e9565916d
CRs-Fixed: 774533
2020-02-07 09:04:10 -08:00
Ashish Kumar Dhanotiya
4f5c252a82 qcacld-3.0: Add SAR request-response event
Add support SAR request-response event. When
sar_unsolicited_timer expires driver sends
QCA_NL80211_VENDOR_SUBCMD_GET_SAR_LIMITS_EVENT event to
user space and expects user space to set sar power limits
with the vendor command
QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS.

Add a request-response event to wait for
QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS vendor command from
user space. If driver does not get
QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS command from user space
for a specified number times, driver configures the sar safety
index to the FW.

Change-Id: Ic2b9e0b7fe06093ce849fb46df7bfce5da409ef6
CRs-Fixed: 2615519
2020-02-07 09:04:10 -08:00
nshrivas
cce65fc093 Release 5.2.0.169G
Release 5.2.0.169G

Change-Id: I8fe98dc64b51eecd9af13e0a7c8aca27d1e5cc0e
CRs-Fixed: 774533
2020-02-07 07:33:21 -08:00
Ashish Kumar Dhanotiya
3d5a742d5c qcacld-3.0: Add SAR unsolicited timer
Add SAR unsolicited timer to the driver. This timer starts
on every data tx (if not already running) and stops on
command QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS.
If this timer expires, a vendor event
QCA_NL80211_VENDOR_SUBCMD_GET_SAR_LIMITS_EVENT is sent to the
user space to issue the QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS
command.

Change-Id: Ic30e5ac606d2b6b0cbc9209174adcd5213eac08e
CRs-Fixed: 2615510
2020-02-07 07:33:20 -08:00
Ashish Kumar Dhanotiya
97de5e6d0b qcacld-3.0: Add SAR safety Timer
Add SAR safety timer to the driver. This timer starts
when first QCA_NL80211_VENDOR_SUBCMD_SET_SAR_LIMITS
vendor command is recived. This timer gets
reset on every sar set vendor command.
When this timer expires, configure sar safety index to
the FW and restart the timer.

Change-Id: I0536ab88baf962e1bc2aef39478380534e0e1401
CRs-Fixed: 2615442
2020-02-07 07:33:05 -08:00
nshrivas
378713290f Release 5.2.0.169F
Release 5.2.0.169F

Change-Id: I897f5995c30166dda58f1295eced4bfb2ff92289
CRs-Fixed: 774533
2020-02-07 04:32:12 -08:00
Ashish Kumar Dhanotiya
d2fef2cda4 qcacld-3.0: Add ini configs related to SAR safety feature
As part of new requirement add ini configurations
gSarsafetyTimeout, gSarSafetyUnsolicitedTimeout,
gSarSafetyReqResTimeout, gSarSafetyReqResRetry,
gSarSafetyIndex, gSarSafetySleepIndex,
gEnableSarSafety, gConfigSarSafetySleepIndex.

Change-Id: I18df23896b52aa1bbf8e071e27703d4e9e1738f1
CRs-Fixed: 2612843
2020-02-07 04:32:12 -08:00
nshrivas
a27dd7907b Release 5.2.0.169E
Release 5.2.0.169E

Change-Id: Iaa3fe0c4fa51db7bd7e75febe12036654053b41a
CRs-Fixed: 774533
2020-02-07 03:06:11 -08:00
Sourav Mohapatra
2cbc99c302 qcacld-3.0: Free link_layer_stats results properly
As per the logic implemented in the FW, it will send a dummy event for
link layer stats in case the buffer allocation fails. In this case,
there can occur a scenario in host wherein we are not properly freeing
the previously allocated memory.

In the event handler wma_unified_link_radio_stats_event_handler, if the
event is dummy, we are updating the value of the num_radios inside
wma_handle->link_layer_results. This num_radios is later used to free
any allocated memory. On setting it to zero, we are preventing that
memfree to occur; leading to a memleak.

To fix this, in case there is a dummy event, first free any possible
previous results before setting the num_radios to be zero.

Change-Id: Ibe4ddf1a137a33130100483cefb004b7dae4ce02
CRs-Fixed: 2610754
2020-02-07 03:06:11 -08:00
nshrivas
823052541b Release 5.2.0.169D
Release 5.2.0.169D

Change-Id: I74ba5bc49215ab82a8e138a327f8fccc8c298319
CRs-Fixed: 774533
2020-02-07 00:15:46 -08:00
Sourav Mohapatra
9243462d48 qcacld-3.0: Keep driver synced with proper dot11 mode as per INI
The INI param gDot11Mode is used to indicate the support that the driver
should advertise. Currently the behavior of the driver is out of sync
with the mode supported over the air and the mode provided to the
framework.

In one particular case, the driver sends VHT supported as
true to the framework even though the INI gDot11Mode is set to 11n only.
This results in the frames to be transmitted with 11n capabilities while
the mode advertised is different.

To rectify this, check for the dot11 mode before setting the
corresponding supported bit in the wiphy. The value being advertised
should be the intersection of gDot11Mode INI and the driver and
firmware capability.

Change-Id: Ic2f1558c72fc801df9d7ca6b3a0182619b93cf0d
CRs-Fixed: 2612620
2020-02-07 00:15:45 -08:00
nshrivas
8df8c5e314 Release 5.2.0.169C
Release 5.2.0.169C

Change-Id: Iead2b450db2b0ff178b88a419f3bbc797e2fe6f6
CRs-Fixed: 774533
2020-02-06 22:44:57 -08:00
Vevek Venkatesan
656edfa1f8 qcacld-3.0: add support to customize dscp-to-up map table
Add support to customize DSCP-to-UP map table and send the
customized map values to FW to update its corresponding
map table.

Change-Id: Ibe9704a90468c898dd2e60fdf83a271152f654ce
CRs-Fixed: 2616247
2020-02-06 22:44:57 -08:00
nshrivas
3ea423bf7e Release 5.2.0.169B
Release 5.2.0.169B

Change-Id: I3130a42aea4c3d8ae63f66ebf37521e966026e57
CRs-Fixed: 774533
2020-02-06 14:32:02 -08:00
Pragaspathi Thilagaraj
717afa5c0e qcacld-3.0: Remove unused roaming diag logs
Roaming logs are logging to kmsg, so unused diag log
sending API can be removed.

Remove unused roaming diag logs.

Change-Id: Idd5cfd2ad1f63394cb6b1872512bcc17307a78e6
CRs-Fixed: 2617079
2020-02-06 14:32:02 -08:00