Commit graph

21,672 commits

Author SHA1 Message Date
snandini
4e99397ebe Release 2.0.8.11L
Release 2.0.8.11L

Change-Id: I78ed24a254ebb54543839418f1cce87160a33f57
CRs-Fixed: 774533
2021-02-25 01:25:09 -08:00
Karthik Kantamneni
5d68186b66 qcacld-3.0: Check for TCP proto in bypass_fisa API
Check for TCP proto in bypass_fisa API and deliver nbuf without fisa.
This will avoid additional processing and helps to deliver nbuf earlier.

Change-Id: I26a78e1204ddebab3a6c6e852ce6d289106dd110
CRs-Fixed: 2884112
2021-02-24 20:49:18 -08:00
snandini
bea17515d2 Release 2.0.8.11K
Release 2.0.8.11K

Change-Id: I4392575cdf6d4eb765d0d7449168e26668b94967
CRs-Fixed: 774533
2021-02-24 11:20:29 -08:00
Bapiraju Alla
b5d0b97c2e qcacld-3.0: Protect set_thermal_mitigation with dsc psoc sync
Currently, the operation set thermal mitigation which is invoked
from PLD is not dsc protected. As a result it is causing a memory
leak issue when there is an idle shutdown is happening in parallel.

To avoid this, protect set thermal mitigation operation with dsc psoc
sync.

Change-Id: Id36086dd7668258f0aa1d57bc30948e14510e4de
CRs-Fixed: 2882729
2021-02-24 02:39:29 -08:00
snandini
d97eac5ad9 Release 2.0.8.11J
Release 2.0.8.11J

Change-Id: I3c3e61f439ea56a87b6bc85f9e43423920986ce1
CRs-Fixed: 774533
2021-02-23 03:30:59 -08:00
Bapiraju Alla
be3cf6a602 qcacld-3.0: Add INI param to read MAC address from MAC cfg file
Currently, Driver reads MAC address from MAC cfg file if it is present.
Kernel has a timeout of 60secs and userspace tries to loop till the
file is read if it is during the boot. So this will result in dsc
transaction timeout if the MAC cfg file is not present in the device.

To avoid this, add INI parameter to read this MAC cfg file and enable
it only when the MAC cfg file is present in the device.

Change-Id: I0bd9c089b6077534a07cb68deb07feb6064a5b88
CRs-Fixed: 2877424
2021-02-23 13:04:31 +05:30
snandini
c73e607c92 Release 2.0.8.11I
Release 2.0.8.11I

Change-Id: I1931a9e349ecbdbfe7732613e6838ddfa14ce431
CRs-Fixed: 774533
2021-02-22 20:18:13 -08:00
Abhinav Kumar
943ff67ea3 qcacld-3.0: Possible OOB read when parsing FT IE
FTIE buffer carries multiple FT subelements (like R1KH-ID,
R0KH-ID, GTK, IGTK, etc).

Total FTIE buffer len = Number of FT subelements * (Subelement
ID (1 bytes) + lenght (1 bytes) + data length).

Currently, Host checks only the minimum length for FTIE buffer
while filling each FT subelements. This leads to OOB if the
remaining length of FTIE length buffer less than the length of
an FT subelement.

Before filling each subelement into FTIE buffer, add a check
to validate subelement length against remaining FTIE length

Change-Id: I5d6f4a59eef591d3a2da9f2403738d1fdd1a88b2
CRs-Fixed: 2857084
2021-02-22 20:18:13 -08:00
snandini
5095db9964 Release 2.0.8.11H
Release 2.0.8.11H

Change-Id: If25604a30579a21d3d7398aa83af25048eb27723
CRs-Fixed: 774533
2021-02-21 18:33:15 -08:00
Pragaspathi Thilagaraj
593786d127 qcacld-3.0: get wake duration from stored session params
Retrieve the stored TWT wake duration for a session for
to send it as part of get twt statistics response.

