Commit gráf

5363 Commit-ok

Szerző SHA1 Üzenet Dátum
Himanshu Agarwal
7b54106e8f qcacld-3.0: Reduce log level of some prints in ol_tx_data()
Reduce log level of some prints in ol_tx_data() from WARN
to DEBUG.

Change-Id: I1a8d3fb5e1f99be6f243c9287b814373d6b121c0
CRs-Fixed: 2052590
2017-06-14 00:58:36 -07:00
Nitesh Shah
d6b76060c3 qcacld-3.0: Avoid calling decrement session twice in SAP removal
While disabling SAP session, policy_mgr_decr_session_set_pcl()
is getting called twice, one from mc_thread (hdd_hostapd_sap_
event_cb()) and other from hostapd (__wlan_hdd_cfg80211_stop
_ap()). This can corrupt the pm_conn_connection_info table.

This change removes policy_mgr_decr_session_set_pcl() getting
called from hdd_hostapd_sap_event_cb().

Change-Id: Ib16af839060cb2dd3cb9f9957fd6dbb40c3b79dc
CRs-Fixed: 2055025
2017-06-14 00:58:34 -07:00
snandini
b9353fe93a Release 5.2.0.29M
Release 5.2.0.29M

Change-Id: I5649fc13d70e171c69a821f796b96341c6c7b8a9
CRs-Fixed: 774533
2017-06-14 00:20:49 -07:00
Sandeep Puligilla
aa61e43ade qcacld-3.0: Initiate self recovery in unmap timeout handler
Initiate self recovery when firmware failed to send the unmap
event within unmap timeout OL_TXRX_PEER_UNMAP_TIMEOUT value.

Change-Id: I053e34682cb610cb258c7dabdb3f84a4b59525f1
CRs-Fixed: 2023387
2017-06-14 00:20:48 -07:00
snandini
adb751620f Release 5.2.0.29L
Release 5.2.0.29L

Change-Id: I22a40360a6092a78aa669c0309e562ae8808f8a4
CRs-Fixed: 774533
2017-06-13 23:31:05 -07:00
Selvaraj, Sridhar
64b0a9ce71 qcacld-3.0: Update channel info if not provided in FASTREASSOC command
Currently, driver is rejecting the FASTREASSOC command if the channel
is not provided as part of it (or) channel is given as zero.

Update channel from BSS description of the given BSS and honour
the FASTREASSOC command even if the channel is given zero.

Change-Id: Ie67a75fb7ccf470b95454842b7f46baa9b09d54c
CRs-Fixed: 2046547
2017-06-13 23:31:04 -07:00
Jeff Johnson
63d1ac84f0 qcacld-3.0: Validate QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI
Currently in __wlan_hdd_cfg80211_set_scanning_mac_oui() the
QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI attribute is copied without
first performing a length check. Add a check to ensure the attribute
is of the expected length.

Change-Id: I12ee10ed5760af6e5069707ae14b26f275da1829
CRs-Fixed: 2054687
2017-06-13 23:31:02 -07:00
Jeff Johnson
c42ed5caf5 qcacld-3.0: Validate vendor abort scan command
In __wlan_hdd_vendor_abort_scan(), nla_parse() is invoked without
specifying a policy. This can result in a buffer overread when
processing the QCA_WLAN_VENDOR_ATTR_SCAN_COOKIE attribute. To avoid
this issue use the existing "scan_policy" when invoking nla_parse().

Change-Id: Ia3e5cb7535bf0f700399e4a49c9c5da362a3ccf6
CRs-Fixed: 2054775
2017-06-13 23:31:01 -07:00
Jeff Johnson
45caf63622 qcacld-3.0: Validate vendor scan command
Currently in __wlan_hdd_cfg80211_vendor_scan() there are several
attributes which are not properly validated, and this can lead to a
buffer overread. In order to avoid these issues:
1) Define an appropriate nla_policy and specify this policy when
   invoking nla_parse().
2) Explicitly validate the size of the attributes nested in the
   QCA_WLAN_VENDOR_ATTR_SCAN_FREQUENCIES attribute.

