Commit Graph

5333 Commits

Author SHA1 Message Date
Ajit Pal Singh
bf65e5a126 qcacld-3.0: Always enable AVOID_FREQUENCIES NL event
Since AVOID_FREQUENCIES event might be needed even when
FEATURE_WLAN_CH_AVOID is disabled,
always enable QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_INDEX in the
cfg80211 event list.
Also function wlan_hdd_send_avoid_freq_event() which is used to send
AVOID_FREQUENCIES event to user-space is always compiled in.

Change-Id: Ied011c309b38fa43e847eb125728e681df4ceca4
CRs-Fixed: 2045120
2017-05-30 22:01:21 -07:00
Manikandan Mohan
fb9d2b5b34 qcacld-3.0: Use CDP API to configure interrupt
Use CDP API to configure the interrupt in cds open / close.
CDP API is mainly introduced to call detach interrupt before HTC
stop in cds close routine. This avoids race condition on interrupt
trigger.

Change-Id: Ib9a8e4014ad0bb5e3d1a691121c1069faa8c91e8
CRs-fixed: 2046062
2017-05-30 22:01:20 -07:00
snandini
407a6ffa49 Release 5.2.0.27F
Release 5.2.0.27F

Change-Id: Icf4de77c582b8f15d8ccbb598413102340f82de6
CRs-Fixed: 774533
2017-05-30 19:32:32 -07:00
Naveen Rawat
ac027cbe3a qcacld-3.0: Fix STA_ID usage
In HDD STA_ID is being incorrectly used. This change fixes
following two issues:
1) 0 is treated as invalid STA_ID.
2) In hdd_get_transmit_sta_id function, value of INVALID
STA_ID is used as indication for MC/BC packet. This should
rather be a check against status returned from get_sta_id API.

Change-Id: I1710a73b8698c0fd4c537af35f947293c9ab623d
CRs-Fixed: 2039010
2017-05-30 19:32:31 -07:00
Rajeev Kumar
be0212444b qcacld-3.0: Remove un-used cds_context argument from post_disable
cds_post_disable does not use cds_context argument hence remove it.

Change-Id: I44f78b5544431c2ebe06748c058ecb2279711ff9
CRs-Fixed: 2008071
2017-05-30 19:32:29 -07:00
Rajeev Kumar
a3f672fd4d qcacld-3.0: Properly handle failures after pre-enable during module start
In hdd_wlan_start_modules() failures after cds_pre_enable are not handled
properly, this leads to freed data structures access during next module
start because driver state is still set to opened state. Add fix to
properly handle failures after cds_pre_enable by 1st doing cds_post_disable
such that FW is PDEV suspended, SoC is reset, ce tasklets are killed and
interrupts are disabled before calling cds_close() because cds_close()
frees host posted buffers to FW and if FW is not PDEV suspended and host
frees posted buffers this can lead to SNOC errors and unknown HLOS memory
corruptions. Also change the driver state to closed state before doing
cds_close such that when next hdd_wlan_start_modules() comes then driver
gets re-opened and re-enabled properly.

Change-Id: I5abfa3c782480d130d7fd3f9087f7a071e4a3f70
CRs-Fixed: 2007845
2017-05-30 19:32:27 -07:00
snandini
bd896bb1aa Release 5.2.0.27E
Release 5.2.0.27E

Change-Id: I801b303f724c75d81adde24c3865f35257ba8ec7
CRs-Fixed: 774533
2017-05-30 17:31:28 -07:00
Ravi Kumar Bokka
4bd571d914 qcacld-3.0: Configure and clear packet filter
Add PMO changes to configure and clear default packet filters
over suspend and resume.

Change-Id: Icd0acdbb58bebb5726a4213b13db59fe083835a5
CRs-Fixed: 2034398
2017-05-30 17:31:27 -07:00
snandini
4cc649fdda Release 5.2.0.27D
Release 5.2.0.27D