Change-Id: If3c23d05331d5dfb43f74f5380e81eaf2799d2e7
CRs-Fixed: 2859812
2021-02-21 18:33:15 -08:00
Pragaspathi Thilagaraj
fe1d450190 qcacld-3.0: Don't delete TWT session if teardown fails
When TWT teardown is received, driver sets the twt setup done
flag to false and clears the TWT dialog id/state for the TWT
session irrespective of the teardown status sent by firmware.
This causes TWT session deletion even if ack is not received for
TWT teardown frame or internal error due to which TWT teardown
frame was not sent over air.

Don't clear the TWT sesson if teardown failure due to internal
error or no ack is received for TWT frame.

Change-Id: I7d5cf423c3cd0d4be9bb2ff0b238a3fa069783cf
CRs-Fixed: 2866195
2021-02-21 18:33:08 -08:00
Rajasekaran Kalidoss
604f083f03 qcacld-3.0: Check if TWT session exists for get and clear stats
Check if a TWT session has been created for the dialog_id given
in get and clear stats command request. Reject it in driver if
session doesn't exist.

Change-Id: Ie9a761128e3a0188c4ece9a7bac58268a2ebb88f
CRs-Fixed: 2864284
2021-02-21 18:33:01 -08:00
Rajasekaran Kalidoss
40955985cf qcacld-3.0: Multiply wake_interval mantissa by TU
The QCA_WLAN_VENDOR_ATTR_TWT_SETUP_WAKE_INTVL_MANTISSA attribute
should be specified in multiples of TU. Correct the logic to
multiply it by 1024 to get wake interval mantissa in microseconds.

Change-Id: I2c6eb3ca5541b97cffbe0de44351571839fa00e6
CRs-Fixed: 2862107
2021-02-21 18:32:54 -08:00
Rajasekaran Kalidoss
d0e3a02dc5 qcacld-3.0: send get status wake interval in multiples of TU
The current get params logic sends wake_interval_us
without converting to multiples of TU. Correct it to
send the get status wake interval in multiples of TU to the
userspace

Change-Id: Ib583581287f9440e438ef3296ea48ef1148ae083
CRs-Fixed: 2862651
2021-02-21 18:32:48 -08:00
Pragaspathi Thilagaraj
4e5c5e4f68 qcacld-3.0: Reset the stored TWT dialog ID on TWT setup failure
Driver doesn't clear the stored dialog id for TWT session when
TWT setup returns failure. This causes subsequent TWT sessions
to fail.

Reset the TWT session state and clear the dialog id for the
failed TWT setup to allow the next TWT setup commands.

Change-Id: I2f0ccb7a07ef49011b01d7336389d6ce56315fe9
CRs-Fixed: 2865240
2021-02-21 18:32:42 -08:00
Pragaspathi Thilagaraj
6fb3eb4f3a qcacld-3.0: Allow TWT teardown after roaming
Allow TWT teardown event from firmware after roaming or peer
initiated teardown to indicate the value to userspace. Also
make changes to send the wake duration value in microseconds
scaled with the TWT wake duration multiplication factor.

Change-Id: Ibcd0c51b1930094e0efc3832db5b8aadaa5748ea
CRs-Fixed: 2859775
2021-02-21 18:32:36 -08:00
Rajasekaran Kalidoss
570071bdc4 qcacld-3.0: Release event buffer memory for twt get stats
Release event buffer memory used for TWT get stats request.

Change-Id: Ia76b5c7ac5c8cb0778c93307dfc0e91c29707344
CRs-Fixed: 2857937
2021-02-21 18:32:30 -08:00
Rajasekaran Kalidoss
1f52db8f0a qcacld-3.0: Add support for TWT clear statistics
Add support to send TWT clear statistics request
to firmware.