Change-Id: I1e0d9ecf87839031fbbca9616e4bae0b0c127404
CRs-Fixed: 2054773
2017-06-13 23:30:59 -07:00
snandini
f68a0591e3 Release 5.2.0.29K
Release 5.2.0.29K

Change-Id: I3199f37607ce000c6db94422ad8115156eff5d65
CRs-Fixed: 774533
2017-06-13 22:53:31 -07:00
Jeff Johnson
dd7bd3eed7 qcacld-3.0: Avoid buffer overread when retrieving pref freq list
Currently in __wlan_hdd_cfg80211_get_preferred_freq_list(),
nla_parse() is called to parse the command attributes without
specifying a policy. This prevents nla_parse() from doing basic
validation of the attributes, and in some circumstances could result
in a buffer overread. To avoid this issue define an appropriate policy
and use it in the invocation of nla_parse().

Change-Id: I5d90b77562adb1be0d8789f1ad320612402ba90b
CRs-Fixed: 2054742
2017-06-13 22:53:30 -07:00
Jeff Johnson
5286eac254 qcacld-3.0: Fix buffer overread & overflow in DISA handler
Currently in hdd_fill_encrypt_decrypt_params() there are multiple
issues with the incoming cfg80211 vendor command handling:
1) A policy is not supplied when invoking nla_parse() which prevents
   basic sanity of the incoming attribute stream.
2) The length of attribute QCA_WLAN_VENDOR_ATTR_ENCRYPTION_TEST_PN is
   not properly validated.
3) The length of attribute QCA_WLAN_VENDOR_ATTR_ENCRYPTION_TEST_DATA
   is not properly validated.

To address these issues:
1) Create an appropriate nla_policy and specify this policy when
   invoking nla_parse().
2) Validate the length of QCA_WLAN_VENDOR_ATTR_ENCRYPTION_TEST_PN to
   prevent potential buffer overflow.
3) Validate the length of QCA_WLAN_VENDOR_ATTR_ENCRYPTION_TEST_DATA to
   prevent potential buffer overread.

Change-Id: Ibb86897f249010c94c4098b283aad7a7f95ab9a2
CRs-Fixed: 2054760
2017-06-13 22:53:28 -07:00
snandini
a4fdbf6c05 Release 5.2.0.29J
Release 5.2.0.29J

Change-Id: I3e3f209e70a12e4d64c829b0caceb4581f97fd6d
CRs-Fixed: 774533
2017-06-13 11:38:35 -07:00
Naveen Rawat
af4388c513 qcacld-3.0: Remove obsolete SCH code
Remove dead code present in SCH module.

Change-Id: If428504a9e5288b9bc2bbba27fe1cf5a38746874
CRs-Fixed: 2051304
2017-06-13 11:38:35 -07:00
snandini
b4828397ef Release 5.2.0.29I
Release 5.2.0.29I

Change-Id: Ie5b24ee11632a7efd34942fc6baf285f2898240b
CRs-Fixed: 774533
2017-06-12 20:52:58 -07:00
Yuanyuan Liu
3d62f6a8a7 qcacld-3.0: Re-phrase debug message for wlan mac
Re-phrase debug message of wlan mac to avoid confusion.

CRs-Fixed: 2058511
Change-Id: Iae85ad8ea195e16d137ac4ced3c8127803bac35a
2017-06-12 20:52:54 -07:00
Dustin Brown
8f3b0561bd qcacld-3.0: Specify policy for txpower_scale
__wlan_hdd_cfg80211_txpower_scale() calls nla_parse without specifying
a policy. Specify an nla policy with the expected attribute information
when calling nla_parse in __wlan_hdd_cfg80211_txpower_scale().

Change-Id: I6ff8a986d5d3a7137351cf66e19ca1a952b9f5f1
CRs-Fixed: 2054748
2017-06-12 20:52:38 -07:00
Jeff Johnson
e5f33ba148 qcacld-3.0: Avoid buffer overread when setting probable channel
Currently in __wlan_hdd_cfg80211_set_probable_oper_channel,
nla_parse() is called to parse the command attributes without
specifying a policy. This prevents nla_parse() from doing basic
validation of the attributes, and in some circumstances could result
in a buffer overread. In addition, the tb array is not sized
correctly. To avoid these issues properly size the tb array, and
define an appropriate policy and use it in the invocation of
nla_parse().