Change-Id: I61e5d368a2b67190410b722d1f198a44483f87ca
CRs-Fixed: 774533
2017-05-26 16:11:30 -07:00
Manjunathappa Prakash
4282a0137c qcacld-3.0: Do not tie LRO support to kernel version
Remove LRO dependency kernel version, instead make it only dependent
kernel config CONFIG_INET_LRO

Change-Id: I2f3503149026102803b347e1a674bd3ab747aacf
CRs-Fixed: 2042812
2017-05-26 16:11:29 -07:00
Dhanashri Atre
1a6a4ce139 qcacld-3.0: Modify legacy LRO implementation to use QDF
Modify the legacy LRO implementation which is in HDD to
use the implementation in QDF instead. This is to avoid
code duplication and to unify the LRO implementations for
Napier and Helium.

Change-Id: Ie9d3bb6d3dcda5a7d1d5fda6e7cbdef92be30461
CRs-Fixed: 2042812
2017-05-26 16:11:27 -07:00
snandini
5f42266142 Release 5.2.0.27C
Release 5.2.0.27C

Change-Id: I2700794fb8a829bda8d86a759f08a21dcaccc33b
CRs-Fixed: 774533
2017-05-26 11:15:15 -07:00
Naveen Rawat
4195c5ef8e qcacld-3.0: Avoid UMAC messaging in HDD
In hdd_wma_send_fastreassoc_cmd function we are directly invoking UMAC
messaging rather than calling an SME API. Implement SME API that can be
called from hdd_wma_send_fastreassoc_cmd and take care of messaging.

Change-Id: I2924da44e6b5e31e741a8816cf7afea293225219
CRs-Fixed: 2050646
2017-05-26 11:15:15 -07:00
snandini
c673b3da6a Release 5.2.0.27B
Release 5.2.0.27B

Change-Id: Ic431f6f5a7bc75a2fc4c7f424ef3bfe4071754e7
CRs-Fixed: 774533
2017-05-26 07:51:00 -07:00
Yu Wang
430e7de1d4 qcacld-3.0: reduce log to fix a watchdog bark issue
If wlan is unloading when iperf is running, iperf
will call wmm select and check whether it's in
loading/unloading status, if yes, it will send the
following log to user space via wlan logging thread:
'Unloading/Loading in Progress. Ignore!!!';
These logs are printed too frequently, which will
cause watchdog bark.

To fix this issue, remove the log in:
wlan_hdd_validate_context();

Propagated from cld2.0.

Change-Id: I4130ae9bc4693f5b8dd37a2af5f95e90800303cd
CRs-Fixed: 2034385
2017-05-26 07:50:59 -07:00
Yuanyuan Liu
d9db825055 qcacld-3.0: send channel info to cnss daemon
Send channel info to cnss daemon. Daemon will pass these info
to LOWI client.

CRs-Fixed: 2006217
Change-Id: I125a519e188774bb099058ad5c385787800e5411
2017-05-26 07:50:57 -07:00
snandini
1087a88715 Release 5.2.0.27A
Release 5.2.0.27A

Change-Id: Iec9fe8db6ef162a56e241624a26bb877457042f3
CRs-Fixed: 774533
2017-05-26 01:40:48 -07:00
Govind Singh
b78a75c438 qcacld-3.0: Prevent invalid ipa suspend indication to fw
Invalid ipa suspend pipe indication is going to firmware
due to invalid handling of sap_num_connected_sta counter.
Prevent invalid ipa suspend indication to fw when ipa
pipes are down.
Propagation from qcacld-2.0 to qcacld-3.0.

Change-Id: Id7ac76bedc20aac39199e14b7042cfb58ba255fe
CRs-Fixed: 1036471
2017-05-26 01:40:48 -07:00
yeshwanth sriram guntuka
2bc14356bc qcacld-3.0: Send rx rssi in mgmt frame ind
Rssi value is set to zero in mgmt frame ind
sent to sme via lim_send_sme_mgmt_frame_ind
in few cases.

Fix is to send rx rssi normalized value.

Change-Id: Ie8731dc2968fdfe4503266039f4753405db1b8ce
CRs-Fixed: 2032629
2017-05-26 01:40:46 -07:00
snandini
197a18c827 Release 5.2.0.27
Release 5.2.0.27

