Commit Graph

5580 Commits

Author SHA1 Message Date
Hanumanth Reddy Pothula
fc70ea378a qcacld-3.0: Reset unloading in progress on driver remove
When platform driver initiates wlan driver remove, driver state
is set to unloading but it is not cleared on successful driver
remove, leading unload bit to be set forever and thereby host
returns failure for all north bound requests, though driver is
loaded successfully after this scenario.

After wlan driver is removed, clear the driver unload bit, so
that on next successful driver load, host can process north
bound requests.

Change-Id: I600705b340a824bcaa524e2ed981ad35943fb5cd
CRs-Fixed: 1113037
2017-06-30 03:20:15 -07:00
snandini
e3c957712c Release 5.2.0.32N
Release 5.2.0.32N

Change-Id: I34f45872475c733bdf5f53ca088d8b7afa738546
CRs-Fixed: 774533
2017-06-30 01:51:09 -07:00
Sreelakshmi Konamki
7a57408999 qcacld-3.0: Validate suspecious pointer dereference
Add NULL check before dereferencing wma handle in
wma_ipa_uc_stat_request().

Change-Id: If336af0c350fa5615aeb9481ef6d759811e09f59
CRs-Fixed: 2047207
2017-06-30 01:51:09 -07:00
snandini
674077074b Release 5.2.0.32M
Release 5.2.0.32M

Change-Id: Ife851118d631061f85658be3d628858b31e02be6
CRs-Fixed: 774533
2017-06-29 23:40:52 -07:00
lifeng
c0fb61a3f5 qcacld-3.0: Fix the issue of launching guest ap in SCC
Try to set ap-ap mode on single wifi with acs enabled,
primary ap can start up successfully, but fail to bring up
the guest ap.

The fix is to call appropriate procedure once the guest ap
skip acs scan before starting bss.

Change-Id: I106269308932dafff27f9dc0665ade06b88e99a6
CRs-Fixed: 2063960
2017-06-29 23:40:52 -07:00
snandini
62c330fc02 Release 5.2.0.32L
Release 5.2.0.32L

Change-Id: I61061869132e31c997eec0e194906d822613359a
CRs-Fixed: 774533
2017-06-29 20:30:40 -07:00
jge
9bd51dd66b qcacld-3.0: Correct NULL check in ol_tx_bad_peer_update_tx_limit
Fix static analyze issues. add NULL pointer check.

Change-Id: If1380a23a87a50d50458d10f87a512fa87613b27
CRs-Fixed: 2059753
2017-06-29 20:30:39 -07:00
Varun Reddy Yeturu
aa5a80c5d3 qcacld-3.0: Fix logging in auth frame reception
Fix the log spamming in lim_process_auth_frame_no_session

Change-Id: Ibbe9b2482b064f3814cb5a664792177b112557f0
CRs-Fixed: 2051360
2017-06-29 20:30:38 -07:00
Varun Reddy Yeturu
dd51e8d67b qcacld-3.0: Fix logging levels - Part 2
Move the log messages to appropriate log levels so that
the console does not get a huge spam of unnecessary logs

Change-Id: Ie58b45078ad8b4732d7b84bfb77261396bd5862a
CRs-Fixed: 2043741
2017-06-29 20:30:36 -07:00
Deepak Dhamdhere
d8455ce1fd qcacld-3.0: set channel width and phy mode to fw in vdev restart
qcacld-2.0 to qcacld-3.0 propagation

If ap switches channel, sta will follow ap, as ap may change phymode
and channel width in new channel, so host needs set new phymode and
channel mode to fw.

Change-Id: I87b28119e0f4a8005f9c80f8f32912747b28306c
CRs-Fixed: 913325
2017-06-29 20:30:35 -07:00
Jeff Johnson
19a5a7ef67 qcacld-3.0: Avoid overread when configuring MAC addresses
Currently there are multiple cfg80211 vendor commands where MAC
address attributes are defined in a nla_policy table with a type of
NLA_UNSPEC but without a minimum length. Add the proper minimum length
to avoid buffer overread.