Change-Id: I1d4bc3d1f09f0767a3cbd5ed84dc214f167c3c4d
CRs-Fixed: 2054744
2017-06-12 20:52:22 -07:00
snandini
fa45f77ddc Release 5.2.0.29H
Release 5.2.0.29H

Change-Id: I111c66a3233b7f523e8dfc4958b98ae6a56b21d9
CRs-Fixed: 774533
2017-06-12 17:19:29 -07:00
Nachiket Kukade
8003d257b9 qcacld-3.0: Add and use API to check FW Down indication bit during probe
When commands to Firmware fail during probe due to Firmware being down, in
most cases QDF_BUGs are hit, not allowing re-probing to take place. A new
API is defined to check if the failure is due to Firmware being down or not.
If so, return error gracefully allowing re-probing to take place

Change-Id: Ib2f21a6f1ced1c16e9d2bdbda810b160ff63e2c6
CRs-fixed: 2027444
2017-06-12 17:19:28 -07:00
snandini
caf8c34bff Release 5.2.0.29G
Release 5.2.0.29G

Change-Id: I5372aaaa3c14ca40c5dd7d423fcd1406c125b99d
CRs-Fixed: 774533
2017-06-12 15:24:23 -07:00
Sandeep Puligilla
b0e017c581 qcacld-3.0: Free the csr profile after connection
Free the CSR profile after successful connection.

Change-Id: I710ce0fae904db9d597590ce9860ca38fc5f7a34
CRs-Fixed: 2059336
2017-06-12 15:24:22 -07:00
snandini
dbf9aa5587 Release 5.2.0.29F
Release 5.2.0.29F

Change-Id: I7c39425f5a083379b92d3acba452bf889cf3a160
CRs-Fixed: 774533
2017-06-12 14:32:47 -07:00
Naveen Rawat
c4a0e6643e qcacld-3.0: Set SMPS intolrent vdev param
Set WMI_VDEV_PARAM_SMPS_INTOLERANT when a VDEV cannot be allowed to
send SMPS frame. This is needed as certain AP wont properly handle
SMPS frames.

Change-Id: I1dd30bcb4fcaf312fa376cbfe3c1fb9c0d37750a
CRs-Fixed: 2049789
2017-06-12 14:32:46 -07:00
snandini
266df6e318 Release 5.2.0.29E
Release 5.2.0.29E

Change-Id: I7e912afe86d3e6a93efa8574303871bdd95333ba
CRs-Fixed: 774533
2017-06-12 13:26:07 -07:00
Kiran Kumar Lokere
3beeb95c60 qcacld-3.0: Use regulatory component api to check 11d support
Replace the legacy csr api with regulatory component public api
to check if the 11d support is enabled by host.

Change-Id: I53c2378cf010693d4efa7ff8ff611e6062569adb
CRs-Fixed: 2048784
2017-06-12 13:26:06 -07:00
snandini
7f667c6bb7 Release 5.2.0.29D
Release 5.2.0.29D

Change-Id: I68e31677664e50c7ec28e2a009c4e8e6d7d181e9
CRs-Fixed: 774533
2017-06-11 18:10:39 -07:00
Himanshu Agarwal
5f5e16692d qcacld-3.0: Fix buf replenish logic and handle error pkts
Fix replenishing logic by taking care of fragments as well
in monitor mode. Also drop the packets with mpdu_length_err
bit set in rx attention desc and don't send those packets to
upper layers.

Change-Id: Iaeeb0e40e4988ca5a2d4c5e7c98ed3f82dfca533
CRs-Fixed: 2037633
2017-06-10 23:30:56 -07:00
snandini
2a09ca3383 Release 5.2.0.29C
Release 5.2.0.29C

Change-Id: Ie4fc4c183990fa1210913b34cbc66d0976c8cf90
CRs-Fixed: 774533
2017-06-09 21:36:31 -07:00
Dustin Brown
20b6fcfc17 qcacld-3.0: Add gScanBackoffMultiplier ini item
For Network Listen Offload and Preferred Network Offload, the fast scan
period is multiplied by scan_backoff_multiplier after max cycles have
occurred. Add a new configuration item, gScanBackoffMultiplier, to
configure scan_backoff_multiplier.

