Commit Graph

13520 Commits

Author SHA1 Message Date
Abhishek Singh
bbe23a736c qcacld-3.0: Fix channel width update sent during channel switch
During channel switch if the new channel's phymode is different
than the old channel the host will update its phymode and
send vdev restart to firmware. Once vdev restart resp is received,
host sends new phymode and channel width to the firmware.

If host process beacon with opmode IE while waiting for vdev restart
response, it check if new channel width in bcn is valid for new
phymode and send channel width to firmware. If channel width changed
is greater than allowed value for older phymode, firmware is not able
to handle it.

Fix is to ignore any opmode IE during channel switch. Also ignore
the beacons with CSA/ECSA IE if channel switch detection is
offloaded. The opmode or any other change in beacon will be detected
with the beacons on new channel once AP moves to new channel.

Change-Id: If3bfb555dfa7b63dc997bbdf2fe6a0836bcf17fd
CRs-Fixed: 2361553
2018-12-14 16:05:55 -08:00
nshrivas
e5e5ab8f92 Release 5.2.0.111V
Release 5.2.0.111V

Change-Id: I28acd9a55b049a44057f9eff2371a86a933b865e
CRs-Fixed: 774533
2018-12-14 14:26:13 -08:00
Pragaspathi Thilagaraj
890d952906 qcacld-3.0: Add debugs in wma_remove_bss_peer path
wma_remove_bss_peer doesn't need req_msg, as only vdev id is
needed. So refine the function definition of wma_remove_bss_peer.

Remove calls to wma_cleanup_target_req_param() if
wma_remove_bss_peer succeeds, as it posts the req->user_data to
firmware. Add debugs in wma_remove_bss path to get more info.

Change-Id: I0d8f0bd74784f0a4542e8ae6301471804285752d
CRs-Fixed: 2363696
2018-12-14 14:26:12 -08:00
nshrivas
386a740a65 Release 5.2.0.111U
Release 5.2.0.111U

Change-Id: I9d536dd3c748b42791caab87e4fd8684cf73afce
CRs-Fixed: 774533
2018-12-14 12:48:34 -08:00
Ajit Pal Singh
ce05896f39 qcacld-3.0: Send WMI_BPF_SET_VDEV_ACTIVE_MODE_CMDID if BPF enabled
Send WMI_BPF_SET_VDEV_ACTIVE_MODE_CMDID only if BPF is enabled in .ini
file.

Change-Id: Ia093cfaa0ff44e4052150ee943e363ca6412cbe0
CRs-Fixed: 2362929
2018-12-14 12:48:34 -08:00
Chaoli Zhou
50bc9ad9e8 qcacld-3.0: Fix build error at SDX24.le.1.7 platform
Fix 'for' loop initial declarations are only allowed in C99 or C11 mode
build error at SDX24.le.1.7 platform.

Change-Id: I08cc4ee7558f0b390a8c848828272497f517ef08
CRs-Fixed: 2365266
2018-12-14 12:48:29 -08:00
nshrivas
77485371e1 Release 5.2.0.111T
Release 5.2.0.111T

Change-Id: I28535458fc1efada729f7e692f015e6bac2ba7a0
CRs-Fixed: 774533
2018-12-14 11:05:41 -08:00
Alok Kumar
0230129d11 qcacld-3.0: Add WMA callbacks to send peer unmap conf cmd to FW
Add supports to register WMA callbacks to send peer unmap conf
command to FW.

Change-Id: Ia709f5163d5e0a4b9f7141989c4e59183767f00e
CRs-Fixed: 2358129
2018-12-14 11:05:40 -08:00
chenguo
ede57cd0cc qcacld-3.0: Fix NULL VDEV point during peer remove in monitor mode
After gerrit#2436786, vdev in monitor mode is removed from vdev
list of pdev. So it is needed to use the new cdp api, which is
cdp_get_mon_vdev_from_pdev in stead of cdp_get_vdev_from_vdev_id
in monitor mode to register vdev.

CRs-Fixed: 2359997
Change-Id: I75cad531e161748a3830104516e44079dee636ec
2018-12-14 11:05:36 -08:00
Arunk Khandavalli
13015f1059 qcacld-3.0: Initial dsc psoc deployement for syfs entries
Integrate the sysfs entries  to the new dsc psoc infrastructure.

