Commit Graph

4857 Commits

Author SHA1 Message Date
Mohit Khanna
c68622e61b qcacld-3.0: Enhance htt_rx_ring_fill_n processing
Enhance htt_rx_ring_fill_n by:
- Start timer in case the function is not able to find memory to fill rx
  buffers.
- Handle case where one stream can starve the other stream by constantly
  adding to the debt.

CRs-Fixed: 2001325
Change-Id: Idff33d9c28daaf7a00334134459a3633f5ccde7c
2017-04-21 18:48:33 -07:00
Orhan K AKYILDIZ
4900e1d357 qcacld-3.0: Fix 32-bit crash on markings
The offending code did not get the order of operations right.
It was: shift 16, cast 64,shift 16 and should have been:
cast, shift 16, shift 16.

CRs-Fixed: 2000844
Change-Id: I65cf4aaf0c20535070eb63b15d77b8c3c7dcb4e4
2017-04-21 18:48:30 -07:00
Orhan K AKYILDIZ
c8c27be649 qcacld-3.0: Add detection of non-posted rx buffers
Add detection of non posted RX buffers from FW (rx_in_order_ind msgs)
by marking the higher(16) unused bits of the 64-bit physical addresses.
On reception, if the paddr received does not have the markings, assert,
otherwise clean the markings and proceed.

Duplicate rx-buffers will be detected in the FW.

CRs-Fixed: 2000844
Change-Id: I9c50cce182a12f3edd3c5b2606836d62f684f816
2017-04-21 18:48:28 -07:00
Orhan K AKYILDIZ
fdd74de850 qcacld-3.0: Debug enhancements for rx_buffer history
Add the following:
- Global cumulative counters for posted and received.
- CPU for each individual records
- Counters for refill timer starts
- iwpriv support (dumpStats 10) to dump the counters

CRs-Fixed: 2001331
Change-Id: I66a8a818ffa0b2522358bab404c92a3cdaa603f7
2017-04-21 18:48:26 -07:00
Orhan K AKYILDIZ
adf0610a93 qcacld-3.0: Fix rx_starvation on multiple-rx case
In case of parallel rx execution, fill_count was being updated
by multiple threads and this was causing fill_count to be incorrect
in parallel rx execution cases. This was causing rx ring to be under
filled and in time was causing rx starvation (data stall).

Fix this by:
- making sure that we always fill the right number of buffers based
  on the msdu_count in the in_order_indication message.
- making sure that only one execution thread fills the ring
- making sure that the lock holder (filling the ring) does not
  run too long by introducing a max fill limit, in which case the
  filler will give up and the contender (the other rx execution
  thread) takes the lock and fills the ring itself.

CRs-Fixed: 1103851

Change-Id: I59ee2903d51877afc112a1a76b7a5529f1c6a5c0
2017-04-21 18:48:24 -07:00
Orhan K AKYILDIZ
ba81c51032 qcacld-3.0: Fix USR variant build error
There was a typo in USR variant of the DEBUG_RX_RING_BUFFER
featured code, which caused a symbol not defined in the header
file, triggering an implicit function definition warning/error.

Fixed typo.

CRs-Fixed: 1104718
Change-Id: I6573904add1453d8c3765f030349a214b058e2c0
2017-04-21 18:48:22 -07:00
Orhan K AKYILDIZ
0278cd0977 qcacld-3.0: Change peer ref count accounting
Make sure that peer is deleted at every path where
the ref-count is decremented and it reaches zero.

Change-Id: Ibaaae1e66855ebbd285b3647f9b862e823b6f335
CRs-Fixed: 1094439
2017-04-21 18:48:20 -07:00
Orhan K AKYILDIZ
0c1b6bfae8 qcacld-3.0: Enhance rx_ring buffer history
Enhance rx ring buffer history to include both post and recv
time-stamps. Add a new event for alloc-index updates.

Change-Id: I061afdcda5d2d41c016be9d3b12e5c4a1cda0c65
CRs-Fixed: 1098656
2017-04-21 18:48:18 -07:00
snandini
efddbe0671 Release 5.2.0.23Q
Release 5.2.0.23Q

Change-Id: Ia85456e0d9675e0a10b45016d6eea9852a204bb7
CRs-Fixed: 774533
2017-04-21 15:54:54 -07:00
Sachin Ahuja
ee62b547b0 qcacld-3.0: Remove the wait from the module_init
Changes are done in wifi hal to syncronize the driver
probing.
Remove the wait from module init as the wait is now
done in dev node write handler for syncronization.

Change-Id: I8664d70c60731889fdbe2ad90df9ce9219747ae9
CRs-Fixed: 2034178
2017-04-21 15:54:53 -07:00
snandini
efced364df Release 5.2.0.23P
Release 5.2.0.23P

