Commit Graph

5224 Commits

Author SHA1 Message Date
Varun Reddy Yeturu
96dced7129 qcacld-3.0: Defer disconnect from driver unload during roaming
Defer the disconnect that is issued because of driver unload
and handle it immediately after the roaming is complete.

Change-Id: I9200d0f218560f2a990f491a27563bbbf594ae24
CRs-Fixed: 2025273
2017-06-05 19:29:07 -07:00
Varun Reddy Yeturu
fd6d164471 qcacld-3.0: Fix Kbuild to enable WLAN debugfs support
Currently, the CONFIG_WLAN_POWER_DEBUGFS and CONFIG_WLAN_DEBUGFS
are not enabled for statically loaded driver.
This results in missing subsystem power stats.
The reason for that is the enabling of this macro is conditionally
done under KERNEL_BUILD=0.
This commit enables the macro to be also
conditionally done under all values of KERNEL_BUILD

Change-Id: I2824fdbb438b37ee58a95a6ea889be5e7691bef5
CRs-Fixed: 2033114
2017-06-05 19:29:05 -07:00
Varun Reddy Yeturu
eb2933233e qcacld-3.0: Fix the FW version in bugreport
The firmware version sub id is not included in the current Bugreport.
Including subid and HW version.

Change-Id: Idc96c15d377935e0ff7291b5542ef34627613136
CRs-Fixed: 2034277
2017-06-05 19:29:03 -07:00
Varun Reddy Yeturu
beaf750b85 qcacld-3.0: Fix the logging levels
Move a few logs to appropriate levels so that they are
not unnecessarily spamming the dmesg

Change-Id: I0ae839ef1420f3a540cfccee3867261ddf5a5870
CRs-Fixed: 2043741
2017-06-05 19:29:02 -07:00
snandini
3b66f90dac Release 5.2.0.28E
Release 5.2.0.28E

Change-Id: Id9024858cf7a664142520626393550983fa0727d
CRs-Fixed: 774533
2017-06-05 17:23:51 -07:00
hqu
1a44d38c89 qcacld-3.0: Fix watchdog bark issue when do traffic on HL card
When data traffic is running on HL card, it will hit watchdog
bark issue. It's caused by wrong pointer usage in ol_tx_queue.c.

Add fix to sync with qcacld-2.0.

Change-Id: I7869ef86839e69e515ccd70795b3909abc09d46c
CRs-Fixed: 2053632
2017-06-05 17:23:51 -07:00
Mukul Sharma
be846bbbdc qcacld-3.0: Skip packet filter in disconnect state
Currently, Host allows to set packet filter in disconnect
state which is leading assert in firmware.
As a part of this fix, skip packet filter configuration
in disconnect state.

Change-Id: Ibc02105fe4d2455dfb0e527d7fcb240fc1b39330
CRs-Fixed: 2041846
2017-06-05 17:23:49 -07:00
Padma, Santhosh Kumar
922344761b qcacld-3.0: Reset ext_cap structure
Currently ext_cap structure is not reset to zero in
lim_send_probe_rsp_mgmt_frame. This can cause
dot11f_unpack_ie_ext_cap to return status other than
DOT11F_PARSE_SUCCESS and result in unnecessary error messages in
lim_update_extcap_struct.

Reset ext_cap structure in lim_send_probe_rsp_mgmt_frame to fix this.

Change-Id: I874d4d150a405d32737912f0b40661bafa5df268
CRs-Fixed: 2035704
2017-06-05 17:23:48 -07:00
snandini
ad6ee1f39e Release 5.2.0.28D
Release 5.2.0.28D

Change-Id: I6f7772e513097c9f6b28ed671dbbaf7827b1e12f
CRs-Fixed: 774533
2017-06-05 13:29:43 -07:00
Mahesh Kumar Kalikot Veetil
8d3cbeebc0 qcacld-3.0: Add missing enums to sap_hdd_event_to_string()
Add eSAP_DFS_CAC_INTERRUPTED, eSAP_ECSA_CHANGE_CHAN_IND and
to sap_hdd_event_to_string(). Currently these events are
printed as eSAP_HDD_EVENT_UNKNOWN.