Change-Id: I4ccb012125fed7ff41ce9a4d887e0df6091aec23
CRs-Fixed: 2362343
2018-12-14 11:05:32 -08:00
Arunk Khandavalli
447837f9d2 qcacld-3.0: Initial dsc psoc deployement for cfg80211 ops
Integrate the psoc cfg80211 operations to new dsc
infrastructure.

Change-Id: I66120229752b77286ec3ba24710be1bd4eca24e5
CRs-Fixed: 2362336
2018-12-14 11:05:27 -08:00
Arunk Khandavalli
99716d177a qcacld-3.0: Initial dsc psoc deployement for vendor command
Integrate dsc psoc infrastructure to the vendor commands.

Change-Id: Ic50d7ec0bd32c835e3125a9c895b74cae4d15f09
CRs-Fixed: 2362332
2018-12-14 11:05:23 -08:00
nshrivas
46341514fd Release 5.2.0.111S
Release 5.2.0.111S

Change-Id: Ia659adb9b32b99e6f7be75ad59eb0e4e751c337e
CRs-Fixed: 774533
2018-12-14 07:15:11 -08:00
Sourav Mohapatra
c457ae6f18 qcacld-3.0: Feature flag for Wlan Latency Manager support
WLAN Latency Manager support is one of the capabilities that is sent
along with the service bits by firmware. Currently, driver is not
exposing this feature to the user space.

Create and add support for a feature flag to expose this feature to the
userspace.

Change-Id: Ica8213bdaeb32c7be01b6a71a7d8b7a32dc8611b
CRs-Fixed: 2363704
2018-12-14 07:15:10 -08:00
lifeng
faa83cb69c qcacld-3.0: Refine gFwDebugModuleLoglevel configurations
Refine gFwDebugModuleLoglevel configurations based on converged cfg
component. Remove related legacy codes.

Change-Id: I5a1099872163bdcf0fc2e08478c4b608529db736
CRs-Fixed: 2355599
2018-12-14 07:15:06 -08:00
Rakshith Suresh Patkar
9c46af1764 qcacld-3.0: Add support to dump last n dpt stat records
Add an argument to dump only last n dpt records of debug fs
dump_set_dpt_logs file.

Change-Id: I6ce96d1e57db773386e8ebc29436b33b2211a94f
CRs-Fixed: 2362507
2018-12-14 07:15:02 -08:00
nshrivas
502d2d3545 Release 5.2.0.111R
Release 5.2.0.111R

Change-Id: I36e3df6be6e3220c2086f44b1bb7b6ad7ac82140
CRs-Fixed: 774533
2018-12-14 05:34:51 -08:00
chenguo
2201c0ae46 qcacld-3.0: Fix NULL VDEV pointer during register in monitor mode
After gerrit#2436786(which the Change-ID is
Ie64a05d795660d557d928cb9b874fa5e702f4f55), vdev in monitor mode
is removed from vdev list of pdev. So it is needed to use the new
cdp api, which is cdp_get_mon_vdev_from_pdev instead of
cdp_get_vdev_from_vdev_id in monitor mode to register vdev.

CRs-Fixed: 2350720
Change-Id: Idd36cdb09666783db2042f77708be4dcc6b9d82b
2018-12-14 05:34:50 -08:00
Ashish Kumar Dhanotiya
7a11e273df qcacld-3.0: Enable MAC provisioning from ini
Currently MAC addresses are generated by driver only.
MAC addresses are queried from platform driver or wlan_mac.bin.
If platform driver gives  mac addresses, driver uses it, else it
will use wlan_mac.bin to update MAC addresses. If wlan_mac.bin also
don't have MAC addresses then random MAC addresses are generated
using the HW address or using device serial number.

Add an ini support to enable MAC provisioning. If MAC provisioning
is enabled, ensure that platform driver provides atleast 2 provisioned
MAC addresses. Query the derived addresses also from platform driver.
Generate the remaining random MAC addresses.

Change-Id: Ib943f9de70a78ba5d5e87d81c76b20341893f8e9
CRs-Fixed: 2153836
2018-12-14 05:34:46 -08:00
nshrivas
c05797770c Release 5.2.0.111Q
Release 5.2.0.111Q

Change-Id: Id9efb411ab32478995231140a5505b74c9c15e14
CRs-Fixed: 774533
2018-12-13 23:21:30 -08:00
Bala Venkatesh
cd9decb3f0 qcacld-3.0: Modify the MAX_TX_PWR_CAP to 30dbm
Modify the max tx power value form 22db to 30db
to cover regulatory power requirements.

