Commit Graph

12285 Commits

Author SHA1 Message Date
nshrivas
5c6db8de0b Release 5.2.0.105H
Release 5.2.0.105H

Change-Id: I8c2b0b86393992876613fdc466c7118a51630f5b
CRs-Fixed: 774533
2018-11-08 01:30:46 -08:00
Wu Gao
e4c142d0d8 qcacld-3.0: Fix potential OOB read when dump dbs hw mode
It doesn't update wma_handle->num_dbs_hw_modes after event
WMI_SERVICE_READY_EXT_EVENTID comes and re-allocate hw_mode_list,
which will cause potentially OOB read hw_mode_list.

Change-Id: I8e4aa13120bfe185fba3e0000cf289406b6bcfce
CRs-Fixed: 2336889
2018-11-08 01:30:45 -08:00
nshrivas
df73ee3380 Release 5.2.0.105G
Release 5.2.0.105G

Change-Id: Ib31f7db4b9a5a470c2d24720ab694363eb136743
CRs-Fixed: 774533
2018-11-08 00:11:44 -08:00
Jeff Johnson
61c999d5cd qcacld-3.0: Replace tAniSirGlobal with the underlying struct
Change "qcacld-3.0: Rename struct sAniSirGlobal to mac_context"
(Change-Id Ibaaeb5296e42a24c66d4adf4f720d32a9ae41888) introduced a new
name for the global MAC context. In addition, the Linux coding style
document tells us "In general, a pointer, or a struct that has
elements that can reasonably be directly accessed should never be a
typedef."

To align with the new name, as well as to align with the guidance from
the Linux coding style, replace all instances of typedef tAniSirGlobal
with the underlying struct mac_context.

Change-Id: Ibb6c1f69fecbe00a17f4cc98a28706d859fa2928
CRs-Fixed: 2346156
2018-11-08 00:11:43 -08:00
nshrivas
074eb41155 Release 5.2.0.105F
Release 5.2.0.105F

Change-Id: I011f42fd92c5d2e30eb0053f247c6e8feab44439
CRs-Fixed: 774533
2018-11-07 10:52:16 -08:00
Ashish Kumar Dhanotiya
a6a4f5e444 qcacld-3.0: Reject any invalid MAC address from mac.bin
If driver gets all 0s as MAC address from mac.bin, it considers
this as valid address and proceed to derive remaining addresses.
this zero MAC is assigned to any of the interface resulting in
undefined behaviour.

To resolve this issue, validate all the MAC addresses provided by
mac.bin and reject all the addresses if any of the MAC is invalid.

Change-Id: Ia1db8249dd4ca58612b6f9eae5903bc809fed493
CRs-Fixed: 2333912
2018-11-07 10:52:15 -08:00
nshrivas
9f9af74753 Release 5.2.0.105E
Release 5.2.0.105E

Change-Id: I026e060a3f313454f65a088f68842da83b070f48
CRs-Fixed: 774533
2018-11-07 06:33:00 -08:00
Paul Zhang
cb573e0592 qcacld-3.0: Fix false alarm scan reject issue
Currently, the scan is rejected if connection is in progress. And
it uses last_scan_reject_timestamp and reset scan_reject_cnt to
avoid scan stuck issue. last_scan_reject_timestamp and
scan_reject_cnt reset when the next scan issues successfully.

If:
1\ Scan happens and connection is in progress. Initialized
   last_scan_reject_timestamp and reset scan_reject_cnt;
2\ Maybe no scan happens for a long time;
3\ scan happens but unfortunately connection is in progress again.

Then false alarm may happen because the time has already expired and
scan_reject_cnt >= 15.

Reset scan reject params if connection is success or it receives
final failure from CSR after trying with all APs.

Change-Id: Icd72d1d2c0adee8bb5b5b9c6537e1c48e37a7121
CRs-Fixed: 2333283
2018-11-07 06:33:00 -08:00
nshrivas
f37b43f290 Release 5.2.0.105D
Release 5.2.0.105D

Change-Id: I816460266a42baccad8c48fa68758c05d3bff0b2
CRs-Fixed: 774533
2018-11-07 01:35:45 -08:00
Arunk Khandavalli
890f6d9c7e qcacld-3.0: Move power stats from debugfs to sysfs
Move power stats from the debugs to sysfs. Also previously
power stats was maintained per vdev but the data received
from the firmware is per pdev. Hence move the power stats
implementation from vdev to pdev.