Change-Id: I435b743955d44a02235b92f98beb302a6a21f036
CRs-Fixed: 2855624
2021-02-21 18:32:24 -08:00
Rajasekaran Kalidoss
34d700eacc qcacld-3.0: Register cp stats legacy ops
Support has been added in common code to register both
common tx ops and MC/WIN specific tx ops. Add support to
register and tx ops for MC specific stats.

Change-Id: I4e5263e4685a707008ec3c5e96f50c707b071fe9
CRs-Fixed: 2851256
2021-02-21 18:32:19 -08:00
Rajasekaran Kalidoss
e5f614db0e qcacld-3.0: Change TWT nudge to asynchronous command
Change TWT nudge command to be asynchronous. Handle wake
time tsf field in the nudge command response.

Change-Id: I22c75a42bf60f52f52d7d7fe19f408ebb55f360a
CRs-Fixed: 2847173
2021-02-21 18:32:14 -08:00
Pragaspathi Thilagaraj
a59bc2ffe2 qcacld-3.0: Add support for TWT session state in status query
Add support to include the session state in TWT status query
response. Session state is set to active once setup is
complete and when resume response event is received from
firmware. Session state is suspend when suspend response
event is received from firmware.

Change-Id: I1f47947c05f80bd85199fd81b951dc54deacdc09
CRs-Fixed: 2854500
2021-02-21 18:32:09 -08:00
Rajasekaran Kalidoss
e8c54f97df qcacld-3.0: Add support to get TWT target capabilities
Add support to get the following TWT target capabilities
1) Nudge 2) all twt and 3) statistics

Change-Id: If74e99b0ff920481bcabb0300129b9067082d113
CRs-Fixed: 2854927
2021-02-21 18:32:04 -08:00
Rajasekaran Kalidoss
ebcefb3044 qcacld-3.0: Add support for ctrl path stats infrastructure
Implement support for sending new control path stats
infrastructure via WMI_REQUEST_CTRL_PATH_STATS_CMDID and
WMI_CTRL_PATH_STATS_EVENTID in cp stats component. Also add
support for TWT Get statistics through this new method.

Change-Id: I62b3a525cde797cd5b809ca9e8e6c91d5651c6b4
CRs-Fixed: 2851016
2021-02-21 18:31:59 -08:00
Rajasekaran Kalidoss
3208dfe908 qcacld-3.0: Add support to handle twt_notify event
Add support to handle twt_notify event. Firmware can
terminate a TWT session without a Host trigger due to internal
reasons. In that case it sends an event to notify that it is
again ready for a TWT session setup.

Change-Id: I3508687cee93e16a26221a1bc7ad9c626a4f4523
CRs-Fixed: 2847158
2021-02-21 18:31:55 -08:00
Pragaspathi Thilagaraj
7c7202c531 qcacld-3.0: Reject back to back TWT commands
Don't allow TWT commands back to back till response for
existing command is not received.
Reject the new command till the existing command completion
event is received from firmware. Allow TWT teardown when
any other command is in progress after TWT setup is complete.

Change-Id: I9282230c7cb24691b44ddfd273972272fd80f44b
CRs-Fixed: 2853515
2021-02-21 18:31:50 -08:00
Pragaspathi Thilagaraj
689810ef6a qcacld-3.0: Create TWT context in peer private object
Create TWT context in peer object to store the TWT session
related parameters. Introduce mlme api to get/set various
twt session parameters for the peer.
Block the below commands till TWT setup is complete.
TWT GET
TWT Pause
TWT resume
TWT terminate

Add new files for TWT specific functionality in MLME component:
components/mlme/core/inc/wlan_mlme_twt_api.h
components/mlme/dispatcher/inc/wlan_mlme_twt_public_struct.h
components/mlme/dispatcher/inc/wlan_mlme_twt_ucfg_api.h
components/mlme/core/src/wlan_mlme_twt_api.c
components/mlme/dispatcher/src/wlan_mlme_twt_ucfg_api.c

