Commit Graph

12044 Commits

Author SHA1 Message Date
Tiger Yu
f5249d9210 qcacld-3.0: Do softirq for every 32 packets for IPA exception RX path
Do softirq for every 32 RX packets from 16 for IPA exception RX path.
Which will improve RX throughput much better.

Change-Id: I717d23714d1d0ae72550a06fd4df0817195f658b
CRs-Fixed: 2250253
2018-10-16 11:37:55 -07:00
Karthik Kantamneni
505b15b861 qcacld-3.0: Fix vdev destroy during ssr reinit
During hdd wlan reinit VDEV delete command is not sent to firmware
since cds_driver_recovery is True and it is set to False at later stage.

To fix this, remove recovery check in wma_vdev_detach to send WMI command
to FW as WMI is active during reinit phase.

Change-Id: I94b7437edbf0c5bccbc469ce01940b14b46258fb
CRs-Fixed: 2333475
2018-10-16 11:37:51 -07:00
nshrivas
f9705a1e62 Release 5.2.0.101X
Release 5.2.0.101X

Change-Id: I4ad9e5a7b47b5245bce9917d642358f4ba8edc53
CRs-Fixed: 774533
2018-10-16 04:34:50 -07:00
gaurank kathpalia
4a205fc269 qcacld-3.0: Green ap CFG convergence
Adds CFG convergence support for green ap related items

Change-Id: I2cfee273ffbcefcd3294cc1a18fb58549166c55b
CRs-Fixed: 2322024
2018-10-16 04:34:49 -07:00
nshrivas
27674765bd Release 5.2.0.101W
Release 5.2.0.101W

Change-Id: Iaaeda18e1950290efdedc73d8699653b525741dd
CRs-Fixed: 774533
2018-10-16 02:52:04 -07:00
Alok Kumar
800c8466fd qcacld-3.0: Resume dp_thread in error path during WLAN suspend
In __wlan_hdd_cfg80211_suspend_wlan(), if suspend fails due to
hdd_suspend_wlan() < 0, dp rx thread waits to get resume during
WLAN resume callback.

Resume dp rx thread in __wlan_hdd_cfg80211_suspend_wlan() to
handle error path.

Change-Id: Id53bcbae782b31c28fe785fab9da406482cf1794
CRs-Fixed: 2333112
2018-10-16 02:52:03 -07:00
Rajeev Kumar Sirasanagandla
4aa9ae3296 qcacld-3.0: Send VDEV_UP command to firmware for STA interface
For STA interface, add support to send VDEV_UP command to firmware when
VDEV state is transitioning to VDEV_S_UP.

Change-Id: Ic8f4e8355381d915f4c1c7f6650950d7d12d9db3
CRs-Fixed: 2333297
2018-10-16 02:51:59 -07:00
nshrivas
a5ae600fad Release 5.2.0.101V
Release 5.2.0.101V

Change-Id: I36bca4bc67935e3c501f93e62c3dea485172c974
CRs-Fixed: 774533
2018-10-15 22:50:31 -07:00
Jeff Johnson
360135b8ea qcacld-3.0: Refine the extscan set epno logic
Make the following updates to the extscan set epno logic:
1) Exclusively use the Unified WMI data structures.
2) Refactor the vendor command processing to improve code
   maintainability.

Change-Id: I8179fd9b9acced01956232f113d656e0137231b5
CRs-Fixed: 2333537
2018-10-15 22:50:31 -07:00
Abhinav Kumar
e48f34df00 qcacld-3.0: Possible NULL Pointer Dereference in wma_send_bcn_buf_ll
While handling the WMI_HOST_SWBA_EVENTID WMI FW event, driver invokes
corresponding wma handler wma_beacon_swba_handler. The event argument
comes directly from the FW. Towards the end of the function,
wma_beacon_swba_handler invokes wma_send_bcn_buf_ll and passes the
original TLV structure, param_buf, as an argument. wma_send_bcn_buf_ll
pull tim_info and p2p_noa_info from the param_buf structure. These
structures can be optionally defined in the message with zero length
resulting in them being NULL pointers. Later, throughout the function
they are then deferenced without every checking if they are in fact NULL.

Fix is to make sure in wma_send_bcn_buf_ll, param_buf->tim_info and
param_buf->p2p_noa_info dereferenced only after NULL check.