Change-Id: I10df003fe8f79d35d0758b56d971f4973d27750b
CRs-Fixed: 2345097
2018-11-07 01:35:44 -08:00
nshrivas
451b81cd89 Release 5.2.0.105C
Release 5.2.0.105C

Change-Id: Ic650bc04bdba2c02418b9ad6e04e1ad184e86e45
CRs-Fixed: 774533
2018-11-06 22:39:52 -08:00
Jeff Johnson
009c40f1b7 qcacld-3.0: Rename struct sAniSirGlobal to mac_context
The primary data structure used within the protocol stack is currently
named sAniSirGlobal. This naming is problematic for two reasons.
First, the "Ani" and "Sir" are archaic references that should be
replaced throughout the driver. Second, camelCase is frowned upon by
the Linux coding style. In order to address these issues, rename
sAniSirGlobal to mac_context.

Change-Id: Ibaaeb5296e42a24c66d4adf4f720d32a9ae41888
CRs-Fixed: 2345128
2018-11-06 22:39:51 -08:00
nshrivas
d2eac151b8 Release 5.2.0.105B
Release 5.2.0.105B

Change-Id: Ia02b0b87149bd91e3eeef567a545085bbd0d940e
CRs-Fixed: 774533
2018-11-06 21:07:42 -08:00
Lin Bai
f5e8cc2dba qcacld-3.0: Fix compiler error on UP target
QCA_CONFIG_SMP defined to support some thread scheduling features on
SMP target, while some variants defined only for SMP purpose are
referred out of this MACRO, like is_ol_rx_thread_suspended,
ol_rx_event_flag and ol_suspend_rx_event.

Defines separate functions for SMP/UP target to avoid it.

Change-Id: I01884644b7b77e55514cf00426609643386480e8
CRs-Fixed: 2344683
2018-11-06 21:07:41 -08:00
Bala Venkatesh
c725a06d80 qcacld-3.0: Pass valid arguments to hdd_wmm_is_acm_allowed
Currently pointer of the vdev object is sent to the callback
hdd_wmm_is_acm_allowed to get the adapter. But this can't
be used to get the adapter. Instead pass the vdev id to get the
adapter.

Change-Id: I3cb2f58d09a263c77a3696a36e863cc4137c7821
CRs-Fixed: 2341804
2018-11-06 21:07:37 -08:00
Tiger Yu
24ca3362c4 qcacld-3.0: Enable the scatter-gather feature
Enable the scatter-gather feature for wlan interface, if the wlan
interface is binding to the bridge, which might enable SG & TSO feature
for the bridge and improve the TCP TX throughput much better.

Change-Id: I26101756266878f9f41c5dc2d0b5dad189b44ee1
CRs-Fixed: 2246512
2018-11-06 21:07:33 -08:00
nshrivas
5bac6e1e54 Release 5.2.0.105A
Release 5.2.0.105A

Change-Id: I84bf29ef964fe9c2ad63e3c7320f2cc3de9d7ae6
CRs-Fixed: 774533
2018-11-06 19:39:50 -08:00
Liangwei Dong
4d35cad708 qcacld-3.0: Fix "no_of_open_sessions" messed up
__wlan_hdd_cfg80211_change_iface will clear "concurrency_mode"
at the beginning, but in certain case it would be failed in middle of
create new mode adapter, then the "concurrency_mode" is not restored
to original one.
When supplicant trys again to call __wlan_hdd_cfg80211_change_iface,
the no_of_open_sessions will be "255".
That causes the "no_of_open_sessions" messed up.

Fix by restore "concurrency_mode" in error case.

Change-Id: Iac702dfb8204621e93456e2a0c0dbba5adeed838
CRs-Fixed: 2343478
2018-11-06 19:39:50 -08:00
nshrivas
6c24a79791 Release 5.2.0.105
Release 5.2.0.105

Change-Id: Iccf5c0b925cbfaf1069766efb364d908cb46e7bf
CRs-Fixed: 774533
2018-11-06 18:02:43 -08:00
Rajasekaran Kalidoss
54a07c9528 qcacld-3.0: Remove policy_mgr session in disassoc hdlr
In LFR2 roaming disassociation with old AP happens
immediately after preauth success. But policy_mgr
decrement this entry in association completion handler.
This results in policy_mgr assuming an extra connection
while checking hw mode. policy_mgr session for the
disassociated AP should be removed in disassoc success
response handler.