Also return error to userspace if back to back TWT setup
command is received before TWT setup response is received from
firmware or already TWT setup is complete for given dialog id

Change-Id: I61e24dd41dc9dcb78fdfe33ef8fa0ecb374a4a72
CRs-Fixed: 2847213
2021-02-19 17:31:39 -08:00
snandini
fef8ffb42e Release 2.0.8.11G
Release 2.0.8.11G

Change-Id: I5b410180d4eae5e0c5ee78492d6e974500de3ca5
CRs-Fixed: 774533
2021-02-19 13:20:25 -08:00
Vevek Venkatesan
461295296a qcacld-3.0: add NULL check before calling rps_enable cb
Add a NULL check before calling rps_enable callback
from ipa_set_rps_per_vdev and also add a check to avoid
disabling rps twice.

Change-Id: Ib63b2cda99aa332905df640ffa2d401c22845ad2
CRs-Fixed: 2876490
2021-02-19 13:20:24 -08:00
snandini
35193a6200 Release 2.0.8.11F
Release 2.0.8.11F

Change-Id: I4b6a3d7e8def21d6c294fc8db26caae4468b451b
CRs-Fixed: 774533
2021-02-19 05:56:59 -08:00
Karthik Kantamneni
aea3e6a4be qcacld-3.0: Call qdf_check_state_before_panic with additional debug info
Call qdf_check_state_before_panic with caller function name and
line number details.

Change-Id: I9fb4b382576e52bc1ad7e316bd09e3124e8fce98
CRs-Fixed: 2857671
2021-02-19 05:56:59 -08:00
snandini
1dfc7f8a85 Release 2.0.8.11E
Release 2.0.8.11E

Change-Id: I3d81e68288e8afa9a48ebdfeb186d44cd20f84fc
CRs-Fixed: 774533
2021-02-19 00:56:47 -08:00
Pragaspathi Thilagaraj
c91578c420 qcacld-3.0: Update ciphers in RSO command from crypto component
Currently driver fills unicast, multicast & auth mode values from
csr session which is not updated after roaming to AP with different
security profile. This causes incorrect values in AP profile
command and subsequent roaming fails.

Send correct authmode/unicast and multicast ciphers in AP profile
command to firmware. Fill the values from the crypto component.

Also modify the below 2 ini default values as:
candidate_min_rssi_for_beacon_miss=-75
candidate_min_rssi_for_disconnect=-75

Change-Id: I33cc9f516447071e977768f01738eea7a2ecd99c
CRs-Fixed: 2879943
2021-02-19 00:56:47 -08:00
snandini
ad138cb3c6 Release 2.0.8.11D
Release 2.0.8.11D

Change-Id: Ia41a3e06dbca7f1690e1874636d2edf354bf9c98
CRs-Fixed: 774533
2021-02-18 21:17:45 -08:00
Jeff Johnson
9dc998fb56 qcacld-3.0: Kbuild: Add support for nested composites
As a result of long path names and a large number of source files,
combined with upstream kernel build infrastructure changes, the
qcacld-3.0 build may encounter E2BIG errors when linking the final
wlan.o. To address this problem support for nested composite objects
is being added to the kernel. Update the Kbuild with the logic
required to take advantage of the nested composite support.

Change-Id: Ic6748517a922fc03a43acab2b44133b37e02707a
CRs-Fixed: 2861273
2021-02-18 21:17:45 -08:00
Jeff Johnson
d2f6c5f0ef qcacld-3.0: Kbuild: Cleanup UMAC_INTERFACE_MGR_OBJS logic
Currently UMAC_INTERFACE_MGR_OBJS are added to OBJS when
CONFIG_INTERFACE_MGR is enabled.  An upcoming change requires that
assignments to OBJS be unconditional, so relocate the condition to
wrap the assignment of UMAC_INTERFACE_MGR_OBJS.