Change-Id: I3b79f7d5b9cce5fbc71a67f4640335a62e1800a3
CRs-Fixed: 774533
2017-04-21 15:12:42 -07:00
Nishank Aggarwal
8935e442a8 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_assoc_req_frame.c
Replace lim_log() with pe_* appropriate log levels in
lim_process_assoc_req_frame.c

Change-Id: Ic0c990b49394cce9028c43b7d46d82c0e30e43e1
CRs-Fixed: 1093093
2017-04-21 15:12:41 -07:00
Nishank Aggarwal
524ee9a803 qcacld-3.0: Replace lim_log() with pe_* log levels in lim/lim_api.c
Replace lim_log() with pe_* appropriate log levels in lim/lim_api.c

Change-Id: I1e7fcdf793543fb3817a8dc4e79576332e08ab3e
CRs-Fixed: 1093093
2017-04-21 15:12:39 -07:00
Nishank Aggarwal
51a803f332 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_ser_des_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_ser_des_utils.c

Change-Id: Ia795a46a9dd0f1f0e09395d9e99c593c93ccf491
CRs-Fixed: 1093093
2017-04-21 15:12:37 -07:00
Nishank Aggarwal
8971366808 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_scan_result_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_scan_result_utils.c

Change-Id: I43d8b8a3f689fbba6a8668befb38ca59df754e9f
CRs-Fixed: 1093093
2017-04-21 15:12:34 -07:00
Nishank Aggarwal
f0e344b870 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_timer_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_timer_utils.c

Change-Id: I618c78f07a78e82b02b4f509832859c62ed1bc0f
CRs-Fixed: 1093093
2017-04-21 15:12:32 -07:00
Nishank Aggarwal
be2cb792e1 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_prop_exts_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_prop_exts_utils.c

Change-Id: Ifbc46dd1d3afd6add9256207e140b030ddd5d5bb
CRs-Fixed: 1093093
2017-04-21 15:12:30 -07:00
Nishank Aggarwal
15a3345ef3 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_beacon_frame.c
Replace lim_log() with pe_* appropriate log levels in lim_process_beacon_frame.c

Change-Id: I99539fc78b927c0448d18b15d18de433d8da6133
CRs-Fixed: 1093093
2017-04-21 15:12:27 -07:00
Nishank Aggarwal
6440d744a2 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_mlm_host_roam.c
Replace lim_log() with pe_* appropriate log levels in lim_process_mlm_host_roam.c

Change-Id: I5285ff21e6dd5316213ad7bcd60f12d3386366c8
CRs-Fixed: 1093093
2017-04-21 15:12:25 -07:00
Nishank Aggarwal
2f2ac288d3 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_probe_req_frame.c
Replace lim_log() with pe_* appropriate log levels in lim_process_probe_req_frame.c

Change-Id: Id3593f7f7584acf5b01d4c2e99931f9f7660fc56
CRs-Fixed: 1093093
2017-04-21 15:12:22 -07:00
Nishank Aggarwal
8b805bbda3 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_ft.c
Replace lim_log() with pe_* appropriate log levels in lim_ft.c

Change-Id: If52ade6e8b228edc29b64ad32c2659655f8073c3
CRs-Fixed: 1093093
2017-04-21 15:12:20 -07:00
Nishank Aggarwal
fb8ddce67b qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_disassoc_frame.c
Replace lim_log() with pe_* appropriate log levels in lim_process_disassoc_frame.c

Change-Id: I51c4c4f4d41277e125ce77ed6c02bf7c49cc8da4
CRs-Fixed: 1093093
2017-04-21 15:12:17 -07:00
Nishank Aggarwal
e6aa210ead qcacld-3.0: Replace lim_log() with pe_* log levels in lim_sme_req_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_sme_req_utils.c

Change-Id: I61c23148b78a2a6386d373f6a5e21cf59c942577
CRs-Fixed: 1093093
2017-04-21 15:12:15 -07:00
Nishank Aggarwal
ba7c9c2310 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_admit_control.c
Replace lim_log() with pe_* appropriate log levels in lim_admit_control.c

Change-Id: I8f207e62b75b20b9255a649d04144aac3594c2a9
CRs-Fixed: 1093093
2017-04-21 15:12:12 -07:00
Nishank Aggarwal
d3d7046e99 qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_action_frame.c
Replace lim_log() with pe_* appropriate log levels in lim_process_action_frame.c

Change-Id: I9ad548077d08fd37fc4299e01b18a59a3823e0a4
CRs-Fixed: 1093093
2017-04-21 15:12:10 -07:00
Nishank Aggarwal
3dd69fc5ca qcacld-3.0: Replace lim_log() with pe_* log levels in lim_session_utils.c
Replace lim_log() with pe_* appropriate log levels in lim_session_utils.c

