Commit Graph

6720 Commits

Author SHA1 Message Date
Poddar, Siddarth
44aa5aa772 qcacld-3.0: Add support to log ICMPv6 packets in DP Trace
Add support to log ICMPv6 packets such as NS/NA, RS/RA and
ICMPv6 Req/Res in dp trace.

Change-Id: I20ba677db59044569516348cd11427fb820175a8
CRs-Fixed: 2075962
2017-10-03 16:02:53 -07:00
snandini
79225a6e90 Release 5.2.0.46V
Release 5.2.0.46V

Change-Id: I7cbc6262e013cec2084745d92ccd550ecfeb2fa9
CRs-Fixed: 774533
2017-10-03 11:46:05 -07:00
Arunk Khandavalli
847969de19 qcacld-3.0: Dont disable the ps conf to firmware
Presently, host driver is sending the exit power save
configuration request to firmware when an interface up comes
before iface_change_timer which is not required because firmware
is the master and decides to enter/exit imps.
To mitigate the issue, don't send the exit IMPS request to firmware
before interface change timer expires and re-configure the same
incase of loadonce-unload never in case of firmware is de-initialzied.

Change-Id: Ia47687cdcfc5a5fb7be1a8066e163c3248305bba
CRs-Fixed: 2002110
2017-10-03 11:46:04 -07:00
snandini
cbeaea46cc Release 5.2.0.46U
Release 5.2.0.46U

Change-Id: Id6c45713e0207db438919da2b56de83eb9b50bac
CRs-Fixed: 774533
2017-10-03 10:14:14 -07:00
Vignesh Viswanathan
eaa6889efa qcacld-3.0: Send DPP Public Action frames to userspace
Allow DPP public action frames to be sent to user space.

Change-Id: I50790772cd7c1b51ae2242fb096345047c08460c
CRs-Fixed: 2106568
2017-10-03 10:14:14 -07:00
snandini
19450db6d7 Release 5.2.0.46T
Release 5.2.0.46T

Change-Id: I2df11cb8809a13289ee5ee66493cf97523006e54
CRs-Fixed: 774533
2017-10-03 08:24:16 -07:00
Sravan Kumar Kairam
d80c7669d0 qcacld-3.0: Shutdown IPA WDI pipes on PDR event
Shutdown the IPA WDI pipes on PDR event from ICNSS driver to
prevent the possibility of IPA diver invalid access of CE ring
registers.

Change-Id: I19da0c015ba229512f71d7016236b106d9d8ee43
CRs-Fixed: 2072920
2017-10-03 08:24:15 -07:00
snandini
31322d25cf Release 5.2.0.46S
Release 5.2.0.46S

Change-Id: If38b321c5b5d7e6c863c196cec5c4fa3ed7e486e
CRs-Fixed: 774533
2017-10-03 07:46:19 -07:00
Sravan Kumar Kairam
8ea5ee2120 qcacld-3.0: Add net buff pop fail counter
Add net buff pop fail counter which helps to debug issues
related to scenario when RX ring fill count exceeds the fill
level.

Change-Id: I00f4a4e245e0732ef04518e4c1db95999edc6687
CRs-Fixed: 2106523
2017-10-03 07:46:18 -07:00
snandini
9e2d24aec9 Release 5.2.0.46R
Release 5.2.0.46R

Change-Id: I67f4e6b9a663d72d7dd760443421f52be8d07c4c
CRs-Fixed: 774533
2017-10-03 05:36:18 -07:00
Abhishek Singh
b58164af41 qcacld-3.0: Choose best candidate at first connection
Best candidate at first connection is a mechanism
to select best possible candidate for making Wi-Fi
connection based on the scan results provided.
Driver use Scan results to calculate score for each
BSS and select the best candidate to connect.
This enhances the user experience by connection
to better AP, based on certain parameters.