Change-Id: Ic27b59dd35f74413e9a978627047855e655b9ed1
CRs-Fixed: 2331956
2018-10-15 22:50:27 -07:00
nshrivas
8b1c973b7c Release 5.2.0.101U
Release 5.2.0.101U

Change-Id: I475403fcffebce9390e04041a1607ccb42e2ac5b
CRs-Fixed: 774533
2018-10-15 21:07:42 -07:00
Harprit Chhabada
b034fb35fe qcacld-3.0: Check if rs_results->total_num_tx_power_levels is allocated
Check if rs_results->total_num_tx_power_levels is allocated, before
checking the OOB in wma_unified_radio_tx_power_level_stats_event_handler
for new fixed_param->total_num_tx_power_levels

Change-Id: I3e3caf295fad568ecc8e294e6224356ea8a84da6
CRs-Fixed: 2333042
2018-10-15 10:46:41 -07:00
nshrivas
b509fac295 Release 5.2.0.101T
Release 5.2.0.101T

Change-Id: If2ae622273e2e989d21dc57e949876273506d16b
CRs-Fixed: 774533
2018-10-15 03:10:22 -07:00
Abhinav Kumar
bd41baa587 qcacld-3.0: Fix FT roaming failure for WEP Auto switch auth mode
hdd_set_csr_auth_type sets roam profile auth type on the basis
of pHddStaCtx->conn_info.authType. Currently, if supplicant
sends pHddStaCtx->conn_info.authType = eCSR_AUTH_TYPE_AUTOSWITCH,
driver is not handling this case and by default sets
eCSR_AUTH_TYPE_UNKNOWN. When scan results are obtained, driver is
not able to match the auth type in csrIsSecurityMatch as its set
to UNKNOWN .This leads to connection failure in FT roaming.

Fix is to set proper value of pRoamProfile->AuthType in case of
pHddStaCtx->conn_info.authType = eCSR_AUTH_TYPE_AUTOSWITCH.

Change-Id: I203f71606ee424340b447caecb91aded18c029b0
CRs-Fixed: 2327541
2018-10-15 03:10:21 -07:00
nshrivas
52bf386d87 Release 5.2.0.101S
Release 5.2.0.101S

Change-Id: Ifdae3e87acffa58991c53274a32afa12f475076a
CRs-Fixed: 774533
2018-10-15 01:29:31 -07:00
Abhishek Singh
4dc3ac2556 qcacld-3.0: Fix SAP VDEV state machine for dfs cac offload
If DFS CAC is offloaded the SAP VDEV state machine does not move to
CAC wait state and thus stop AP and radar indications are dropped.
This leads to del_self_sta without del_bss.

To fix this move the SAP VDEV state machine to cac wait state when
dfs cac offload is set.

Change-Id: I0b526974a4586b41f5a4b1ea5968721f444c610b
CRs-Fixed: 2332087
2018-10-15 01:29:30 -07:00
nshrivas
335c7b624d Release 5.2.0.101R
Release 5.2.0.101R

Change-Id: I002139d86bde5aea4cecdfd611bd65dabf2b7511
CRs-Fixed: 774533
2018-10-13 15:23:20 -07:00
Arif Hussain
f5b6c4135f qcacld-3.0: mac: Remove excessive logs
Below API's logs failure with caller information,
So no need logs at caller.
qdf_mem_malloc_atomic()
qdf_mem_malloc()
wmi_buf_alloc()
qdf_nbuf_alloc()
wmi_unified_cmd_send()

Change-Id: Ia1ec91d07ef014428921e7a88d8836266b378204
CRs-Fixed: 2331224
2018-10-13 15:23:19 -07:00
Arif Hussain
0ef7708fe8 qcacld-3.0: sme: Remove excessive logs
Below API's logs failure with caller information,
So no need logs at caller.
qdf_mem_malloc_atomic()
qdf_mem_malloc()
wmi_buf_alloc()
qdf_nbuf_alloc()
wmi_unified_cmd_send()

Change-Id: I18dc9026be41bf1bf63fa2b1eec89b2ea18dc0bf
CRs-Fixed: 2331224
2018-10-13 15:23:14 -07:00
yuanl
2746f07242 qcacld-3.0: expose TSF to user space by file system on Vipertooth
Enable TSF for Adrastea arch on Vipertooth chip firstly and
expose TSF time mapping via file system