Change-Id: Id24ed354ed364037ba0ff5dea9de9810fb255962
CRs-fixed: 2362060
2018-12-13 23:21:29 -08:00
Rajeev Kumar Sirasanagandla
d7987f16ef qcacld-3.0: Add ini to disable some aggressive TX features
Add action_oui ini gActionOUIDisableAggressiveTX to identify peers for
which some of aggressive TX features are to be disabled in firmware,
when DUT is operating in softap mode.

Aggressive TX features disabled are SIFS bursting, assist and support of
more than 32 frames in AMPDU.

Change-Id: I89fb6d40be5110b0331e84ed3239cd997ce0c899
CRs-Fixed: 2364888
2018-12-13 23:21:25 -08:00
Manikandan Mohan
9045e2e664 qcacld-3.0: Update for converged thermal throttle params
Update qcacld driver to use converged CFG component for thermal
mitigation throttle offload feature config params. Also cleanup
hdd ini config based redundant entries.

Change-Id: I9c94d1cd7bf9f630ed92ebe0f9f6d6233a216ee5
CRs-fixed: 2358492
2018-12-13 23:21:21 -08:00
Sravan Kumar Kairam
0af1ee5fc2 qcacld-3.0: Update ipa enable config to dp
Currently ipa enable config is not updated to dp as a result
dp ipa configuration is skipped even if ipa is enabled from ini.
Update the ipa enable config to dp config parameters.

Change-Id: I6602f2c9d3ac0a4470f18460b0c1057fab4147ca
CRs-Fixed: 2365811
2018-12-13 23:21:17 -08:00
nshrivas
d8a6844c75 Release 5.2.0.111P
Release 5.2.0.111P

Change-Id: Ie00ee0d2014bddfd310b779003a69fb8cdc45776
CRs-Fixed: 774533
2018-12-13 18:44:29 -08:00
Jeff Johnson
e866cac222 qcacld-3.0: Consolidate DS mode definitions
The file cds_ieee80211_common.h contains a large number of macros that
are used to describe most fields in IEEE 802.11 frames. Despite that,
currently WMA has an enum ds_mode to represent the Distribution System
Mode settings. In order to avoid unnecessary duplicate definitions
remove enum ds_mode and instead use the cds_ieee80211_common macros.

Change-Id: I0dc722009e063a1eac0da4afbe77f96772c583b2
CRs-Fixed: 2365060
2018-12-13 18:44:29 -08:00
Jeff Johnson
06ff3be1eb qcacld-3.0: Remove p2p_lo_in_progress from wma_txrx_node
Previously change I750870ccbe84e817954a3ee1a50e2e8daa5ab661
("qcacld-3.0: Remove obsolete P2P Listen Offload from WMA") removed
the only code that used the p2p_lo_in_progress field in struct
wma_txrx_node. Since it is now obsolete, remove it.

Change-Id: I9e9247a578fb07ef8089f2b5eb544e4e6595244a
CRs-Fixed: 2365059
2018-12-13 18:44:24 -08:00
Jeff Johnson
175e4f91fd qcacld-3.0: Remove Suspend & Resume remnants from WMA
Previously change Iba16643adf1cbd997138c740345e40c00c8e81f6
("qcacld-3.0: Add Suspend and Resume support in PMO") relocated
Suspend/Resume support from WMA to PMO. However that change left
behind in WMA some remnants that are no longer useful such as the
wma_resume_event, so remove them.

Change-Id: Icf35bafd8fdacdbdc71cfb4309a8bd15bfb1a244
CRs-Fixed: 2365057
2018-12-13 18:44:20 -08:00
Jeff Johnson
51971c7494 qcacld-3.0: Revise wma_mcs_rate_match() implementation
Currently some of the parameter names used in the implementation of
wma_mcs_rate_match() do not match the names used in the prototype.
This can be confusing to both humans and to code analysis tools, so
change the camelCase names used in the implementation to match the
prototype.

Change-Id: I87a85a7f1affa6bcad75f33f2bca6aa67475aa47
CRs-Fixed: 2365056
2018-12-13 18:44:16 -08:00
Jeff Johnson
f8e194833c qcacld-3.0: Remove obsolete GEN_PARAM enums
Previously change Id965dd8ee0fbddfa563335fd2fe225dcd20cd162
("qcacld-3.0: Port modulated dtim and override listen interval")
relocated support for configuring Modulated DTIM and Listen Offload
from WMA to PMO. The associated enumerations in enum GEN_PARAM are now
obsolete, so remove them, along with their default value macros.