Change-Id: I3f88fa8c67f4cf830f05faf2c1d3f3491eee9a72
CRs-Fixed: 2018585
2017-10-03 05:36:18 -07:00
snandini
ae74b08460 Release 5.2.0.46Q
Release 5.2.0.46Q

Change-Id: I84fbdfc7c593e5d828085d887069edaac77f268c
CRs-Fixed: 774533
2017-10-03 04:14:20 -07:00
Sourav Mohapatra
3a13bf5f9f qcacld-3.0: Modify max for gEnableRTSProfiles item to accommodate more profiles
Change the max value of gEnableRTSProfiles from 34 to 66 as firmware has
support for 66. Update the template describing the different values that
can be used for the profile.

Change-Id: I5a6a398c74804022075a06ca0e17858335064c5b
CRs-Fixed: 2116704
2017-10-03 04:14:19 -07:00
snandini
4c04a8695b Release 5.2.0.46P
Release 5.2.0.46P

Change-Id: I4e652ea4efbf617757fc860beaa0de385ccfcc0e
CRs-Fixed: 774533
2017-10-03 03:30:45 -07:00
Krunal Soni
e6a1cda95e qcacld-3.0: Bring back changes of Antenna sharing for STA
Change-id Iafd5666179d079c7bcc950277092cef3046356bf was added to remove
antenna sharing support from SAP and STA case but customer needs those
changes for SAP case only.
So bringing back changes for STA case.

CRs-Fixed: 2117829
Change-Id: I79f7c5ae1fd642f0b26170f066a5409638cdd873
2017-10-03 03:30:44 -07:00
Vignesh Viswanathan
f8800692cd qcacld-3.0: Fix potential buffer overwrite in wma_roam_synch_event_handler
In the function wma_roam_synch_event_handler, vdev_id is received from
the fw and is used to access member of the array wma->interfaces without
validating the max of the vdev_id received from the fw

Add check to make sure vdev_id is less than max_bssid before using it

Change-Id: I3b940e183ab66680891cb7351af4537b50afce1d
CRs-Fixed: 2114187
2017-10-03 03:30:42 -07:00
Vignesh Viswanathan
677e3ec4b7 qcacld-3.0: Avoid integer overflow in wma_rx_aggr_failure_event_handler
Add sanity check to ensure num_failure_info from FW does not cause
integer overflow while calculating alloc_len, as alloc_len is in
turn used to malloc which can lead to less than required memory
allocated in case of integer overflow of alloc_len

Change-Id: Iea93e879196e9cd43856a7dcc9204d2304f76c78
CRs-Fixed: 2114789
2017-10-03 03:30:41 -07:00
Jeff Johnson
dadef1a675 qcacld-3.0: Replace typedef fw_log_info
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The fw_log_info typedef does not
meet any of those criteria, so replace it with a struct.

Change-Id: I4ec73e046f2439c094cb6d05a99d883241c7fe20
CRs-Fixed: 2119521
2017-10-03 03:30:39 -07:00
Jeff Johnson
d5ba8a632e qcacld-3.0: Fix semantic issues with IPA counting macros
Checkpatch identified multiple issues with the macros:
HDD_IPA_INCREASE_INTERNAL_DROP_COUNT
HDD_IPA_INCREASE_NET_SEND_COUNT

Fix those issues.