CRs-Fixed: 2320218
Change-Id: Ifda0d8035717ad21edb1a393ef32f1157ab59105
2018-10-13 15:23:10 -07:00
nshrivas
04ccee22c8 Release 5.2.0.101Q
Release 5.2.0.101Q

Change-Id: I0173494ca1d81aab9de1cd9d8ab45aca7757d6d6
CRs-Fixed: 774533
2018-10-13 11:50:17 -07:00
Jeff Johnson
b135c66521 qcacld-3.0: Rate limit logs in hdd_check_wext_control()
During performance testing system stability issues were observed which
were attributed to excess logging in hdd_check_wext_control(). In
order to avoid such issue, rate limit those messages.

Change-Id: Ia0fa6f8a3fd7150ab3b8f2417bdb5087241c51e3
CRs-Fixed: 2332711
2018-10-13 11:50:16 -07:00
nshrivas
5e70013327 Release 5.2.0.101P
Release 5.2.0.101P

Change-Id: I345a75f951aecd9955febc6e93daf2424065aed6
CRs-Fixed: 774533
2018-10-13 01:38:27 -07:00
Alok Kumar
ce2c29a152 qcacld-3.0: Avoid excessive console logging from NUD stats cb
Avoid excessive console logging from NUD stats cb which
can lead to watchdog error.

Change-Id: Ida3c732fd5fe4c9ea0f9e08df2bf1656023bb810
CRs-Fixed: 2332618
2018-10-13 01:38:26 -07:00
nshrivas
bb0a38b7c9 Release 5.2.0.101O
Release 5.2.0.101O

Change-Id: Ic8ba43df5d67aec44955db7e6c165a9b1f087e9b
CRs-Fixed: 774533
2018-10-12 19:16:57 -07:00
Abhinav Kumar
06b9a12134 qcacld-3.0: Add MLME INI of EDCA parameters
Add the following EDCA INI:
1. CFG_ENABLE_EDCA_INI_NAME
2. CFG_EDCA_VO_CWMIN_VALUE_NAME
3. CFG_EDCA_VO_CWMAX_VALUE_NAME
4. CFG_EDCA_VO_AIFS_VALUE_NAME
5. CFG_EDCA_VI_CWMIN_VALUE_NAME
6. CFG_EDCA_VI_CWMAX_VALUE_NAME
7. CFG_EDCA_VI_AIFS_VALUE_NAME
8. CFG_EDCA_BK_CWMIN_VALUE_NAME
9. CFG_EDCA_BK_CWMAX_VALUE_NAME
10. CFG_EDCA_BK_AIFS_VALUE_NAME
11. CFG_EDCA_BE_CWMIN_VALUE_NAME
12. CFG_EDCA_BE_CWMAX_VALUE_NAME
13. CFG_EDCA_BE_AIFS_VALUE_NAME

Change-Id: I09ff58923d4c73fafce315ed2cea6e6e6a8480bb
CRs-Fixed: 2316365
2018-10-12 19:16:56 -07:00
nshrivas
1aa979710c Release 5.2.0.101N
Release 5.2.0.101N

Change-Id: I0267a2d07c8ade818adadc6df3ec9fa0bae5c439
CRs-Fixed: 774533
2018-10-12 17:25:46 -07:00
Tushnim Bhattacharyya
6368a26899 qcacld-3.0: Fix possible double free in lim_handle_delete_bss_rsp
When disconnect is issued from userspace, lim_del_bss is invoked
and vdev stop is sent to firmware. If sending vdev stop fails,
WMA_DELETE_BSS_RSP is posted with failure. If an SSR is
happening during this time, then cds_mc_thread is preempted, and
as part of the pld uevent vdev resp queue cleanup is done . In
this path, lim_process_sta_mlm_del_bss_rsp is called and
msg->bodyptr is freed and pe session is deleted. After pld
uevent execution, the delete bss response processing in
cds_mc_thread as part of user space disconnect resumes and tries
to free the msg->bodyptr again. This results in double free.
Set msg->bodyptr to NULL after freeing the memory.

Change-Id: I851a5ddcae47cffe450dffafa31570895620bd9c
CRs-Fixed: 2332677
2018-10-12 17:25:45 -07:00
nshrivas
178a2900a7 Release 5.2.0.101M
Release 5.2.0.101M