Change-Id: I94bced7a5e44c3e0e9c026b1e113b78efaff9964
CRs-Fixed: 774533
2017-05-26 00:30:23 -07:00
Anurag Chouhan
1ddb9b3e47 qcacld-3.0: Add uevent to update status & data
Update uevent status to hdd, based on the uevent received
from the platform driver

Change-Id: I1ac0fa61efa8b7f4f9d5e4e6abfcf969dbc1c592
CRs-fixed: 2027958
2017-05-26 00:30:22 -07:00
Prashanth Bhatta
bd92f53484 qcacld-3.0: Implement uevent call back for snoc
Platform driver icnss can provide uevent notification like FW
ready & FW crashed. Register the call back for notification and
update driver state for FW crashed indication so that driver
doesn't have to wait for shutdown call back to know FW crashed.

CRs-fixed: 2004309
Change-Id: I48afe8e023107aba8362324e3adabf6d50996b67
2017-05-26 00:30:21 -07:00
snandini
9d8f469223 Release 5.2.0.26Z
Release 5.2.0.26Z

Change-Id: I7b2f31532a5946d28043cf823884eb36b1233b20
CRs-Fixed: 774533
2017-05-25 20:41:01 -07:00
Naveen Rawat
334c51bb7d qcacld-3.0: Fix NDI create crash
When NDI create and delete are repeated multiple times NDI create
crash second times due to MC thread getting stuck in infinite loop
within function csr_scan_append_bss_description. This function is
not applicable for NDI profile type. This patch fixes this by avoiding
csr_scan_append_bss_description for NDI mode.

Change-Id: If63068e214fa546f1ed015a99ed5b2f95298b39b
CRs-Fixed: 2044704
2017-05-25 20:41:01 -07:00
snandini
3e96ff43bb Release 5.2.0.26Y
Release 5.2.0.26Y

Change-Id: Iafc2ba2ee74e84b8a85740c1e613e1cea3288dcd
CRs-Fixed: 774533
2017-05-25 18:21:42 -07:00
Dustin Brown
7f939930bb qcacld-3.0: Add gTimerMultiplier ini item
Expose the new QDF timer multiplier APIs via a new ini configuration
item, gTimerMultiplier.

Change-Id: I76f86f1488f4335dc7f1f128e1469f3f4cf32645
CRs-Fixed: 2049308
2017-05-25 18:21:41 -07:00
Dustin Brown
3c89c01c64 qcacld-3.0: Address WoW event handler refactor comments
There were several suggested improvements to the previous WoW event
handler refactoring. Address these recommendations in this follow-up
commit.

Change-Id: Id7a67f63c681bda8453b46451388a168d268bc0c
CRs-Fixed: 2040961
2017-05-25 18:21:38 -07:00
snandini
23a7bb03b5 Release 5.2.0.26X
Release 5.2.0.26X

Change-Id: I01b6853ce3d0231a86ecdd363a4e6048f9753ff1
CRs-Fixed: 774533
2017-05-25 16:11:25 -07:00
Mohit Khanna
3c4262dda9 qcacld-3.0: configure platform dependent 64-bit DMA support
We want to enable 64-bit DMA support only on a select platforms. If the
flag CONFIG_FORCE_ALLOC_FROM_DMA_ZONE is set on a platform, it indicates
that the platform supports 32-bit DMA only. We can use this flag to
enable ENABLE_DEBUG_ADDRESS_MARKING flag in the WLAN driver. This flag
ENABLE_DEBUG_ADDRESS_MARKING, when enabled, allows WLAN driver
to process DMA addresses > 32 bits.

Disable ENABLE_DEBUG_ADDRESS_MARKING  when
CONFIG_FORCE_ALLOC_FROM_DMA_ZONE is set for a platform.

Change-Id: I48afcc240d21fe9486c2bdf0f572b8b8d3e3cd71
CRs-Fixed: 2052030
2017-05-25 16:11:25 -07:00
snandini
0cbf56fde0 Release 5.2.0.26W
Release 5.2.0.26W