CRs-Fixed: 2316508
Change-Id: I41db1f5a365d3a510e27d10adcec2a7d765616d5
2018-11-06 18:02:43 -08:00
jiad
8196e0a900 qcacld-3.0: Fix format build error
This fixes below build error.

format '%lu' expects argument of type 'long unsigned int',
but argument 6 has type 'unsigned int' [-Werror=format=]

Change-Id: I54b2e171ab5c7799af3e23a5d1fd8d4cb3034983
CRs-Fixed: 2344741
2018-11-06 18:02:38 -08:00
nshrivas
2a9399ba8f Release 5.2.0.104Z
Release 5.2.0.104Z

Change-Id: I90737263fe562059285a59863e0a701fa9c36ce3
CRs-Fixed: 774533
2018-11-06 16:16:03 -08:00
Liangwei Dong
ab3dcd4033 qcacld-3.0: Fix override chan issue
When override sap channel, call wlan_reg_set_channel_params
to update ch_params.

Change-Id: I4086ec8fea0d68547a1080b0ef455a0e9f64c0b7
CRs-Fixed: 2333666
2018-11-06 16:16:03 -08:00
nshrivas
c55636159e Release 5.2.0.104Y
Release 5.2.0.104Y

Change-Id: I0a52e9ed76753d70872775d8ff3fea59bdb350ba
CRs-Fixed: 774533
2018-11-06 00:22:15 -08:00
Vignesh Viswanathan
949794f210 qcacld-3.0: Remove HT Capabilities related CFG from WNI
Removed the unused HT Capabilities related CFG Items from WNI CFG
enum

Change-Id: I73fbb3640c1a1463331ff8e9f11eef92126611d8
CRs-Fixed: 2344331
2018-11-06 00:22:15 -08:00
Vignesh Viswanathan
ddc89e5f41 qcacld-3.0: Add additional HT Caps related INI Items to MLME CFG
Add the following HT Caps related INI/CFG items to MLME component.

gShortPreamble, CFG_HT_AMPDU_PARAMS, CFG_EXT_HT_CAP_INFO,
CFG_HT_INFO_FIELD, gEnableAMPDUPS and gMaxAmsduNum.

Change-Id: I019961016a2f0e39c7c62066c04788d3bd3d37e7
CRs-Fixed: 2318579
2018-11-06 00:22:11 -08:00
Yeshwanth Sriram Guntuka
0e5b1eb66b qcacld-3.0: Post ack timeout lim message before deactivating timer
In STA mode, deauth frame is sent to AP due to disconnect
triggered as part of hdd_stop. Host did not receive deauth
tx complete event and FW_DOWN uevent is received after this.
As part of pe shutdown notifier cb, lim timers are deactivated.
This will result in cleanup failure and disconnect timeout.

Fix is to post SIR_LIM_DEAUTH_ACK_TIMEOUT message to lim
before deactivating the timer.

Change-Id: I75d8a8c861e89bb34526a0af92c446139a5bec1c
CRs-Fixed: 2344575
2018-11-06 00:22:07 -08:00
nshrivas
d41cb2658d Release 5.2.0.104X
Release 5.2.0.104X

Change-Id: Iac1b6c01b0e5849858fcfb51c548e939456de85a
CRs-Fixed: 774533
2018-11-05 23:03:47 -08:00
Liangwei Dong
509c347011 qcacld-3.0: Add new hw mode unit test cmd
Add unit test command for 2x2 5g + 1x1 2g DBS mode
and 2x2 2g + 1x1 5g DBS.

Change-Id: I80535880dadaef21c2c2e610b3dd272d3babbed0
CRs-Fixed: 2341342
2018-11-05 23:03:46 -08:00
nshrivas
dcb31d8862 Release 5.2.0.104W
Release 5.2.0.104W

Change-Id: Idc5e875ad731c4571f5057c9c09265fbfdadc344
CRs-Fixed: 774533
2018-11-05 21:17:39 -08:00
Min Liu
93073afc2d qcacld-3.0: Fix incorrect pe session when doing pre-auth
When scan cannot be cancelled timely after pre-auth response is received,
Then a second attempt of pre-auth request could be sent, which might be
referencing a wrong session and cause NULL pointer access.

Skip to send pre-auth request for such case.