Change-Id: I804d83c2ed9bf5e83de1713244260778f914a0be
CRs-Fixed: 774533
2018-10-12 15:17:54 -07:00
Dustin Brown
2ab5a97415 qcacld-3.0: Lightly refactor __wlan_hdd_cfg80211_change_iface
__wlan_hdd_cfg80211_change_iface() has a number of obvious style issues.
Lightly refactor __wlan_hdd_cfg80211_change_iface() to address the low
hanging fruit.

Change-Id: Ib2efa7405e986e73a5c5b6fc7e5509eeebd2e6f3
CRs-Fixed: 2330973
2018-10-12 15:17:53 -07:00
Jeff Johnson
9de31c0bdb qcacld-3.0: Fix power units in wlan_hdd_cfg80211_set_txpower()
wlan_hdd_cfg80211_set_txpower() currently expects the input power to
be in units of dBm. However cfg80211 specifies the set_tx_power()
method will pass the power in mBm, and that to get dBm the driver
should use MBM_TO_DBM(). The userspace tool "iw" also expects the
power to be in mBm.

In order to comply with the definition of cfg80211, change the
implementation of wlan_hdd_cfg80211_set_txpower() to expect the power
in mBm and use MBM_TO_DBM() to convert the power to dBm. But for
backward compatibility with userspace entities which are expecting the
current implementation, if the converted power is 0 then assume the
input power is already in dBm and use it without conversion.

Change-Id: I7c64f7ac14249a307357c91f8bea4dad8d59ff28
CRs-Fixed: 2331003
2018-10-12 15:17:49 -07:00
nshrivas
9872912754 Release 5.2.0.101L
Release 5.2.0.101L

Change-Id: I1599ce228ed0cfb728c391e3d3210fff4daf1d15
CRs-Fixed: 774533
2018-10-12 11:49:49 -07:00
Jeff Johnson
fa138c29fc qcacld-3.0: Refine the mac_open/mac_close APIs
Update the mac_open and mac_close APIs as follows:
1) Fully document the interfaces (not the implementation).
2) Utilize the new mac_handle_t abstraction
3) Clean up local coding style violations

Change-Id: I9b047c3951b7f8c8831cec0b0a1aa3c521b32e6c
CRs-Fixed: 2332042
2018-10-12 11:49:48 -07:00
Ajit Pal Singh
ec65415389 qcacld-3.0: Genoa: USB: Use 64 bit HTT header
Use 64 bit HTT header instead of 32 bit for Genoa USB

CRs-Fixed: 2325600
Change-Id: I7a2cd0381e704f2317ccb244f36d13a4591fa873
2018-10-12 11:49:44 -07:00
Vignesh Viswanathan
865daaaf85 qcacld-3.0: Reduce the command timeout for Start/Stop BSS command to 10s
Currently the command timeout value in serialization for start_bss
and stop_bss commands for SAP are set to 30 seconds which is too high.

Reduce the command timeout value for SAP start_bss and stop_bss
commands in serialization to 10 seconds.

Change-Id: I1bcfe13de92a703ec55445b344a502f7843bbed8
CRs-Fixed: 2331830
2018-10-12 11:49:39 -07:00
nshrivas
4f797b83dd Release 5.2.0.101K
Release 5.2.0.101K

Change-Id: I6fd20e409b9ea60f5f09b88f135e3c76791a9bfd
CRs-Fixed: 774533
2018-10-12 09:57:12 -07:00
Vignesh Viswanathan
062b516a07 qcacld-3.0: Hold VDEV ref count for SME command until freed
Currently a ref count for VDEV is taken while posting the SME command
to serialization in csr_set_serialization_params_to_cmd called from
csr_queue_sme_command. However once the command is posted to serialization
queue, the VDEV ref count is released which could lead to the VDEV
object used from the serialization callback without holding the ref count.

Release the VDEV ref count only if the posting to serialization module
fails and for success cases, release the ref count from
sme_ser_cmd_callback under the WLAN_SER_CB_RELEASE_MEM_CMD case.

Change-Id: I8d573ff5a25e6dff928b2708e51ad7b97e292277
CRs-Fixed: 2331716
2018-10-12 09:57:11 -07:00
nshrivas
cbbba733e1 Release 5.2.0.101J
Release 5.2.0.101J