Change-Id: I8fe59e8e2b92d0299b6cdee64cb8a4899a7f97ec
CRs-Fixed: 774533
2017-05-25 14:09:59 -07:00
Wu Gao
0c45d6ac19 qcacld-3.0: close session for P2P GO properly
It will clean session id at then end of cfg80211 stop ap and won't set
flag SME_SESSION_OPENED after sap session started, which case session
for P2P GO can't be closed properly.

Change-Id: I0c6f21f3616ededd9e827b3eac9cbbe2c26bc60c
CRs-Fixed: 2050994
2017-05-25 14:09:58 -07:00
snandini
bead68ed09 Release 5.2.0.26V
Release 5.2.0.26V

Change-Id: Idab785e91bc5b35b575daf3a63c78b1c9d9a4c5b
CRs-Fixed: 774533
2017-05-25 05:36:21 -07:00
Naveen Rawat
90542b3268 qcacld-3.0: Fix memory leaks in csr_save_profile
Fix memory leaks in csr_save_profile by freeing all buffers within
saved cmd allocated within this function.

Change-Id: Ie06c91b145165df21992829883be11932871550d
CRs-Fixed: 1116619
2017-05-25 05:36:21 -07:00
snandini
3d58d793c9 Release 5.2.0.26U
Release 5.2.0.26U

Change-Id: I4180d7fff4934f94e95fc06fa1d2d8ffcc3fbfa9
CRs-Fixed: 774533
2017-05-25 05:01:34 -07:00
Sravan Kumar Kairam
2fc4755bc7 qcacld-3.0: Do not acquire rx wake lock for non local ARP
Propagation from qcacld-2.0 to qcacld-3.0

Currently even for non local ARP requests wake lock is getting
acquired which is preventing the system suspend which is a power
penalty. Do not acquire wake lock for the non local ARP requests.

Change-Id: I5fcd0cf0edc5c28a4662ae49a33cc55a77f3d3e4
CRs-Fixed: 1088974
2017-05-25 05:01:34 -07:00
snandini
6441d078d8 Release 5.2.0.26T
Release 5.2.0.26T

Change-Id: I53f9fd06ddefc7cbe819039a5fae8eaaa6516e8c
CRs-Fixed: 774533
2017-05-24 23:57:06 -07:00
Naveen Rawat
23be88d185 qcacld-3.0: Fix csr_is_auth_type11r
Fix csr_is_auth_type11r to return correct value for open security
when MDIE is not present in beacon or probe response.

Change-Id: Idad01f9f708776f40514cac81d6c007eb6e53a00
CRs-Fixed: 2035374
2017-05-24 23:57:04 -07:00
snandini
f2b81b998c Release 5.2.0.26S
Release 5.2.0.26S

Change-Id: Id37f594cedaeceff798de791f2a7cfc0686a434d
CRs-Fixed: 774533
2017-05-24 12:10:11 -07:00
SaidiReddy Yenuga
699d90e4b0 qcacld-3.0: Create and Destroy bug report lock over insmod and rmmod
Logging thread creates the bug report spinlock initially.
ifconfig thread tries to create the same spinlock
again, this leads to change in spinlock magic.

Create and Destroy the same lock on insmod/rmmod only.

CRs-Fixed: 2033886
Change-Id: Iea2fe4f9bd47b0d7f4ad1a176a361bac242b9d4d
2017-05-24 12:10:11 -07:00
snandini
c90d1f2e99 Release 5.2.0.26R
Release 5.2.0.26R

Change-Id: I50ec0a83068ca27fb0f88e516e959269e84f4e9b
CRs-Fixed: 774533
2017-05-24 05:17:10 -07:00
Abhishek Singh
34c15647ed qcacld-3.0: Send VDEV STOP if host fails in vdev start resp
In Vdev start response if due to some reason host fails it doesnt
send vdev stop to firmware to mark vdev as inactive. Due to this
when delete vdev is received by firmware it crashes.

To fix this send VDEV STOP to firmware if vdev start response fails
in host.