Change-Id: Icb81830ef08cffc172b327e3a8ae170aea1ec58c
CRs-Fixed: 2272022
2018-11-05 21:17:38 -08:00
nshrivas
5276e5b495 Release 5.2.0.104V
Release 5.2.0.104V

Change-Id: Ic9f41a6ae49d5682bb0e78e406de89b84c632fb9
CRs-Fixed: 774533
2018-11-05 16:15:16 -08:00
Abhishek Singh
4e2676e7a3 qcacld-3.0: Cleanup the unused serialization commands
Cleanup the serialization commands that are not used now.

Change-Id: I340c52fb3180bec94508c5d5d36f43ba6efab143
CRs-Fixed: 2344570
2018-11-05 16:15:15 -08:00
Abhinav Kumar
7d6f1ac679 qcacld-3.0: ADD MLME INI items of WMM Configuration
Add the following WMM config  ini configs to MLME cfg:

1. CFG_QOS_WMM_MODE_NAME
2. CFG_QOS_WMM_80211E_ENABLED_NAME
3. CFG_QOS_WMM_UAPSD_MASK_NAME
4. CFG_QOS_IMPLICIT_SETUP_ENABLED_NAME

Change-Id: I0c6354960b49d680e3efe304ea3300059c37015c
CRs-Fixed: 2327691
2018-11-05 16:15:11 -08:00
Abhinav Kumar
2af8c12ac9 qcacld-3.0: ADD MLME INI items of WMM AC_BK
Add the following WMM BE VO ini configs to MLME cfg:
1. CFG_QOS_WMM_INFRA_DIR_AC_BK_NAME
2. CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BK_NAME
3. CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BK_NAME
4. CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BK_NAME
5. CFG_QOS_WMM_INFRA_SBA_AC_BK_NAME
6. CFG_QOS_WMM_INFRA_UAPSD_BK_SRV_INTV_NAME
7. CFG_QOS_WMM_INFRA_UAPSD_BK_SUS_INTV_NAME

Introduce the basic infra APIs related to these configs
from mlme.

Change-Id: I1f8e6f0fa1ff15eda36a20ee06772c4a1ddd9ca8
CRs-Fixed: 2327690
2018-11-05 16:15:07 -08:00
nshrivas
f20cae5f99 Release 5.2.0.104U
Release 5.2.0.104U

Change-Id: I934f67b9850982a040190491726c21ef8e62c981
CRs-Fixed: 774533
2018-11-05 14:47:52 -08:00
Sandeep Puligilla
3a1e42a31c qcacld-3.0: Disable VDEV manager
Disable vdev manager feature through Kbuild option.

Change-Id: If89029c0f428b9b6d1d053ac23170192602e0333
CRs-Fixed: 2344437
2018-11-05 14:47:52 -08:00
Jeff Johnson
5bb786041f qcacld-3.0: Remove csr_set_phy_mode()
Function csr_set_phy_mode() is not used. Since it is apparently
obsolete, remove it.

Change-Id: I742060a27e6501ee894348d2a915f50f550ef6da
CRs-Fixed: 2344316
2018-11-05 14:47:47 -08:00
Tushnim Bhattacharyya
4a0de7ac35 qcacld-3.0: Free roam_info in sme_rrm_send_scan_result
Free roam_info in sme_rrm_send_scan_result for all error cases to
avoid memory leak.

Change-Id: I9a30c0c5e349d926092a881c4e2720100836e9d1
CRs-Fixed: 2344465
2018-11-05 14:47:44 -08:00
nshrivas
ee15c8f710 Release 5.2.0.104T
Release 5.2.0.104T

Change-Id: I721cb160c665301b9666f6331cc1fd1f6021c655
CRs-Fixed: 774533
2018-11-05 12:17:56 -08:00
Bala Venkatesh
d267bf8de4 qcacld-3.0: Avoid NULL pointer access in function wma_send_bcn_buf_ll
In function wma_send_bcn_buf_ll, bcn info is filled from
wma handle by mapping the vdev id. For valid vdev id also wma_handle
could have NULL beacon info. So, check for NULL pointer before
accessing the bcn pointer.

Change-Id: I660c8231801eb28962edc364a139e7980febb71e
CRs-Fixed: 2336946
2018-11-05 12:17:56 -08:00
nshrivas
e0b4b7f183 Release 5.2.0.104S
Release 5.2.0.104S