Change-Id: I832d3e058d1c6c0b441090039204d68502e2b96d
CRs-Fixed: 2035197
2017-06-09 21:36:30 -07:00
snandini
a3b1966d90 Release 5.2.0.29B
Release 5.2.0.29B

Change-Id: I3fa41cfbcd612351768277089c2b2f7c76675484
CRs-Fixed: 774533
2017-06-09 15:36:38 -07:00
Yu Wang
c407bf733a qcacld-3.0: enable FW dump for SDIO
When FW assert happen, it won't do FW dump
if the bus type is SDIO.

Enable FW dump for SDIO target

Change-Id: I24655ca74003c915d9eda1106aad7cf87856947e
CRs-Fixed: 2010613
2017-06-09 15:36:37 -07:00
snandini
6631d35308 Release 5.2.0.29A
Release 5.2.0.29A

Change-Id: I5742c88efd8ed53e1ee702577a15389ff0edf9cc
CRs-Fixed: 774533
2017-06-09 12:12:18 -07:00
Jeff Johnson
b17a93c068 qcacld-3.0: Specify a policy when parsing SAR limits
In __wlan_hdd_set_sar_power_limits() there are two places where
nla_parse() is called to parse a sequence of attributes.  Currently in
both places a policy is not specified. This prevents nla_parse() from
doing basic validation of the attributes, and in some circumstances
could result in a buffer overread. To avoid this issue define an
appropriate policy and use it in both invocations of nla_parse().

Change-Id: Ie74907f65d788f9ecd7302e37440121e36ad0ec3
CRs-Fixed: 2054757
2017-06-09 12:12:17 -07:00
Jeff Johnson
1818a65523 qcacld-3.0: Avoid OEM message overread
Currently in oem_cmd_handler() the CLD80211_ATTR_DATA is processed as
an OEM message without first verifying that the payload has a
sufficient length. This can lead to overreading the buffer. Add length
checks to make sure the payload is large enough to hold the message it
is supposed to encapsulate.

Change-Id: Ifaa7d1cce5bd427bfeca14cab5a44c4cb72ce59f
CRs-Fixed: 2054772
2017-06-09 12:12:15 -07:00
Selvaraj, Sridhar
5056650c2e qcacld-3.0: Re-enable fw LFR3 engine after roam sync complete
Currently, host driver sequence of events is as below
- roam sync indication from fw
- invoke csr_roam_synch_callback with SIR_ROAM_SYNCH_PROPAGATION,
  which sets roam_synch_in_progress in csr session
- disable LFR3 roam in fw(send RSO stop)
- Assoc completion, Set key
- In csr_neighbor_roam_info_ctx_init, RSO start attempt fails
  due to roam_synch_in_progress set
- invoke csr_roam_synch_callback with SIR_ROAM_SYNCH_COMPLETE,
  which resets roam_synch_in_progress
Because of this, LFR3 is not re enabled(RSO Start is not sent)
after roam synch indication.

Re-enable fw LFR3 engine(Send RSO Start) after roam sync complete.

Change-Id: I231b6f7427cd938d9801af20dd4719482cfa7584
CRs-Fixed: 2047267
2017-06-09 12:12:13 -07:00
Sreelakshmi Konamki
2b1cd5275e qcacld-3.0: Update public action frames to supplicant
qcacld-2.0 to qcacld-3.0 propagation

Currently broadcast action frames are dropped in
__hdd_indicate_mgmt_frame(), host tries to get pAdapter using
destination mac address and returns from function as pAdpater is NULL.

Add changes to use existing pAdapter when destination address
of received packet is broadcast.

Change-Id: I9a149116b9a3ec9b4abef4808849876069f2e13c
CRs-Fixed: 2045740
2017-06-09 12:12:11 -07:00
snandini
e1bcb52b09 Release 5.2.0.29
Release 5.2.0.29

Change-Id: Ia168237e636957303bb76c6cacbe21ce49084efc
CRs-Fixed: 774533
2017-06-09 11:28:16 -07:00
Sreelakshmi Konamki
0d17c6a381 qcacld-3.0: Fix comparision of unsigned values against 0
Add changes to remove comparision of unsigned values against 0