Change-Id: Ic59b4dfcfdd09aa808398d9dcd0b935cedfa7de3
CRs-Fixed: 2053387
2017-06-05 13:29:42 -07:00
snandini
28ba2437e8 Release 5.2.0.28C
Release 5.2.0.28C

Change-Id: Icf365ab6a6be79ea6b364ce38163d66c1f35aa6b
CRs-Fixed: 774533
2017-06-05 11:41:48 -07:00
Jeff Johnson
20b5dc36e3 qcacld-3.0: Avoid extscan bucket spec overread
Currently in hdd_extscan_start_fill_bucket_channel_spec() the
QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC attribute is parsed without
specifying a policy. This means that no policy is enforced.
Subsequently the values of the nested attributes are retrieved, but
again without any length limits enforced. This could result in a
buffer overread.

To prevent this issue:
* Parse using the existing policy wlan_hdd_extscan_config_policy
* Update the policy to add missing attributes

Change-Id: I3b20cb28d1beccd2e804b022b531413ad1edb533
CRs-Fixed: 2054958
2017-06-05 11:41:47 -07:00
snandini
2f273775ae Release 5.2.0.28B
Release 5.2.0.28B

Change-Id: I9033ab97b69c61fa379656dde42a6d74d3c8bfa5
CRs-Fixed: 774533
2017-06-05 10:00:06 -07:00
Ganesh Kondabattini
5e0ac2ab19 qcacld-3.0: Update channel width in Operating Mode IE
Host is always updating channel width as 20MHz while updating the
rx nss value in Operating Mode IE.

Channel width should be updated from session entry.

CRs-Fixed: 2048435
Change-Id: Ib78f52d3ad1be875450a76c20a9332933f50277f
2017-06-05 10:00:05 -07:00
Ganesh Kondabattini
f847f06b60 qcacld-3.0: Donot process get tx power command in disconnected state
Driver is accepting get tx power request from the application in
disconnected state and requesting FW for class A stats.
Since it is in disconnected state driver fails to parse the peer
stats.

CRs-Fixed: 2052864
Change-Id: Ie49528f0822b45bb103bc578f35b992797ebb1c5
2017-06-05 10:00:04 -07:00
snandini
cc0d3b97f5 Release 5.2.0.28A
Release 5.2.0.28A

Change-Id: Ied74d00ff11c6cfea19cd7b2dd833776c945b800
CRs-Fixed: 774533
2017-06-05 09:22:29 -07:00
Ganesh Kondabattini
5bcc3e7fa8 qcacld-3.0: Send response to stats request
WMA is ignoring stats request if there is already pending stats request
for the same sta id. When WMA ignores stats requests it should send a
response back to HDD so that it doesn't timeout waiting for response.

CRs-Fixed: 2052962
Change-Id: I781816c42fac12a0ace4e64558fc09418f32ddd7
2017-06-05 09:22:28 -07:00
Ganesh Kondabattini
9e4fbbbe57 qcacld-3.0: Stop TDLS timer when PDR triggered
Host is not stopping the TDLS timers when PDR is triggered.
These timers are expiring during wlan shut down and leading to
crash.

Fix is to stop TDLS timers while resetting adapters.

CRs-Fixed: 2050795
Change-Id: I944081342ff2de2548ff839a7b852d64282c0323
2017-06-05 09:22:27 -07:00
Ganesh Kondabattini
a28484e447 qcacld-3.0: handle connection tracker event from FW
FW indicates the bt coex events using event
'WMI_TDLS_CONNECTION_TRACKER_NOTIFICATION' and with reason as
'WMI_TDLS_ENTER_BT_BUSY_MODE' and 'WMI_TDLS_EXIT_BT_BUSY_MODE'.

WMA is handling this event and sending it to PE, But PE is not
handling it.

This change is to handle WMI_TDLS_CONNECTION_TRACKER_NOTIFICATION
in PE.