Change-Id: I11ff2bd813dc4e6784a7cdee66a0c10ca0e69fcf
CRs-Fixed: 2062140
2017-06-29 20:30:33 -07:00
snandini
899f5bcc20 Release 5.2.0.32K
Release 5.2.0.32K

Change-Id: I3379e5c985505841519b12cccd714f952d2a6d75
CRs-Fixed: 774533
2017-06-29 19:45:42 -07:00
Naveen Rawat
8029a40b49 qcacld-3.0: Update beacon template from sme update config API
Currently sme_update_ht_config only update csr_session and sends updated
params to FW via VDEV_PARAM command. Same is not reflected in pe_session
and beacon template. Update beacon params in LIM by sending param update
message to LIM.

Change-Id: I1f926b4d2d5467c7702e03ff281879529c89f6f5
CRs-Fixed: 2055347
2017-06-29 19:45:42 -07:00
Arunk Khandavalli
3d267b41f1 qcacld-3.0: Destroy logging thread irrespective of device mode
Presently the logging thread is not destroyed if the driver is unloaded
in the FTM mode leading to accessing to invalid memory location once
the wlan driver is unloaded.

Destroy the logging thread irrespective of the device mode during
the unload of the driver.

CRs-Fixed: 2040566
Change-Id: I1a97acffa5fb292ac9d355d6a95e6fc253fc833a
2017-06-29 19:45:40 -07:00
lifeng
21b7b8bd49 qcacld-3.0: Change ssidHidden variable type as tHiddenssId enum
Change ssidHidden variable type as tHiddenssId enum instead of
original boolean type in tagCsrSSIDInfo structure to backup the
value from hdd (eg: eHIDDEN_SSID_NOT_IN_USE, eHIDDEN_SSID_ZERO_LEN,
eHIDDEN_SSID_ZERO_CONTENTS).

Change-Id: Ibc88c80856984b1b61e2fbe489219b391900dad3
CRs-Fixed: 2065342
2017-06-29 19:45:39 -07:00
Hanumanth Reddy Pothula
b2d729c52b qcacld-3.0: Set STA IDs to invalid data during STA initialization
During initializing station mode, the array holding STA IDs are
not set to HDD_WLAN_INVALID_STA_ID(0xFF), leading STA IDs to hold
a valid data, though there no connections.

Set array holding STA IDs with HDD_WLAN_INVALID_STA_ID, to make
STA IDs holding invalid data.

Change-Id: I12167e83bebe0380520676c194f11cd4848330cf
CRs-Fixed: 2053816
2017-06-29 19:45:37 -07:00
Naveen Rawat
3ca28b0769 qcacld-3.0: Change max value of dropped packet threshold to 64k
Change number of dropped packet before kickout threshold to max
theoretical value of 65535.

Change-Id: I9b29e704460cfabdc346cda7ab4bc5f01ad5ea98
CRs-Fixed: 2029453
2017-06-29 19:45:36 -07:00
snandini
8745ad2c17 Release 5.2.0.32J
Release 5.2.0.32J

Change-Id: I46a09a988b301a9e5f5cdd056f8c3776ee8c3a30
CRs-Fixed: 774533
2017-06-29 19:06:02 -07:00
Jeff Johnson
438ff42173 qcacld-3.0: Properly validate QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR
Currently the QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR nla_policy specifies
a type of NLA_STRING, but the underlying implementation expects a
NUL-terminated string. Update the policy to correctly use a type of
NLA_NUL_STRING with the len updated to remove the allocation needed
for the terminating NUL.

Change-Id: Ic73241511ab73ae63fd7c1a8d6422da91931919c
CRs-Fixed: 2062141
2017-06-29 19:06:01 -07:00
Krunal Soni
c3c8b8b34f qcacld-3.0: Add NULL check before passing VDEV object
VDEV object has not been checked against NULL value before passing as
part of message to a next layer