Change-Id: If21d83fb54597a3c4a7297a45bdd56faa6e35bc0
CRs-Fixed: 774533
2018-10-12 04:35:30 -07:00
Bala Venkatesh
bd71eb03d9 qcacld-3.0: Return success for ps command in disconnected state
Driver won't handle the ps in disconnected state. But kernel can
give ps enable/disable command in non associated state hence return
success without posting the request to FW.

Change-Id: I6b559c30cff816c2ba056ef23633fb350e867db7
CRs-Fixed: 2321744
2018-10-12 04:35:29 -07:00
nshrivas
bfcd7ff653 Release 5.2.0.101I
Release 5.2.0.101I

Change-Id: Ie26cbaf96f80b898988ebb3213d7f5530eab5eec
CRs-Fixed: 774533
2018-10-11 22:01:38 -07:00
Harprit Chhabada
85eb22c15b qcacld-3.0: remove the comparison check for noise_floor_weight
noise_floor_weight is defined as unsigned in
sap_weight_channel_noise_floor(), but is checked
for value less than 0, which will never be true.

Change-Id: Idd8215c479eeae2ffd712434aae740f8465a8b45
CRs-Fixed: 2310624
2018-10-11 22:01:37 -07:00
nshrivas
79e3891fac Release 5.2.0.101H
Release 5.2.0.101H

Change-Id: Idcb0d40e5dee0aadd148be591830a5bbbba5f4d9
CRs-Fixed: 774533
2018-10-11 19:31:12 -07:00
Pragaspathi Thilagaraj
765a2ee796 qcacld-3.0: Dont send vdev up if vdev restart failed during CSA
When vdev restart response is received for channel switch during
CSA, we set the phy mode in firmware and then send vdev up. But
even if the restart request has failed host sends vdev up. This
is wrong as firmware expects vdev up only after vdev start is
successful.

If vdev restart is rejected don't send vdev up to firmware.
Instead send WMA_SWITCH_CHANNEL_RSP with failure status.

Change-Id: I1f1ba860abeb0d25e90fd9b9977f02153aca81af
CRs-Fixed: 2331485
2018-10-11 19:31:11 -07:00
Varun Reddy Yeturu
295da60909 qcacld-3.0: Set PCL for roaming for the existing combo
Set PCL for roaming for the existing concurrency combo
connection

Change-Id: I5181e7d518f8cbc34f51b8cc08c246c0e5673c7b
CRs-Fixed: 2329486
2018-10-11 19:31:07 -07:00
nshrivas
f40c8a5c3c Release 5.2.0.101G
Release 5.2.0.101G

Change-Id: If26d653ab6eeb0b5570658fc1457c484bf7f5124
CRs-Fixed: 774533
2018-10-11 17:37:45 -07:00
Yue Ma
62c14eafcf qcacld-3.0: Enable CONFIG_QCA6290_11AX by default
QCA6290 non-AX chipset is deprecated, so enable changes for QCA6290 AX
chipset by default.

Change-Id: I09b52dc58c1a79e36502671de94021d5940d0072
CRs-fixed: 2331182
2018-10-11 17:37:44 -07:00
nshrivas
2b83bbb9dd Release 5.2.0.101F
Release 5.2.0.101F

Change-Id: I575c183b147d92c9a2fab2dc645b50bf636bb7b8
CRs-Fixed: 774533
2018-10-11 15:40:34 -07:00
Rajeev Kumar Sirasanagandla
2f17f8d2fd qcacld-3.0: Add vdev state machine for IBSS
Add support for VDEV state machine support for IBSS join, leave and
coalesce.

Change-Id: Iaf93f1a1b92f63b35add2f98146f4af12dc09d9c
CRs-Fixed: 2330961
2018-10-11 15:40:33 -07:00
Manjunathappa Prakash
028d471e7b qcacld-3.0: SAP Rx: get sta_id for dhcp packet only
Check for dhcp packet type before processing on packet sta_id.
This reduces per packet mem_copy and mem_cmp instructions for
sap Rx.

Change-Id: I4a2732ff4d9e3fa31aace25cc824f26b0c339b52
CRs-Fixed: 2331420
2018-10-11 15:40:28 -07:00
nshrivas
02dee15df5 Release 5.2.0.101E
Release 5.2.0.101E

Change-Id: I6690ddeffa5814ba13c557be86dd1ac2d0a57f5e
CRs-Fixed: 774533
2018-10-11 14:02:06 -07:00