Change-Id: Ibfac21851b6a27a532cbe28a9be86909ea093e5d
CRs-Fixed: 2874549
2021-02-18 21:17:40 -08:00
Jeff Johnson
a8587dd253 qcacld-3.0: Kbuild: Relocate qdf_lro.o rule
Currently the qdf_lro.o rule is not located with the other QDF_OBJS
rules, so relocate it so that all of the QDF rules are contiguous.

Change-Id: Ia4d6e133901af900d5f63208e14ac24501ac005e
CRs-Fixed: 2868050
2021-02-18 21:17:34 -08:00
Jeff Johnson
c8e704f39d qcacld-3.0: Kbuild: Relocate Direct Buffer RX definitions
Currently the definitions of the Direct Buffer RX component are
defined in the middle of the WMA component definitions. Relocate these
definitions so that the WMA definitions are contiguous.

Change-Id: I3f83b70a18131a84cb262840103e705862498bc4
CRs-Fixed: 2868049
2021-02-18 21:17:29 -08:00
Jeff Johnson
4ceac79889 qcacld-3.0: Kbuild: Cleanup HTT_OBJS logic
Currently HTT_OBJS are added to OBJS when CONFIG_LITHIUM is not
enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
HTT_OBJS.

Change-Id: Ifdce8f5ab6b4597156341620ae101ee8be2b4afd
CRs-Fixed: 2868008
2021-02-18 21:17:24 -08:00
Jeff Johnson
be6e2c034a qcacld-3.0: Kbuild: Cleanup HAL_OBJS logic
Currently HAL_OBJS are added to OBJS when CONFIG_LITHIUM is enabled.
An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to HAL_OBJS is
already conditional upon CONFIG_LITHIUM so remove the condition from
the assignment to OBJS.

Change-Id: I0dd7ca874561ff6c6cd8ccfdae1775f6dcb9bf12
CRs-Fixed: 2868007
2021-02-18 21:17:18 -08:00
Jeff Johnson
2dfb4b04e4 qcacld-3.0: Kbuild: Cleanup FWLOG_OBJS logic
Currently FWLOG_OBJS are added to OBJS when
CONFIG_FEATURE_FW_LOG_PARSING is enabled.  An upcoming change requires
that assignments to OBJS be unconditional, so relocate the condition
to wrap the assignment of FWLOG_OBJS.

Change-Id: I6b09d9dfa2553943d3bb4370dc1977106a14a7d5
CRs-Fixed: 2868006
2021-02-18 21:17:13 -08:00
Jeff Johnson
fb9f8cc8a1 qcacld-3.0: Kbuild: Cleanup EPPING_OBJS logic
Currently EPPING_OBJS are added to OBJS when CONFIG_FEATURE_EPPING is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
EPPING_OBJS.

Change-Id: I69f9b1b707c9475a393f89f2297e90e4ee8d1e5e
CRs-Fixed: 2868005
2021-02-18 21:17:08 -08:00
Jeff Johnson
5dd00f4439 qcacld-3.0: Kbuild: Cleanup DFS_OBJS logic
Currently DFS_OBJS are added to OBJS when
CONFIG_WLAN_DFS_MASTER_ENABLE is enabled.  An upcoming change requires
that assignments to OBJS be unconditional, so relocate the condition
to wrap the assignment of DFS_OBJS.

Change-Id: I0c04087feb76c7fbbaa4231f1c36a83624e54482
CRs-Fixed: 2868004
2021-02-18 21:17:02 -08:00
Jeff Johnson
fd3f0a48f1 qcacld-3.0: Kbuild: Cleanup FWOL_OBJS logic
Currently FWOL_OBJS are added to OBJS when CONFIG_WLAN_FW_OFFLOAD is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
FWOL_OBJS.