CRs-Fixed: 2063561
Change-Id: I9c7ad08f1e201779cb433044a1525555a2ccaa34
2017-06-29 19:06:00 -07:00
Jeff Johnson
6fa1e0113b qcacld-3.0: Add HDD FIPS infrastructure
As part of the support for the FIPS certification feature add the
HDD infrastructure.

Change-Id: I76a545c42b10a662db04b5994de100c713a46c59
CRs-Fixed: 2065002
2017-06-29 19:05:58 -07:00
Jeff Johnson
6136fb90e2 qcacld-3.0: Add WMA FIPS infrastructure
As part of the support for the FIPS certification feature add the
WMA infrastructure.

Change-Id: I7e113cee8ba9a08c2efd1141bef84e43d530cdcb
CRs-Fixed: 2065002
2017-06-29 19:05:56 -07:00
Jeff Johnson
7869aadbd4 qcacld-3.0: Add Kbuild support for FIPS feature
In order to get FIPS certification the driver will need to support a
userspace API and accompanying logic to exercise the FIPS WMI
interface exposed by firmware. Since this logic need not be enabled on
production devices, expose a configuration knob so that it can be
enabled or disabled on demand.

Change-Id: I979be0175ea89e9147b07b222f54a7c3fc23dbd9
CRs-Fixed: 2065002
2017-06-29 19:05:54 -07:00
snandini
e30f7d353b Release 5.2.0.32I
Release 5.2.0.32I

Change-Id: If168d8a2a6e732634338c5a4d4fd2cbf981296c1
CRs-Fixed: 774533
2017-06-29 18:25:32 -07:00
Will Huang
03b54ee905 qcacld-3.0: Avoid using pointer without NULL check
Fix static analyze issues which cause is may dereference NULL
pointer, adding NULL pointer check or using already checked pointer.

Change-Id: Ib3a1f5214da839cd2bec4ffee16e0809095fa513
CRs-Fixed: 2058073
2017-06-29 18:25:31 -07:00
snandini
9e02d930f1 Release 5.2.0.32H
Release 5.2.0.32H

Change-Id: Ia524fd84b07a763a0dab3f6bbb2dc707383fbbd4
CRs-Fixed: 774533
2017-06-29 05:40:05 -07:00
Will Huang
bdd28711e5 qcacld-3.0: Correct NULL check when access function pointer
In function pld_pcie_uevent, pld_context->ops->uevent NULL check logic
is wrong so correct it.

Change-Id: I1bf9d8c8f5318b476761a458f5475107007dfa01
CRs-Fixed: 2058248
2017-06-29 05:40:05 -07:00
snandini
1190dfde42 Release 5.2.0.32G
Release 5.2.0.32G

Change-Id: I61db96ab9782a72d8d6ec1f66f51da196daa0de4
CRs-Fixed: 774533
2017-06-29 05:01:25 -07:00
lifeng
9537f47b1d qcacld-3.0: Fix memory leak in acs procedure
qcacld-2.0 to qcacld-3.0 propagation

Free the memory for channel list once the scanStatus is NOT
eCSR_SCAN_SUCCESS in WLANSAP_PreStartBssAcsScanCallback.

Change-Id: Id2d7fe5d7df8c032d50f02880deedb2ed1ac79fd
CRs-Fixed: 2059751
2017-06-29 05:01:24 -07:00
snandini
c1a281f52c Release 5.2.0.32F
Release 5.2.0.32F

Change-Id: I2371821139374ef312b581453838ce12b02980df
CRs-Fixed: 774533
2017-06-29 03:44:41 -07:00
Yu Wang
04ccd76c41 qcacld-3.0: add support for time stamping netbuf
Map the input target time to host time, and
time stamp netbuf with this host time.

Change-Id: I1fb298615267bb11c4f21cabe670fd4c3a12a759
CRs-Fixed: 2057693
2017-06-29 03:44:41 -07:00
Yu Wang
000dc2f19c qcacld-3.0: add support for target-host synchronization
To map target time to host time, implement a timer
to capture TSF and host time periodically.
The timer will be started when connection state of
sta/p2p_gc being changed from not associated to
associated; and stopped when from associated to
not associated.