Change-Id: I36b35f0c3cee22a636af1202a3ec1003e0a425c4
CRs-Fixed: 2049500
2017-06-09 11:28:16 -07:00
snandini
08397e911a Release 5.2.0.28Z
Release 5.2.0.28Z

Change-Id: I5d0c29fbdb4f3d22ad9e5a23391d092113d2f3e6
CRs-Fixed: 774533
2017-06-08 19:24:50 -07:00
Frank Liu
00d73fecad qcacld-3.0: Add target information details to target if layer
Add a new target_psoc_info structure in the target if layer with the
following members

wmi_handle
target_type
target_version
target_revision

Also update the psoc data member tgt_if_handle to point to target_psoc_info
instead of pointing to WMI handle directly.

Change-Id: Iaa54b3106788f77a3b3453170735a3635cb76e70
CRs-Fixed: 2048277
2017-06-08 19:24:49 -07:00
snandini
3fdcf4f0e4 Release 5.2.0.28Y
Release 5.2.0.28Y

Change-Id: Iaaba8280113e8297580162e193206d7bd4b735df
CRs-Fixed: 774533
2017-06-08 15:23:28 -07:00
Houston Hoffman
b38c10255a qcacld-3.0: Allocate hif_napi_info structures dynamically
The hif_napi_info structure has a dummy netdev included.
The dummy netdev is large.  Avoiding unneeded allocation
save 30kb of memory.  Dynamically allocating the
hif_napi_info structures also reduces the size of
the contiguous memory needed for the parent structure.

Change-Id: Ib2d0772cf793e25a10329169ddd8ef1dc1022e82
CRs-Fixed: 2020752
2017-06-08 15:23:27 -07:00
snandini
1b417fd8c3 Release 5.2.0.28X
Release 5.2.0.28X

Change-Id: I9fa21b4e700e961c532a489aa47ca611f1db641d
CRs-Fixed: 774533
2017-06-08 13:47:02 -07:00
Dustin Brown
7ff24dd43c qcacld-3.0: Use modified datapath bus suspend callbacks
A recent datapath bus suspend/resume change modified the API for the
corresponding callbacks. Update callsites to use the new APIs.

Change-Id: I8efc62ecab311e5ded3a393c11a436ce9204e72d
CRs-Fixed: 2047509
2017-06-08 13:47:01 -07:00
snandini
9930d6966f Release 5.2.0.28W
Release 5.2.0.28W

Change-Id: Ia0275fda5c25b372b25db817fd182dc36e369c39
CRs-Fixed: 774533
2017-06-08 09:40:47 -07:00
Arun Khandavalli
ca892f672d qcacld-3.0: Check Driver module status for sysfs read/write requests
When there is no interface is being used by the upper layer,interface
change timer kicks-in and closes all the modules. When there is a
sysfs read write request when the module is closed it tries to
access the contents of closed modules resulting in assert's or
crash.

To mitigate the issue validate the driver module status.

CRs-Fixed: 2052903
Change-Id: I2eec712ff823c7c2dc49f7d9d3c55d9166e3b0d9
2017-06-08 09:40:47 -07:00
snandini
3fba66b000 Release 5.2.0.28V
Release 5.2.0.28V

Change-Id: I2823bc133535493583328c5d76cbb2e76c083250
CRs-Fixed: 774533
2017-06-08 07:00:25 -07:00
Abhishek Singh
d1d10b4031 qcacld-3.0: Fix ACS failure if no AP is found during scan
If no AP is found in scan req for ACS, the get scan results return
error E_EMPTY. But th ACS need error E_NULL_VALUE to find a valid
channel if scan results are empty.

To fix this Return E_NULL_VALUE instead of E_EMPTY, if scan results
are empty.

Change-Id: Id50eb66e89881d4a763084037bd5576eb500bb68
CRs-Fixed: 2057618
2017-06-08 07:00:25 -07:00
snandini
75cfc19167 Release 5.2.0.28U
Release 5.2.0.28U

Change-Id: I5077bf5dded3b2921b6343cfa79850b11615b87e
CRs-Fixed: 774533
2017-06-07 18:30:51 -07:00