Change-Id: I103628406108b0ca1d8290f61e379c796a63bce5
CRs-Fixed: 2868003
2021-02-18 21:16:57 -08:00
Jeff Johnson
cc6ff433b3 qcacld-3.0: Kbuild: Cleanup OCB_OBJS logic
Currently OCB_OBJS are added to OBJS when CONFIG_WLAN_FEATURE_DSRC is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to OCB_OBJS is
already conditional upon CONFIG_WLAN_FEATURE_DSRC so remove the
condition from the assignment to OBJS.

Change-Id: I011aa37270b8024d2f558bdb18aac2a02e3c1026
CRs-Fixed: 2868002
2021-02-18 21:16:52 -08:00
Jeff Johnson
f5978a55c7 qcacld-3.0: Kbuild: Cleanup IPA_OBJS logic
Currently IPA_OBJS are added to OBJS when CONFIG_IPA_OFFLOAD is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to IPA_OBJS is
already conditional upon CONFIG_IPA_OFFLOAD so remove the condition
from the assignment to OBJS.

Change-Id: I16217146d44b790298e47516c28e1ce6445ffed6
CRs-Fixed: 2868001
2021-02-18 21:16:47 -08:00
Jeff Johnson
5bf0a3641d qcacld-3.0: Kbuild: Cleanup PKTLOG_OBJS logic
Currently PKTLOG_OBJS are added to OBJS when CONFIG_REMOVE_PKT_LOG is
not enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
PKTLOG_OBJS.

Change-Id: I34b9bea3186e5bda12e7ce0d8a1327383170b6c1
CRs-Fixed: 2868000
2021-02-18 21:16:42 -08:00
Jeff Johnson
3c7c22225c qcacld-3.0: Kbuild: Cleanup HOST_DIAG_LOG_OBJS logic
Currently HOST_DIAG_LOG_OBJS are added to OBJS when BUILD_DIAG_VERSION
is enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
HOST_DIAG_LOG_OBJS.

Change-Id: Icdf6898b848f682d9617537394651f533ba81553
CRs-Fixed: 2867999
2021-02-18 21:16:37 -08:00
Jeff Johnson
364b207481 qcacld-3.0: Kbuild: Cleanup DISA_OBJS logic
Currently DISA_OBJS are added to OBJS when CONFIG_WLAN_FEATURE_DISA is
enabled. An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to DISA_OBJS is
already conditional upon CONFIG_WLAN_FEATURE_DISA so remove the
condition from the assignment to OBJS.

Change-Id: I2130b8efe12e5366b40856704d62d000a4e474f4
CRs-Fixed: 2867998
2021-02-18 21:16:31 -08:00
Jeff Johnson
2b0f119d7d qcacld-3.0: Kbuild: Cleanup ACTION_OUI_OBJS logic
Currently ACTION_OUI_OBJS are added to OBJS when
CONFIG_WLAN_FEATURE_ACTION_OUI is enabled. An upcoming change requires
that assignments to OBJS be unconditional. Fortunately the assignment
of .o files to ACTION_OUI_OBJS is already conditional upon
CONFIG_WLAN_FEATURE_ACTION_OUI so remove the condition from the
assignment to OBJS.

Change-Id: Icf1c4f061286e3ae88344b380deff4bf135143e1
CRs-Fixed: 2867997
2021-02-18 21:16:26 -08:00
Jeff Johnson
23839c7a47 qcacld-3.0: Kbuild: Cleanup PKT_CAPTURE_OBJS logic
Currently PKT_CAPTURE_OBJS are added to OBJS when
CONFIG_WLAN_FEATURE_PKT_CAPTURE is enabled. An upcoming change
requires that assignments to OBJS be unconditional. Fortunately the
assignment of .o files to PKT_CAPTURE_OBJS is already conditional upon
CONFIG_WLAN_FEATURE_PKT_CAPTURE so remove the condition from the
assignment to OBJS.

Change-Id: If9083c5ba382e1ae1a638b77e12437a707b69073
CRs-Fixed: 2867996
2021-02-18 21:16:20 -08:00