Change-Id: I697080b95f01f173beddc038ab9ad89ee394354b
CRs-Fixed: 2057693
2017-06-29 03:44:39 -07:00
Yu Wang
f5d5b5f5cc qcacld-3.0: enhance the robustness of TSF capturing
1. Failed to get TSF if issuing cap_tsf more
   than 1 time continuously, due to the TSF
   value will be reset by the following 'cap_tsf'
   command, however, these 'cap_tsf' won't be
   excuted actually, because 'get_tsf' was not
   received after last successful 'cap_tsf'.
   To fix it, do TSF reset only if 'cap_tsf'
   will be actually excuted.

2. Add flag 'cap_tsf_flag' to make sure cap_tsf
   being executed serially.

3. Add flag 'tsf_ready_flag' to indicate whether
   TSF feature has been initialized successfully.
   Add 'TSF_NOT_READY' in 'hdd_tsf_get_state' to
   indicate this state.

Propagated from qcacld-2.0

Change-Id: Ib768e3d7f0b33a75e8bd838d4ed1c0b84e3aa13d
CRs-Fixed: 2057693
2017-06-29 03:44:38 -07:00
hqu
c7f560cb21 qcacld-3.0: Translate the AC enums defined in htt
The AC values used by htt and txrx module are mismatch. Assertion
is also added to confirm that the values are matching.

The change is also to sync with CLD2.0.

Change-Id: I011a6f2b78a6954863c99f9d3875b2c88d2b78b1
CRs-Fixed: 2065390
2017-06-29 03:44:37 -07:00
snandini
4099f0858c Release 5.2.0.32E
Release 5.2.0.32E

Change-Id: Ie43963e6248f2eb66523c4abed24b5c8d96fa4b4
CRs-Fixed: 774533
2017-06-29 01:49:51 -07:00
hqu
fd227fe3f8 qcacld-3.0: Initialize mapping from TIDs to category table
Add initialization for mapping from TIDs including extension TIDs
to category table.

The change is also to sync with CLD2.0.

Change-Id: Ie79e5420cc22f4cb3e34ceeb020f3fde8f170d4d
CRs-Fixed: 2065379
2017-06-29 01:49:50 -07:00
snandini
cf484c81fc Release 5.2.0.32D
Release 5.2.0.32D

Change-Id: I589f3f8498738bde601cc168c8b4927e24f76ace
CRs-Fixed: 774533
2017-06-28 19:28:10 -07:00
Naveen Rawat
e7e7899b29 qcacld-3.0: Initialize NDI with no protection
After VDEV_START set WMI_VDEV_PARAM_PROTECTION_MODE param to no
protection: IEEE80211_PROT_NONE. Currently NAN spec and firmware
implementation does not have a mechanism to identify when protection
is needed.

Change-Id: I5906097f44d2059e26e440d2435568ef661160bc
CRs-Fixed: 2033348
2017-06-28 19:28:09 -07:00
Naveen Rawat
4b1aab96e1 qcacld-3.0: Free gpLimRemainOnChanReq in lim_cleanup
In case remain on channel response is pending when wlan unloads, this
memory will leak. Free gpLimRemainOnChanReq memory when lim_cleanup is
called to avoid leak.

Change-Id: Ibf47bbc4b7eb5ce9509998cd40d0c3ce54e4da62
CRs-Fixed: 2051164
2017-06-28 19:28:08 -07:00
Naveen Rawat
746a90b284 qcacld-3.0: Initialize NSS to vdev_nss in roam_sync propagation
In roam sync propagation, initialise pe_session NSS to vdev_nss, which
will then later be updated as per ASSOC response frame received from
firmware. This allows roaming from 1x1 to 2x2.

Change-Id: I5260425c7bfdfaa09bac908ea7d8a89d5caa3f69
CRs-Fixed: 2058560
2017-06-28 19:28:07 -07:00
snandini
a8afd840f1 Release 5.2.0.32C
Release 5.2.0.32C