CRs-Fixed: 2051707
Change-Id: I844d1883bcb769799170fd7cf7114940d1bb8cd4
2017-06-05 09:22:25 -07:00
Nitesh Shah
622d31246e qcacld-3.0: Reject all vdev commands for TDLS in roaming
All the vdev and peer related commands are forbidden, when the
roaming happens in the system.
Firmware roaming module does vdev_stop, once the roaming is
successfully completed. Part of vdev stop, firmware will delete
all TDLS peers. So after roaming is completed, as part of
roam_sync_complete, host should not send peer_delete. If host
sends peer_delete then FW will not be able to send
peer_delete_resp_event as peer is already deleted
during roaming.

Make changes to reject all vdev and management commands
to firmware, when roaming is in progress in the system.

Change-Id: I17b36d0ce484efeda9dc537684792c7a90d2eae8
CRs-Fixed: 2049039
2017-06-05 09:22:23 -07:00
snandini
608bd1b659 Release 5.2.0.28
Release 5.2.0.28

Change-Id: I7145a12853a885d7896c06f606c5581800638e5c
CRs-Fixed: 774533
2017-06-05 06:15:55 -07:00
Selvaraj, Sridhar
40fcc69397 qcacld-3.0: Update ESE version IE presence to PE session correctly
Currently, driver is not updating the ESE version IE presence to PE
session if power constraint IE is present in beacon/probe. This causes
driver not adding ESE version IE in assoc request though AP is
advertising ESE version IE in its beacon/probe.

Update ESE version IE presence to PE session irrespective of whether
Power constraint IE is present or not.

Change-Id: Idb4ab5ef03449df49ee74848c8824bca9318f08a
CRs-Fixed: 2042660
2017-06-05 06:15:55 -07:00
Nishank Aggarwal
3bda3d113a qcacld-3.0: Avoid self asingment in wma_process_rmf_frame
Remove self assing variable rx_pkt->pkt_meta.tsf_delta
from wma_process_rmf_frame which is already initialized
in wma_mgmt_rx_process from structure wmi_mgmt_rx_hdr.

Change-Id: Ie8a777fccc2fb282018fc9e3548631def00878a4
CRs-Fixed: 2043356
2017-06-05 06:15:53 -07:00
Nishank Aggarwal
68d39274f0 qcacld-3.0: Fix suspicious dereference of pointer
Add proper NULL check before dereferencing pointer.

Change-Id: Ie6b92eae97d51daafe6fa1242263deb9e2e0bd10
CRs-Fixed: 2043356
2017-06-05 06:15:51 -07:00
Nishank Aggarwal
4dbbc919f8 qcacld-3.0: Allow staid with 0 as valid for TDLS Peer
Staid with 0 value is considered invalid for TDLS peer.
But Staid with 0 should not be invalid.

The fix is to allow staid with 0 value as valid for
TDLS peer, and assign 0xFF as invalid staid for TDLS
peer.

Change-Id: Ia175c7f1621e7ac0bb826c60fad4ce98dbd41d44
CRs-Fixed: 2041406
2017-06-05 06:15:49 -07:00
Selvaraj, Sridhar
320ed6226c qcacld-3.0: Remove qdf assert in sme_qos_process_reassoc_req_ev
Remove non critical qdf_assert in sme_qos_process_reassoc_req_ev.

Change-Id: I84eb1b609d310afec4e6a9ed2e4da7b91477ec07
CRs-Fixed: 2054327
2017-06-05 06:15:47 -07:00
snandini
704ce612ce Release 5.2.0.27Z
Release 5.2.0.27Z

Change-Id: If4a2abafa31a5aa2dae2c91c8d995f13349ad599
CRs-Fixed: 774533
2017-06-02 23:27:56 -07:00
Yun Park
ed827b466b qcacld-3.0: Handle ipa_tx_desc is NULL case in hdd_ipa_cleanup
In the hdd_ipa_forward, we are not populating pm_tx_cb->ipa_tx_desc
field. So, during hdd_ipa_cleanup, call ipa_free_skb only when
ipa_tx_desc is not NULL.

Change-Id: Ib15cd3eb0c7b10a205993db27960fa2e7775b335
CRs-Fixed: 2046901
2017-06-02 23:27:56 -07:00
snandini
5a1bd18b2a Release 5.2.0.27Y
Release 5.2.0.27Y