Change-Id: I5ea2584edf006ce36c4bf89c2b6269f106f92788
CRs-Fixed: 774533
2018-11-05 10:57:38 -08:00
jiad
4afa84fe51 qcacld-3.0: Abstract BMI CE callbacks
As part of WIN BMI modularization, hif_bmi_register_callbacks
are removed from if_pci.c in qcacmn project. As a result,
MCL needs to invoke hif_bmi_register_callbacks in qcacld project.

Fix is to call bus agnostic hif_register_bmi_callbacks method
in bmi_download_firmware.

Change-Id: I72febb02150cf9c672bea4949c53f1b87fa69cdf
CRs-Fixed: 2332266
2018-11-05 10:57:38 -08:00
nshrivas
39cbd468c8 Release 5.2.0.104R
Release 5.2.0.104R

Change-Id: Idb04e92c857c3ef5b40e499cb20b59f826c99d70
CRs-Fixed: 774533
2018-11-05 06:32:51 -08:00
Abhinav Kumar
e94f248f2e qcacld-3.0: ADD MLME INI items of WMM AC_BE
Add the following WMM BE VO ini configs to MLME cfg:
1. CFG_QOS_WMM_INFRA_DIR_AC_BE_NAME
2. CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_BE_NAME
3. CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_BE_NAME
4. CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_BE_NAME
5. CFG_QOS_WMM_INFRA_SBA_AC_BE_NAME
6. CFG_QOS_WMM_INFRA_UAPSD_BE_SRV_INTV_NAME
7. CFG_QOS_WMM_INFRA_UAPSD_BE_SUS_INTV_NAME

Introduce the basic infra APIs related to these configs
from mlme.

Change-Id: Ibaf06ba2df07a4805d31a4748809c44d143dd12e
CRs-Fixed: 2327689
2018-11-05 06:32:50 -08:00
Abhinav Kumar
4c8e026865 qcacld-3.0: ADD MLME INI items of WMM AC_VI
Add the following WMM AC VI ini configs to MLME cfg:

1. CFG_QOS_WMM_INFRA_DIR_AC_VI_NAME
2. CFG_QOS_WMM_INFRA_NOM_MSDU_SIZE_AC_VI_NAME
3. CFG_QOS_WMM_INFRA_MEAN_DATA_RATE_AC_VI_NAME
4. CFG_QOS_WMM_INFRA_MIN_PHY_RATE_AC_VI_NAME
5. CFG_QOS_WMM_INFRA_SBA_AC_VI_NAME
6. CFG_QOS_WMM_INFRA_UAPSD_VI_SRV_INTV_NAME
7. CFG_QOS_WMM_INFRA_UAPSD_VI_SUS_INTV_NAME

Introduce the basic infra APIs related to these configs
from mlme

Change-Id: I320f49b216659937dc7f708fdbb7849ae415e249
CRs-Fixed: 2327687
2018-11-05 06:32:46 -08:00
nshrivas
4e996b018c Release 5.2.0.104Q
Release 5.2.0.104Q

Change-Id: I68b316146ed335c558cc04c9d936b1682acf86e8
CRs-Fixed: 774533
2018-11-02 12:38:58 -07:00
Kiran Kumar Lokere
eaaa3462e6 qcacld-3.0: Fix the issue with SU Tx beamformee in 20MHz mode
Correct the configuration check to enable/disable the Tx SU
beamformee setting in 20MHz mode operation.

Change-Id: I958d5319acf98931187304f2c6fe2a9aff5991b7
CRs-Fixed: 2343849
2018-11-02 12:38:57 -07:00
nshrivas
d3826022f0 Release 5.2.0.104P
Release 5.2.0.104P

Change-Id: I8f2ac5dc9ab9ce3fddec10cb26039989149228e7
CRs-Fixed: 774533
2018-11-02 10:52:59 -07:00
Abhinav Kumar
03522c2330 qcacld-3.0: Acquire wake lock timeout for rrm scan
Currently driver acquires wakelock for scans received from hdd.
But for RRM scan initiated from AP for beacon reports, the
wakelock is not acquired and if host goes to suspend while scan
is in progress,FW asserts.

Fix is to avoid the system suspend by taking the wakelock
before rrm scan start.

Change-Id: I02ddc9b5e6ba5f1782d00e34f044ace34c54d0b0
CRs-Fixed: 2331741
2018-11-02 10:52:59 -07:00