Change-Id: I5d8f848446389af75026ab2dddffe0c49d831d28
CRs-Fixed: 774533
2017-06-28 18:19:07 -07:00
Dustin Brown
732ab9c2c8 qcacld-3.0: add gEnableCckTxFirOverride ini item
When operating in an 802.11b mode, CCK TX FIR Override forces a 2x2
radio configuration into 1x for Tx and 2x for Rx (ie 1x2) for
regulatory compliance reasons. Add gEnableCckTxFirOverride to allow
this firmware feature to be enabled/disabled via ini configuration.

Change-Id: I359fc908fa27113e2500a28c343cf90dea518212
CRs-Fixed: 2062111
2017-06-28 18:19:06 -07:00
snandini
9ab8bb99a6 Release 5.2.0.32B
Release 5.2.0.32B

Change-Id: I7ec9d53a60bc23ff8fe6d2d34fad5b8c2e861610
CRs-Fixed: 774533
2017-06-28 17:33:37 -07:00
Tushnim Bhattacharyya
3d17def041 qcacld-3.0: Modify logic to associate with HT clients
Add the following rules when HT client is associating with SAP,
1.2G-AS platform: SAP associates with HT (11n) clients as 2x1 in 2G
and 2X2 in 5G.
2.Non-2G-AS platform: SAP associates with HT (11n) clients as 2X2
in 2G and 5G and async DBS scan is disabled.
3.5G-AS platform: SAP associates with HT (11n) clients as 2X2 in 2G
and 5G and async DBS scan is disabled.

Change-Id: Ia472e786cf3ffcb420aa8142a543b56f508c6b4a
CRs-Fixed: 2063482
2017-06-28 17:33:37 -07:00
snandini
6462ab8f88 Release 5.2.0.32A
Release 5.2.0.32A

Change-Id: Iab09a510e1939f51d777e8fa4e148e5e6f11f269
CRs-Fixed: 774533
2017-06-28 03:53:42 -07:00
Abhishek Singh
7eaf0e8528 qcacld-3.0: Use vht operation or opmode to change the VHT channel width
Even if vht operation or Opmode IE is present in beacon, HT info IE is used to
detect the channel width and set to firmware and then again vht operation or
opmode IE is used to detect and set new channel width to firmware.

So if vht operation or Opmode IE are present, use them to detect and set
new channel width.

Change-Id: Ibbb5a2c55a5f79536fe269e0b6c0f5ff2c369309
CRs-Fixed: 2067727
2017-06-28 03:53:42 -07:00
snandini
22de29ac46 Release 5.2.0.32
Release 5.2.0.32

Change-Id: I21c885a4c08174e5cad9c86f5e0d049d700818d0
CRs-Fixed: 774533
2017-06-28 01:48:47 -07:00
Ashish Kumar Dhanotiya
81e2acc6c8 qcacld-3.0: Fix out of bound read issue in get link properties
Propagatin from qcacld-2.0 to qcacld-3.0

Length of the MAC address is not checked which may cause out of bound
read issue.

To resolve this add a check for MAC address length.

CRs-Fixed: 2063980
Change-Id: I58454b84c28b157cef35984d612a9bc6fdd9ec56
2017-06-28 01:48:47 -07:00
snandini
dbf0be537d Release 5.2.0.31Z
Release 5.2.0.31Z

Change-Id: I326e6137f731e1fb25de30411eb8df1a102743d6
CRs-Fixed: 774533
2017-06-27 22:13:10 -07:00
Ravi Kumar Bokka
05c14e5c50 qcacld-3.0: Auto Detect SoC Power Collapse Failure changes
Add host support for detecting SOC power collapse failures in FW and
communicating the same to framework.

Change-Id: Icee39c896802c4d7136e0b8ef442a33feeb4799c
CRs-Fixed: 1112979
2017-06-27 22:13:09 -07:00