Change-Id: I9b48578f2d021099447ce7d40efe70e024315c9f
CRs-Fixed: 774533
2017-06-02 20:38:58 -07:00
Yue Ma
2be1287daa qcacld-3.0: Prints all objects when SSR shutdown is done
This can help to check which objects are leaked during SSR.

Change-Id: I43c4f381a8d07fc05a0238081d4de7ff18682a0b
CRs-fixed: 2055755
2017-06-02 20:38:57 -07:00
Sreelakshmi Konamki
c931b377ba qcacld-3.0: Fix compilation issues
Observing compilation errors when FEATURE_WLAN_LFR_METRICS
flag is enabled.

Add changes to fix the compilation errors

Change-Id: I9272cf26e590879f327629e21c76b991d077ad5c
CRs-Fixed: 2053760
2017-06-02 20:38:56 -07:00
Kiran Kumar Lokere
dda6077ba4 qcacld-3.0: Disable vendor VHT IE support if 2G 11ac disabled
Disable vendor VHT IE support if 11ac is disabled in 2.4G by
user configuration

Change-Id: I8920fae5352fa1a4c7356918bce3b27e2c4a3345
CRs-Fixed: 2052059
2017-06-02 20:38:54 -07:00
snandini
b885ea9e4d Release 5.2.0.27X
Release 5.2.0.27X

Change-Id: Idf8a64e78c7bd052db9fcdd3a583104e9bea123d
CRs-Fixed: 774533
2017-06-02 18:50:44 -07:00
Sandeep Puligilla
75992053b9 qcacld-3.0: Add more debug logs in vendor scan
Add more debug logs in vendor scan complete
callback API.

Change-Id: Id6240b17df76413ae95ae06df5511ffa9d1ada9e
CRs-Fixed: 2020143
2017-06-02 18:50:43 -07:00
Kiran Kumar Lokere
5be8fc8860 qcacld-3.0: Do not disable TxBFee with VHT caps in vendor IE
Do not disable the TxBfee feature if the VHT caps are in vendor
specific IE.

Change-Id: Ie1c8e15a908d74d9d30b550207225f8b0480035b
CRs-Fixed: 2035404
2017-06-02 18:50:42 -07:00
snandini
0c398ea1b2 Release 5.2.0.27W
Release 5.2.0.27W

Change-Id: I67a9ecb1add02668fe72acd7c14a2eb6583a2742
CRs-Fixed: 774533
2017-06-02 17:59:47 -07:00
Sandeep Puligilla
f0b3058d6a qcacld-3.0: Remove BSS from scan cache after disconnect
P2P connection is failed because host driver is updating
stale BSS entry of P2P go to NL.

Remove BSS entry from scan cache irrespective of reason
code.

Change-Id: I99eb1fd953037bbbd9c1af1147d3656f6ca246c3
CRs-Fixed: 1110752
2017-06-02 17:59:46 -07:00
Yuanyuan Liu
889167d4bf qcacld-3.0: Fix compilation error
Fix compilation error of "sessionId may be used uninitialized in
this function" by initializing sessionId to CSR_SESSION_ID_INVALID.

CRs-Fixed: 2055208
Change-Id: Id2da1f3ee028d85b1e0c1dfc4f65af5a54dd4479
2017-06-02 17:59:44 -07:00
snandini
293c5e2340 Release 5.2.0.27V
Release 5.2.0.27V

Change-Id: I068050fa9c4ded18b22a84f4819d137432b11480
CRs-Fixed: 774533
2017-06-02 17:25:16 -07:00
Manjunathappa Prakash
4a7b1dc764 qcacld-3.0: revert back ol_rx_add_mpdu_to_list to macro
Changes done to head pointer in ol_rx_add_mpdu_to_list() is not
returned back to caller as arguments are sent as pass by value

Change-Id: Ie8c98af2ea4e03b0678df243aa0c832165494168
CRs-Fixed: 2046362
2017-06-02 17:25:15 -07:00
snandini
1254a7bcbc Release 5.2.0.27U
Release 5.2.0.27U