Change-Id: If947d09ec2a13ab599f7a08e572ed2c9cc87c8e8
CRs-Fixed: 2119501
2017-10-03 03:30:37 -07:00
Jeff Johnson
82cc76fb35 qcacld-3.0: Fix spurious space in CFG_MAX_AMSDU_NUM_NAME usage
Checkpatch is flagging the following issue:
ERROR:SPACING: space prohibited before that ',' (ctx:WxW)
+	REG_VARIABLE(CFG_MAX_AMSDU_NUM_NAME , WLAN_PARAM_Integer,
 	                                    ^

Remove the spurious space.

Change-Id: I60d78072cbaa6b24df14c623af35b99ef81606d5
CRs-Fixed: 2119500
2017-10-03 03:30:35 -07:00
Jeff Johnson
6867ec3361 qcacld-3.0: Fix incorrect use of CDS logging APIs within HDD
It was observed that logs from some HDD functions were tagged with the
QDF module ID. Code analysis showed some HDD functions are using cds_*
logging APIs instead of hdd_* logging APIs. Replace the cds APIs with
the hdd APIs.

Change-Id: I38edb7b5491d0d2d1412b41d3ae6e129ebc4dbe0
CRs-Fixed: 2090970
2017-10-03 03:30:33 -07:00
Venkata Sharath Chandra Manchala
880a948ed9 qcacld-3.0: Propagate config parameters to datapath
Provide an interface to propagate the feature
specific config parameters to Lithium datapath.

Change-Id: I852b14cb04b1c2c01a697434bc5fe8b29dbfe9ea
CRs-Fixed: 2097229
2017-10-03 03:30:31 -07:00
Naveen Rawat
903accac1f qcacld-3.0: Remove LTE ant sharing dependency on HT connection's NSS
While DUT is in SAP or GO mode, due to LTE antenna sharing mechanism,
DUT is associating in 2x1 chains to HT clients.

As per new requirement, remove dependency of number of chains on antenna
sharing. If HT client supports 2 chains, and due to DBS/LTE antenna
sharing SAP/GO drops down a chain then rate adaptation at peer takes
care of dropping down chains at peer side

Change-Id: Iafd5666179d079c7bcc950277092cef3046356bf
CRs-Fixed: 2108484
2017-10-03 03:30:29 -07:00
snandini
9a260a84ae Release 5.2.0.46O
Release 5.2.0.46O

Change-Id: I0213fe93cf1e004379b1fe385e5e9d7c6056b5d0
CRs-Fixed: 774533
2017-10-03 02:38:56 -07:00
Ganesh Kondabattini
1a2aed894a qcacld-3.0: Maintain limit off channel params per adapter
The limit off channel parameters were applied to all adapters
even though application sends this command on a particular
interface.

Maintain limit off channel parameters per interafce.

CRs-Fixed: 2103637
Change-Id: Ib768bfb61deac77ea2d67b7d6b6750a96bdc8902
2017-10-03 02:38:55 -07:00
Vignesh Viswanathan
9f090ad8f9 qcacld-3.0: Avoid integer overflow in wma_get_ll_stats_ext_buf
Check multiple variables received from firmware used to calculate
buf_len to make sure that it does not exceed the max msg size, as
this buf_len is in turn used in malloc and can lead to less than
required memory allocated in case of integer overflow of buf_len

Change-Id: I2689873c2c5e63c83e5059563662c0c69dc659fc
CRs-Fixed: 2115112
2017-10-03 02:38:54 -07:00
snandini
6e306f132f Release 5.2.0.46N
Release 5.2.0.46N

Change-Id: Ia1f58491216f5651f02a288484680193c64401d4
CRs-Fixed: 774533
2017-10-02 21:43:32 -07:00
Jeff Johnson
f8d455c4c2 qcacld-3.0: Prevent pHddCtx from being re-introduced
A recent set of changes replaced all instances of pHddCtx in the
driver. But one subsequent change re-introduced the term (this was
subsequently fixed), and code under review is also attempting to
re-introduce the term. Put a mechanism in place to prevent this term
from being re-introduced.

Change-Id: I424045ec36678da3d3aa47029fbcdfd6140057a0
CRs-Fixed: 2118493
2017-10-02 21:43:32 -07:00
snandini
8221d9490f Release 5.2.0.46M
Release 5.2.0.46M

Change-Id: Ifae69ce5349322b8782fd0940b72f2b10be4dd20
CRs-Fixed: 774533
2017-10-02 15:42:10 -07:00
Rajeev Kumar
493a31be99 qcacld-3.0: Set hdd context to null when its freed
HDD context in gp_cds_context is not getting reset to null during
driver remove callback when hdd context is destroyed. Set HDD context
to null to avoid any use after free.

Change-Id: Ifbeaca139ed44f871266a11f4b9e973961e26cc8
CRs-Fixed: 2119187
2017-10-02 15:42:10 -07:00
snandini
41458e1fde Release 5.2.0.46L
Release 5.2.0.46L

Change-Id: Iebed444275d105307e6fa2acc55d367624ba2224
CRs-Fixed: 774533
2017-10-01 13:35:16 -07:00
Varun Reddy Yeturu
0a2c310e29 qcacld-3.0: Check for the max number of P2P NOA descriptors
Check for the maximum number of P2P NOA descriptors in
wma_send_bcn_buf_ll.

Change-Id: If7e5b3c53309412dc7d3cd748c2f5581898fbbfe
CRs-Fixed: 2114323
2017-10-01 13:35:16 -07:00
snandini
a57afa51c2 Release 5.2.0.46K
Release 5.2.0.46K

Change-Id: I32e1c2412bd26c3a80e067def72d6aacd1bacfeb
CRs-Fixed: 774533
2017-10-01 11:34:38 -07:00
Varun Reddy Yeturu
c31391065e qcacld-3.0: Avoid int overflow in wma_unified_link_radio_stats_event_handler
Check for the validity of the number of channels passed in the
radio stats event received from firmware to ensure an integer
overflow does not happen.

Change-Id: Idf5738a40139aafad4de422965dc4ff3d0e53a32
CRs-Fixed: 2114426
2017-10-01 09:31:33 -07:00
snandini
084d031e5a Release 5.2.0.46J
Release 5.2.0.46J

Change-Id: Iaa9102462a51de1e36ac37e0282098075b7271ba
CRs-Fixed: 774533
2017-09-29 17:41:01 -07:00
Jeff Johnson
174c47a211 qcacld-3.0: Populate pdev and vdev legacy_osif_priv pointers
Currently the legacy_osif_priv pointers in the Object Manager's pdev
and vdev objects are not populated. As a result it is not possible to
get the HDD object given an Object Manager object. Populate these
pointers to allow these lookups.

Change-Id: If5ee0c785d0496ee4f06f7d230fbcf6ba957b610
CRs-Fixed: 2119155
2017-09-29 17:41:01 -07:00
Dustin Brown
a713916eae qcacld-3.0: Throw error if nla_parse is used directly
In order to support multiple nla_parse function signatures across
different kernel versions, a new hdd_nla_parse wrapper was introduced.
However, it is easy for propagations or new code to reintroduce
nla_parse. Redefine nla_parse to throw an error, to prevent the
function from being reintroduced into the code base.

Change-Id: I6e9b9cd60cee94dd9f94a067e7b9d964d60ae295
CRs-Fixed: 2116044
2017-09-29 17:40:59 -07:00
snandini
f325b23e7e Release 5.2.0.46I
Release 5.2.0.46I

Change-Id: I74b3a79668e3589efa6a95d92231036fcd127321
CRs-Fixed: 774533
2017-09-29 16:29:21 -07:00
Varun Reddy Yeturu
e4e2f29d4b qcacld-3.0: Avoid integer overflow in wma_peer_info_event_handler
Check for the num_peers received from firmware and ensure an
integer overflow does not happen in wma_peer_info_event_handler.

Change-Id: I08cc98fc425d9905d0ca090cd42b73227e594772
CRs-Fixed: 2115366
2017-09-29 16:29:21 -07:00
snandini
4309479693 Release 5.2.0.46H
Release 5.2.0.46H

Change-Id: I09f3f536871fccd73ed14a5f0d1644658af344df
CRs-Fixed: 774533
2017-09-29 15:40:00 -07:00
Jeff Johnson
60dc2b18f1 qcacld-3.0: Fix CDS layering violation in hdd_wlan_start_modules()
Currently hdd_wlan_start_modules() gets a pointer to the CDS Global
Context, and then in the failure path it dereferences this pointer to
call hdd_hif_close().  This is a layering violation -- HDD should not
be aware of the contents of the CDS Global Context and should not be
dereferencing the pointer.

Modify the code to use the exported cds_get_context() API to retrieve
this information.

Change-Id: I640bea70b50d5533afa1ee1b2e0cd6b9619a4ac2
CRs-Fixed: 2118692
2017-09-29 15:40:00 -07:00
Varun Reddy Yeturu
d4c523d673 qcacld-3.0: Avoid possible buffer overwrite in wma_process_utf_event
Check for the maximum allowed data that can be written into
the buffer utf_event_info.data in the function
wma_process_utf_event.

Change-Id: I9ee37470b7a3e7016941f871d3cf73eb12718758
CRs-Fixed: 2115375
2017-09-29 15:39:58 -07:00
Varun Reddy Yeturu
74c87c915f qcacld-3.0: Check for upper bound in P2P NOA event
Check for the upper bounds for number of NOA descriptors
received in the P2P NOA event.

Change-Id: Id7ecf064f2c25f378f76d795902713da8520507f
CRs-Fixed: 2113072
2017-09-29 15:39:56 -07:00
snandini
e37a5f8681 Release 5.2.0.46G
Release 5.2.0.46G

Change-Id: I496756a49067b2f5b41a526bbdf1bdb09a4a9625
CRs-Fixed: 774533
2017-09-29 05:40:09 -07:00
wadesong
bf7087941f qcacld-3.0: Enable SDIO based WLAN self-recovery
WLAN self-recovery based on SDIO bus is currently missing in
CLD3.x, resulting in crash injection to TF card taking no
effect during some special case.

Add the recovery feature back to CLD3.x based on the same
logics in CLD2.0

Change-Id: I719b77ac9679a0449863a94b47ad22233bc9b574
CRs-fixed: 2103969
2017-09-29 05:40:09 -07:00
snandini
035068a6a2 Release 5.2.0.46F
Release 5.2.0.46F

Change-Id: I85ac4434d10ab6e8439b10874205b74fe9245fc3
CRs-Fixed: 774533
2017-09-29 03:39:19 -07:00
hqu
0a6ce08e04 qcacld-3.0: Move chan_switch_hostapd_rate_enabled field for alignment
Current structure is expected to be 4 bytes align which needs to be
fixed by moving chan_switch_hostapd_rate_enabled field up in the
structure.

Change-Id: I234142a135fdeac69601d352beed7eda8ec16b99
CRs-fixed: 2118364
2017-09-29 03:39:18 -07:00
snandini
058276df70 Release 5.2.0.46E
Release 5.2.0.46E

Change-Id: I88e2aea72a7fbee8ea0bd7a4c72cbd96a9022422
CRs-Fixed: 774533
2017-09-29 01:39:53 -07:00
Zhang Qian
b17ee62d9b qcacld-3.0: Add auto BDF Selection
qcacld-2.0 to qcacld-3.0 propagation

The board data file is selected based on the board id returned
by executing otp binary.

Based on the chip id and the board id, select the appropriate
board data file and download.

The board data file selection is as follows:
Mission mode: bdwlan<chip_id>.b<board_id>
Factory mode: utfbd<chip_id>.b<board_id>

If the auto board data files are not present in the filesystem,
then download the default board data file i.e bdwlan<chip_id>.bin

Change-Id: I26c3eb377513d2c4439eddc4e5dc75eba66c78f4
CRs-Fixed: 805800
2017-09-29 01:39:53 -07:00
snandini
65437d5f2e Release 5.2.0.46D
Release 5.2.0.46D

Change-Id: Ia266ea112e82f1caa5cc11083cfca16170d19f9d
CRs-Fixed: 774533
2017-09-28 23:42:02 -07:00