Change-Id: I00d73f63b13ec3e5264d4783729c11e1a10f8b6b
CRs-Fixed: 1093093
2017-04-21 15:12:07 -07:00
Nishank Aggarwal
550931aecb qcacld-3.0: Replace lim_log() with pe_* log levels in lim_process_tdls.c
Replace lim_log() with pe_* appropriate log levels in lim_process_tdls.c

Change-Id: I986b664afb95d630fcbdb0e7aeef7fa4fe504718
CRs-Fixed: 1093093
2017-04-21 15:12:05 -07:00
snandini
8042fba78e Release 5.2.0.23O
Release 5.2.0.23O

Change-Id: I6b2ddd0689aed4241959f9a2bf015116e328a7df
CRs-Fixed: 774533
2017-04-21 14:30:07 -07:00
Hanumanth Reddy Pothula
63e25afa4e qcacld-3.0: Reduce time to wait for external threads completion
Presently, during unload, driver waits for max of 40sec if there are
any external threads. But if driver unload won't happen within 30sec
framework's watchdog kills system server, leading to device reboot.
Also this may lead to driver not to print external threads which got
stuck in driver.

To mitigate this issue reduce wait for external threads completion
to 20sec from 40sec.

Change-Id: I35cfb0ec20a7d4584196243ec0b1167b5eaa6bf0
CRs-Fixed: 2030112
2017-04-21 14:30:06 -07:00
Sandeep Puligilla
2ee22f46d0 Release 5.2.0.23N
Release 5.2.0.23N

Change-Id: Ie650a06898f5a8951b22d389652d91372e90d0f5
CRs-Fixed: 774533
2017-04-21 04:10:51 -07:00
Nishank Aggarwal
0c2c34abc6 qcacld-3.0: Replace cfg_log() with pe_* log levels in cfg_send_msg.c
Replace cfg_log() with pe_* appropriate log levels in cfg_send_msg.c

Change-Id: I2a3cc5443e83741424b192bdd5273b94554e0937
CRs-Fixed: 1093093
2017-04-21 04:10:50 -07:00
Nishank Aggarwal
47a303a9c3 qcacld-3.0: Replace cfg_log() with pe_* log levels in cfg_proc_msg.c
Replace cfg_log() with pe_* appropriate log levels in cfg_proc_msg.c

Change-Id: I2576b089d57ae804289308f503632dd12857c305
CRs-Fixed: 1093093
2017-04-21 04:10:48 -07:00
Nishank Aggarwal
2d766df0b2 qcacld-3.0: Replace cfg_log() with pe_* log levels in cfg_api.c
Replace cfg_log() with pe_* appropriate log levels in cfg_api.c

Change-Id: I710a5c182114f0815e1e51d7c99ac511f3c4d2fe
CRs-Fixed: 1093093
2017-04-21 04:10:45 -07:00
Nishank Aggarwal
abfd70bde1 qcacld-3.0: Reduce the log spam in lim
Move the logs to appropriate log levels to reduce
the log spam in lim_ft.c, lim_process_auth_frame.c,
and lim_process_probe_req_frame.c

Change-Id: I4bc6c34fb91845b9b1d9be76f09ec63c2f363d11
CRs-Fixed: 1093093
2017-04-21 04:10:43 -07:00
Nishank Aggarwal
ff7d4236eb qcacld-3.0: Reduce the log spam in lim
Move the logs to appropriate log levels to reduce
the log spam in lim_sta_hash_api.c

Change-Id: I24b33db3ba1fb0fdca342f81518ded4467b951ec
CRs-Fixed: 1093093
2017-04-21 04:10:42 -07:00
Sandeep Puligilla
0df222fc6e Release 5.2.0.23M
Release 5.2.0.23M

Change-Id: I532d5baf791b24aa92b710ae7b5931148c6e0634
CRs-Fixed: 774533
2017-04-21 03:15:23 -07:00
Ashish Kumar Dhanotiya
2b4fd75ee9 qcacld-3.0: The driver is not honoring NL80211_CHAN_WIDTH_20_NOHT
When driver sets the channel banwidth, if HT and VHT are disabled
then kernel sets the width to NL80211_CHAN_WIDTH_20_NOHT. Currently
driver is not honoring this.

To resolve this issue add support for NL80211_CHAN_WIDTH_20_NOHT.

Change-Id: I98be22003bf88128ba39a0d2de43c2b3f3e5e2f0
CRs-Fixed: 2035625
2017-04-21 03:15:23 -07:00
Sandeep Puligilla
fab206c7ae Release 5.2.0.23L
Release 5.2.0.23L