Change-Id: I7682116e9b2ed60761fae2550171165a905b663f
CRs-Fixed: 774533
2017-06-02 14:47:44 -07:00
Krunal Soni
364e087691 qcacld-3.0: Defer power-save for certain APs during initial connection
Few APs create interoperability issues when STA goes to power-save mode
right after initial connection.

In order to resolve these issues, defer the power-save for few seconds
when connected to those APs.

Change-Id: I3f6b642fb4e481dcb8e14f6da141f4cfa9d6b167
CRs-Fixed: 2046014
2017-06-02 14:47:43 -07:00
Manjunathappa Prakash
2754f65563 qcacld-3.0: Fix nbuf tracking in ol_rx_fwd_check(), ol_rx_defrag_decap_recombine()
In ol_rx_fwd_check, do not remove nbuf Rx packet in case intra-bss
forwarded traffic. Regular Tx completion will take care to free the nbuf
and its tracking.

In ol_rx_defrag_decap_recombine(), it is callers responsibilty to free the
source nbuf if concatinate succeeds.

Change-Id: Iaf83524924e312bf819483de38603241f45170a5
CRs-Fixed: 2047377
2017-06-02 14:47:41 -07:00
Arif Hussain
957b20873a qcacld-3.0: Fix isCacEndNotified flag init to fix issues across ssr
If SAP operating in DFS channel and CAC was done, isCacEndNotified
flag was set to true. If ssr triggers, SAP will restart and does cac
wait, and isCacEndNotified flag remains set which will prevent sending
vdev up to firmware to start beacon after cac done.

Change-Id: I02b9c1dbcd1f37df1de134ce54233c2061bf7cec
CRs-Fixed: 2049957
2017-06-02 14:47:38 -07:00
snandini
8c10e02d05 Release 5.2.0.27T
Release 5.2.0.27T

Change-Id: I01f43f34d7faae8278917730604819cf65cb07ea
CRs-Fixed: 774533
2017-06-02 13:41:18 -07:00
Arif Hussain
e478b4d0be qcacld-3.0: reset dfs_cac_block_tx as soon after start bss event received
Make sure to first reset dfs_cac_block_tx (if operating channel is not
dfs) as soon as start bss event received. It is observed that in some
cases further processing of start bss event in hdd_hostapd_sap_event_cb
is failed and dfs_cac_block_tx flag remain set, because of this all the
tx packets from network layer are blocked. SAP continue to beacon but
peer stations failed to connect as SAP is blocked to transmit dhcp or
other data packets from network stack.

Change-Id: I045e38d6b826d2de64520fe9063e6123bc6650e6
CRs-Fixed: 2026958
2017-06-02 13:41:17 -07:00
snandini
cfa0054117 Release 5.2.0.27S
Release 5.2.0.27S

Change-Id: Ibc767ddb68989e7d128010e596aaf08c6f2be307
CRs-Fixed: 774533
2017-06-01 21:21:22 -07:00
Arif Hussain
43354e663f qcacld-3.0: Handle user-space roaming failure case
Supplicant uses connect command to send roam request and
also starts auth timer. On failing to receive assoc success
from driver, supplicant will send disconnect indication to
the driver after auth timeout which is 10 sec.

So, currently supplicant does not allow to stay with current AP
if roam invoke fails.

On roam invoke failure, indicate this failure to supplicant
and send death to current AP for driver and firmware cleanup,
So that we can avoid 10sec auth-timer delay.

Change-Id: Ie010a55b9b7a6563c817b17815d004f7b8bfa2fa
CRs-Fixed: 2044156
2017-06-01 21:21:21 -07:00
Arif Hussain
72edc5955a qcacld-3.0: Fix cac duration issue with weather channel
Make sure to update cac duration correctly if any of the
bonded channel is weather channel.

Change-Id: If96654427abd32757a592a1e89113c185127f221
CRs-Fixed: 2034640
2017-06-01 21:21:20 -07:00
Arif Hussain
b7eb4aff37 qcacld-3.0: Fix memory leak in mac_open
Make sure to free cfg resource in allocated during
cfg_init when case of pe_open failure happen.

Change-Id: I651585dabec344253fb3015d974f9f4685d24304
CRs-Fixed: 2027588
2017-06-01 21:21:19 -07:00