Change-Id: Iac88c4b5578c24b6fcaefb935459f6e988892a1a
CRs-Fixed: 2365055
2018-12-13 18:44:12 -08:00
Jeff Johnson
083ee823c3 qcacld-3.0: Remove obsolete wma_map_channel() prototype
The driver contains a prototype for wma_map_channel() but no
implementation, so remove the prototype.

Change-Id: I1a8794c103ac78df8ef4fd1c181ee60350c88058
CRs-Fixed: 2365054
2018-12-13 18:44:09 -08:00
Jeff Johnson
1456a1f78a qcacld-3.0: Remove obsolete wma_api prototypes
wma_api.h contains two prototypes for functions that are no longer
a part of the driver, so remove them.

Change-Id: I79c96320a23471e0c21cc04ec1b207cda76db199
CRs-Fixed: 2365053
2018-12-13 18:44:05 -08:00
Jeff Johnson
8ace63dbe9 qcacld-3.0: Remove obsolete parser_api prototypes
parser_api.h contains two prototypes for functions that are no longer
a part of the driver, so remove them.

Change-Id: Id4cc9967ba95d624a2910dec564c68c679279b09
CRs-Fixed: 2365052
2018-12-13 18:44:01 -08:00
Jeff Johnson
d544de42cb qcacld-3.0: Remove sme_qos_a_cto_up_map
The mapping table sme_qos_a_cto_up_map is unused, so remove it.

Change-Id: I1a7b25b07f555dc873cdcafec20f47f1494ec4eb
CRs-Fixed: 2365051
2018-12-13 18:43:57 -08:00
Jeff Johnson
3a87ce0ef9 qcacld-3.0: Remove FEATURE_WLAN_BTAMP_UT_RF
The driver contains FEATURE_WLAN_BTAMP_UT_RF code that is no longer
supported, so remove it.

Change-Id: Id9ff85b5a7c05e01fe6ceac0e9ce3e6aef6ff964
CRs-Fixed: 2365050
2018-12-13 18:43:53 -08:00
Jeff Johnson
1b86b8755f qcacld-3.0: Remove typedef eNeighborRoamEmptyScanCount
The eNeighborRoamEmptyScanCount enumerations are not used by the
current version of the driver, so remove the typedef.

Change-Id: Iafeef92741a6c7c8dd7b3039738b1828eed2ee60
CRs-Fixed: 2364277
2018-12-13 18:43:50 -08:00
Jeff Johnson
44b03b1868 qcacld-3.0: Remove typedef eNeighborRoamScanMode
The eNeighborRoamScanMode enumerations are not used by the current
version of the driver, so remove the typedef.

Change-Id: I2846de40e09665d1b39d64656e89d05c2009203e
CRs-Fixed: 2364276
2018-12-13 18:43:46 -08:00
Jeff Johnson
380e27bd15 qcacld-3.0: Remove obsolete csr_neighbor_roam prototypes
csr_neighbor_roam.h contains two prototypes for functions that are no
longer a part of the driver, so remove them.

Change-Id: I3edc2c0625ba20ac6db15d69275b31a5e93ef734
CRs-Fixed: 2364275
2018-12-13 18:43:42 -08:00
Jeff Johnson
96ca5f87fb qcacld-3.0: Remove obsolete eWNI_SME_SCAN message IDs
The current version of the driver no longer uses the eWNI_SME_SCAN
message IDs, so remove them.

Change-Id: Ia2717c18606e5e771b5d5880bac6f494689ab802
CRs-Fixed: 2364273
2018-12-13 18:43:38 -08:00
Jeff Johnson
6ed9625feb qcacld-3.0: Remove tSirSmeScanRsp
The typedef tSirSmeScanRsp is not used by the current generation of
the driver, so remove it.

Change-Id: Id38ae6fe4b0c92e69c6a3f16db7f22ae13ba2fb7
CRs-Fixed: 2364272
2018-12-13 18:43:33 -08:00
Jeff Johnson
ca6b4fd685 qcacld-3.0: Remove obsolete typedef tBssSystemRole
The tBssSystemRole enumerations are no longer in use, so remove them.