Change-Id: I5767b6d7d42638fe52b9fdc3c11d0905e3cd9c43
CRs-Fixed: 774533
2017-04-20 23:46:07 -07:00
Kiran Kumar Lokere
f089a3a738 qcacld-3.0: Fix the pdev reference leak during unload
WMA pdev reference clear is called after the wma close hence
wma handle is NULL and pdev refernce is not cleared.
Clear the pdev reference during WMA close procedure

Change-Id: I6c4caa21e9329f5d7542d114763cd6ae8931a604
CRs-Fixed: 2008013
2017-04-20 21:54:16 -07:00
Sandeep Puligilla
5b115e5260 Release 5.2.0.23K
Release 5.2.0.23K

Change-Id: Ia99d42bcfe654760dce1d2bc5b6174658ba7c408
CRs-Fixed: 774533
2017-04-20 17:10:20 -07:00
Kiran Kumar Lokere
a3de226328 qcacld-3.0: Replace regulatory apis with reg component apis
Replace the legacy regulatory apis with regulatory component
public service apis

Change-Id: Ifd8c93fc8f57116cfc432b853248b35fd7ed1b94
CRs-Fixed: 2008013
2017-04-20 17:10:19 -07:00
Sandeep Puligilla
7ca90b7d9e Release 5.2.0.23J
Release 5.2.0.23J

Change-Id: I572174a0ac2ac2b83b3a4f245ddec974126c7730
CRs-Fixed: 774533
2017-04-20 16:26:10 -07:00
Kabilan Kannan
1c1c40276e qcacld-3.0: TDLS UMAC legacy changes
Add legacy changes to enable TDLS UMAC component.

Change-Id: I3ddfe988cf09a6c37e51256d6040527571c75353
CRs-Fixed: 2035617
2017-04-20 16:26:09 -07:00
Kabilan Kannan
f56f9d5960 qcacld-3.0: Add legacy changes for TDLS UMAC component
Add changes in hdd and mlme modules to support TDLS UMAC
component.

Change-Id: I9e8514e73cebaef566444c9c89e2db2609962b4c
CRs-Fixed: 2035617
2017-04-20 16:26:07 -07:00
Kabilan Kannan
6d7a41199f qcacld-3.0: Add make file changes for TDLS UMAC component
Add Kbuild changes for TDLS UMAC component

Change-Id: I5a242dc9b7b74aa5504e160180e8c76128e956b9
CRs-Fixed: 2035617
2017-04-20 16:26:05 -07:00
Sandeep Puligilla
e185916e95 Release 5.2.0.23I
Release 5.2.0.23I

Change-Id: Iff823b94611bfb6fa883b9a4bc14263ccb8d835f
CRs-Fixed: 774533
2017-04-20 11:33:26 -07:00
Krunal Soni
074dd2c690 qcacld-3.0: Don't open or close sap session internally
There are few instances in current driver code, where SAP's
session is getting opened or closed internally by SAP module
which is wrong. It should come from HDD module.

Resolve above mentioned issue by following:
1) allocating and opening sap session through wlansap_open and
   wlansap_start APIs respectively.
2) freeing and closing sap session through wlansap_close and
   wlansap_stop APIs respectively.

Remove all other instances of sap_open_session and
sap_close_session.

Change-Id: I9ac9f68c9cd1f8c856b6228d4e3b32d3310c936a
CRs-Fixed: 2036385
2017-04-20 11:33:25 -07:00
Krunal Soni
b01de79ea7 qcacld-3.0: Refactor sap_open_session & sap_close_session APIs
Divide sap_open_session in to two parts. One where sme_open_session
is happening and the other one where sap context is getting initialized
to some values.

Divide sap_close_session in to three parts. One where sme_close_session
is happening, another where sap context is getting reset, and the
remaining one where global dfs parameters are getting reset.

Change-Id: I3126acbf4174261938c1f1ff19637bce87d7bddf
CRs-Fixed: 2036385
2017-04-20 11:33:23 -07:00
Kiran Kumar Lokere
43a3e86aa1 qcacld-3.0: Populate country code from regulatory obj
Populate the country code from regulatoy component to
advertise in IEs.

Change-Id: I79357dc0c4f700dbfde40adc1c6f411723abd85d
CRs-Fixed: 2008013
2017-04-20 10:04:56 -07:00
Kiran Kumar Lokere
798de7e0ab qcacld-3.0: Regulatory component logging changes
Add support for regulatory component logging

Change-Id: Icabe6bbdfe7cc2809cdf3c1ebd2577d27747bb96
CRs-Fixed: 2008013
2017-04-20 10:01:43 -07:00