Change-Id: I170265069d7e92b091397a63972575bfe7c9ef6d
CRs-Fixed: 2038379
2017-05-24 05:17:09 -07:00
Abhishek Singh
de410b77d3 qcacld-3.0: Use memory passed by caller in u_mac_post_ctrl_msg
Caller pass an allocated memory to u_mac_post_ctrl_msg, but memory
is again allocated in u_mac_post_ctrl_msg before passing it to message
queue.

This change remove this duplicate mem allocation and use the memory
passed by the caller.

Change-Id: I4d329c5883832bb6571d1e81f0d9b9a044ebb6d9
CRs-Fixed: 2050449
2017-05-24 05:17:08 -07:00
snandini
df56f6b563 Release 5.2.0.26Q
Release 5.2.0.26Q

Change-Id: I9c97203a5fc0c4b73d2ba586ffc3a31f793ed5c9
CRs-Fixed: 774533
2017-05-24 04:34:04 -07:00
Abhishek Singh
65d8b15b23 qcacld-3.0: Set DS params only for 2.4 Ghz channels
If QCA_WIFI_3_0_EMU DS params is set for all channels.

To fix set DS params only in 2.4 Ghz channels.

Change-Id: I859b56080f55428c27aacf3fea25223c8931c960
CRs-Fixed: 2045226
2017-05-24 04:34:03 -07:00
snandini
ad9ebe0b78 Release 5.2.0.26P
Release 5.2.0.26P

Change-Id: I2bd69f4c10e6192e34f4a470f65481c913ae3ca4
CRs-Fixed: 774533
2017-05-24 03:37:25 -07:00
Selvaraj, Sridhar
dc2ac8e2ef qcacld-3.0: mem alloc for variables instead of using stack
Currently, function variables in csr_send_join_req_msg and
csr_roam_connect uses stack and are consuming much of the stack
eventually reaching the stack end quickly.

To avoid stack consumption issue, mem alloc function variables
instead of using stack.

Change-Id: If6fecb7f7ca9a31fdda2ea12d40a110e6c238508
CRs-Fixed: 2045315
2017-05-24 03:37:24 -07:00
Hanumanth Reddy Pothula
aef3c7f03c qcacld-3.0: After disconnect, return valid RSSI value on getRSSI IOCTL
During wlan disconnect, after sending del bss indication to firmware,
host expects vdev stats indication from firmware to update rssi
value of current disconnect AP and to return same to upper-layer if
getRSSI is received after disconnect. But presently, due to invalid
condition check, Host failing update rssi value.

If VDEV is up and BSSID is zero, get RSSI from vdev stats indication
and update the same in HDD. So that driver can return valid rssi to
upper-layer, on receiving getRSSI indication after disconnect.
Change-Id: I0554e513535bc033ea3bfe5021b5f8ddc108ffbe
CRs-Fixed: 2047842
2017-05-24 03:37:21 -07:00
Yuanyuan Liu
81982b96cb qcacld-3.0: Add support of sending fw_log_mode to WLAN FW
Add support of sending fw_log_mode to WLAN FW for QCA6290. WLAN FW
will decide whether to push its debug log through DIAG or not based
on this value.

CRs-Fixed: 2046631
Change-Id: I6c4ec8dbd65f8fc034381770bdef7e145b1d2b6a
2017-05-24 03:37:18 -07:00
snandini
9711804b0a Release 5.2.0.26O
Release 5.2.0.26O

Change-Id: I1416f1f1b76539d89ec9b5f6c0be1517ba748d63
CRs-Fixed: 774533
2017-05-24 02:41:15 -07:00
Venkata Sharath Chandra Manchala
bcdfdb14f2 qcacld-3.0: Support for HTT Stats
1. Remove unused variable of type ol_txrx_stats_req
   passed through cdp_txrx_stats api to avoid
   compilation break.
2. Add dp_stats file to the Kbuild. This file is
   used to collect HTT Statistics for Lithium based
   chipsets.

Change-Id: I0252c996d47cc866291d25f35eb9bb9e19073a8b
CRs-Fixed: 2050798
2017-05-24 02:41:15 -07:00