Change-Id: I5f4e5ab6cbbfafd0b2e95340b999d94408a12c83
CRs-Fixed: 2364271
2018-12-13 18:43:29 -08:00
Jeff Johnson
3ff667f34a qcacld-3.0: Remove unused WNI_CFG macros
Ongoing CFG componitization removed the enumerations for some
legacy configuration items that are now supported by component
configuration. However some of the changes did not remove the
MIN/MAX/DEF/LEN macros or enumeration macros.  For all of the
ones that are now unused, remove them now.

Change-Id: Ib48e10cd09ef6811c9104c0b92f4b8f1665e5a5d
CRs-Fixed: 2364270
2018-12-13 18:43:24 -08:00
Jeff Johnson
88e3331da6 qcacld-3.0: Remove unused Enable/Disable PS params
Both tEnablePsParams and tDisablePsParams contain unused fields, so
remove them.

Change-Id: I148c065ac5425a7695ef7bf1d54bf7975b1ef10e
CRs-Fixed: 2364269
2018-12-13 18:43:19 -08:00
Jeff Johnson
c8ea8e693b qcacld-3.0: Correctly document wma_tx_packet()
Currently the prototype and the implementation of wma_tx_packet() use
different identifiers for some of the parameters, which is confusing
to both programmers and to tools. In addition currently the
implementation is documented instead of the interface. Therefore move
the documentation to the header file, and changed the prototype to
match the implementation.

Change-Id: I2c2e36c5b85935c37271336970c6532495c20fa6
CRs-Fixed: 2364268
2018-12-13 18:43:15 -08:00
nshrivas
83680fcb31 Release 5.2.0.111O
Release 5.2.0.111O

Change-Id: I23efd1beac7bb99b4b0d6806b8420e887dbfbfcc
CRs-Fixed: 774533
2018-12-13 16:45:47 -08:00
Jeff Johnson
622aad6d3d qcacld-3.0: Use the refined struct wmi_unified_pmk_cache
The original definition of struct wmi_unified_pmk_cache had several
anomalies:
1) It contains an unnecessary tlv_header field. Only the fw-api
   structs should contain TLV headers.
2) It contains a mis-named session_id field. Common structures should
   use converged terminology, in this case vdev_id

qca-wifi-host-cmn change If4be27111c604c16ea437aa654210cdff28220a7
("qcacmn: Refine struct wmi_unified_pmk_cache (phase 1)") completely
addressed the first issue, and as the first phase of fixing the second
issue it replaced the session_id field with an anonymous union which
contains both the existing session_id field and a new vdev_id field.
Being part of a union these field will overlay each other.

For the current phase replace the reference to session_id with a
reference to vdev_id in sme_set_del_pmkid_cache().

Change-Id: Ief4bcb819cb3c842adb74904f2cb2483476eaeb9
CRs-Fixed: 2363433
2018-12-13 16:45:47 -08:00
Dustin Brown
77a042b426 qcacld-3.0: Use talloc, instead of malloc, in DSC
The lifetimes of DSC contexts do not fit nicely into the current domain
based dynamic memory leak detection scheme. Instead, allocate psoc and
vdev DSC contexts using the new qdf_talloc() API.

Change-Id: Ib15bd26004c3383e25039f4d17026d3e73f52346
CRs-Fixed: 2360348
2018-12-13 16:45:43 -08:00
Dustin Brown
d315c4570c qcacld-3.0: Enable talloc feature
Enable the talloc feature, recently added in
I6308c96061e125b2e5a9c424ec2d2298c1c503ab.

Change-Id: I37c48d63dd1598710611d4c2ab5d26fec92c2250
CRs-Fixed: 2359468
2018-12-13 16:45:39 -08:00
Dustin Brown
6fb7a754ca qcacld-3.0: Enable qdf hashtable feature
Enable the QDF hashtable feature, recently added in
I07999e5fc8116e67b3850b866ced20af64342055.

Change-Id: I1dcdee7d960e87bda980e3d6e646e22149208dad
CRs-Fixed: 2359334
2018-12-13 16:45:34 -08:00
nshrivas
5eb57d96ae Release 5.2.0.111N
Release 5.2.0.111N

Change-Id: I2884d913485e87818bdd7bea999655dc1767fe35
CRs-Fixed: 774533
2018-12-13 14:57:17 -08:00