Commit Graph

16830 Commits

Author SHA1 Message Date
Jianmin Zhu
160d364672 qcacld-3.0: Refactor channel switch resp in lim
Use vdev_start_response to replace tpSwitchChannelParams
parameter in channel switch response handler.

Lim channel switch resp handler will be called directly, don't
use post msg.

Use vdev id to replace tpHalHiddenSsidVdevRestart in hidden
ssid response handler.

Change-Id: Ida0bfed3fea1cc0ff28ed15832765d446296f3be
CRs-Fixed: 2516582
2019-09-06 12:25:55 -07:00
Jianmin Zhu
ebe8ee40c5 qcacld-3.0: Add bss param and vdev start resp
Add vdev mgr vdev start resp handler.
Add bss param in vdev mlme priv and set/get/clear API.

Change-Id: I1fdd768254c0bbe5c062cc97341ae7c07b578b65
CRs-Fixed: 2516573
2019-09-06 12:25:50 -07:00
nshrivas
46eb188999 Release 5.2.0.146S
Release 5.2.0.146S

Change-Id: Ie3a0c0d57bab01cf0ecd0ce3a2d1fca1cb5044a1
CRs-Fixed: 774533
2019-09-06 07:40:13 -07:00
Abhishek Singh
74d06cf802 qcacld-3.0: Fix improper QCN IE length filled
While filling the QCN IE the IE length filled is 11 while actual
length is 8 and thus this lead to improper IE length in scan
additional ie while copying the default_scan_ies.

So fix the QCN IE length and add check for improper IE length check
while copying IE in scan additional ie.

Change-Id: I372af8c206d8f7ce0e93bc9c0fb14e222c6eb87e
CRs-Fixed: 2522208
2019-09-06 07:40:13 -07:00
nshrivas
5324ac644c Release 5.2.0.146R
Release 5.2.0.146R

Change-Id: I498e9416a749f9268e319b1157eb41fda4ff628f
CRs-Fixed: 774533
2019-09-06 06:22:58 -07:00
Visweswara Tanuku
c3f26d77b0 qcacld-3.0: Genoa: SDIO: Update Genoa SDIO Configs
Use 64 bit HTT header instead of 32 bit &

Enable CONFIG_QCN7605_SUPPORT for Genoa SDIO

Enable CONFIG_PLD_SDIO_CNSS2 for Genoa SDIO

CRs-Fixed: 2520815
Change-Id: Ib94bb2f24db838dcec7ad037a2c9149c8183b0c8
2019-09-06 06:22:57 -07:00
Visweswara Tanuku
a7f98a37d5 qcacld-3.0: Enable adma config option for Genoa SDIO
Set CONFIG_SDIO_TRANSFER to adma for Genoa SDIO

Change-Id: Iee6575f53e4ca5cb900d0175a5aeec982f902054
CRs-Fixed: 2429660
2019-09-06 06:22:53 -07:00
nshrivas
090a1baba6 Release 5.2.0.146Q
Release 5.2.0.146Q

Change-Id: Id0a3c7da0125dbe794b1b6b5576bdc5fd60f6c9c
CRs-Fixed: 774533
2019-09-06 00:46:07 -07:00
Abhishek Ambure
968f1515a5 qcacld-3.0: Clean up struct del_bss_params
As a part of vdev convergence, legacy vdev code for vdev delete/stop/
down is removed. WMA timer for vdev manager operations are deleted,
now target_if takes care of it.

Structure del_bss_params is no more used to store bss delete request
params, hence struct del_bss_params is cleaned up from legacy code.

Change-Id: I487d2683908b705176ff8064dd3ce7cd49a3ce47
CRs-Fixed: 2517880
2019-09-06 00:46:06 -07:00
nshrivas
ecec9753d3 Release 5.2.0.146P
Release 5.2.0.146P

Change-Id: Ibbc807cf82d6d6bf3585319692a136fd1bbc08c0
CRs-Fixed: 774533
2019-09-04 22:23:52 -07:00
Alan Chen
0f29e974ec qcacld-3.0: Wait for PM freeze when turning wifi on
Add a wait for PM freeze when wifi is turning on to make sure file system
and QMI are still accessible before attempting to download the FW and
trigger a QMI handshake with FW.

Change-Id: Ia2f3dc28abb9cab4b5dd8038ea02ac016eb74bbb
CRs-Fixed: 2521009
2019-09-04 22:23:52 -07:00
Alan Chen
f8a46d501f qcacld-3.0: Change system power debugging time stamp to microseconds
Time stamp for profiling system level power issues is currently using
qdf_get_system_timestamp(), which measures in milliseconds. To get more
fine granular data, use qdf_get_log_timestamp_usecs() to measure in
microseconds instead.

Change-Id: I920d0ec7c90ab602cbdc0d1efdb6061d6a72c122
CRs-Fixed: 2520939
2019-09-04 22:23:48 -07:00
nshrivas
31271c8865 Release 5.2.0.146O
Release 5.2.0.146O

Change-Id: Ia6345d61dd8e1782ce5eef620cdb94e246eb3616
CRs-Fixed: 774533
2019-09-04 18:53:48 -07:00
Tushnim Bhattacharyya
42299b8780 qcacld-3.0: Replace channel with frequency in csr_channel
Replace channel ID with frequency in struct csr_channel.

Change-Id: Id86aacfd6dc9b0c65184bf046a7ee27b9c1fb5e5
CRs-Fixed: 2519204
2019-09-04 18:53:48 -07:00
Tushnim Bhattacharyya
1b11154a62 qcacld-3.0: Replace channel with frequency in csr_channel_powerinfo
Replace channel ID with frequency in struct csr_channel_powerinfo.

Change-Id: Ibe6bb41345f01f7898e91d75f2c5730d88e33717
CRs-Fixed: 2519117
2019-09-04 18:53:43 -07:00
Tushnim Bhattacharyya
d1d0db9db2 qcacld-3.0: Replace channel with frequency in wlan_mlme_reg
Replace channel ID with frequency in struct wlan_mlme_reg.

Change-Id: I71fcec5014e451cf912f187c79a1939d2d7e54ad
CRs-Fixed: 2518897
2019-09-04 18:53:38 -07:00
nshrivas
82f55edc88 Release 5.2.0.146N
Release 5.2.0.146N

Change-Id: I5b36335e3e8ad3be912d7d88be6431db3a6a1909
CRs-Fixed: 774533
2019-09-04 17:38:22 -07:00
Alan Chen
74e4dd0fd6 qcacld-3.0: Change spin lock APIs to use spin lock IRQ
The spin lock APIs are accessed from wake MSI hard irq handler as well,
causing deadlock. To solve this, change spin lock APIs to use spin lock
IRQ.
CRs-Fixed: 2519986

Change-Id: I4d05abd294a71a26915210ae7e2be9be6aa7a996
2019-09-04 17:38:22 -07:00
Hangtian Zhu
39e2e21a83 qcacld-3.0: Use QCS40X instead of QCS405 in config files
Use QCS40X instead of QCS405 in config files. Kernel defconfig files for
QCS405 and QCS403 has been separated recently, and the arch has been
changed between these two chips. But all QCS related features and changes
in cld should all be included, so use CONFIG_ARCH_QCS40X to replace
CONFIG_ARCH_QCS405.

Change-Id: I6f0837bb3d3f1530aea5b2d4912741beb8c313bd
CRs-Fixed: 2519267
2019-09-04 17:38:18 -07:00
Alan Chen
d841bcca03 qcacld-3.0: Return -EAGAIN from idle shutdown if system is suspending
Return -EAGAIN from idle shutdown callback API if system suspend is
ongoing such that cnss driver does not turn off suspend the PCIe link
and psoc idle shutdown can be re-tried later.

Change-Id: If859abb70c18d03c2e73a8c589a4e138b98cb996
CRs-Fixed: 2518448
2019-09-04 17:38:14 -07:00
nshrivas
e1b50e5a80 Release 5.2.0.146M
Release 5.2.0.146M

Change-Id: I5e70d31721d6551b3aca9df3e41b04d5085bef05
CRs-Fixed: 774533
2019-09-04 16:22:54 -07:00
Kiran Kumar Lokere
89f01f0fac qcacld-3.0: Add support for VHT MCS 10&11
Add support to advertise the VHT MCS 10&11 support using vendor
specific IE to enable the MCS 10 and 11 support in VHT mode.

Change-Id: I2d197dcce20ab4aec617ca8a7f4a54b438fae635
CRs-Fixed: 2465662
2019-09-04 16:22:53 -07:00
nshrivas
e51d668c82 Release 5.2.0.146L
Release 5.2.0.146L

Change-Id: Id9510d567d4126c5c7d20da33afcb13a49832fa1
CRs-Fixed: 774533
2019-09-04 11:30:44 -07:00
tinlin
c5193671e4 qcacld-3.0: Possible null pointer dereference
In hdd_dis_connect_handler, roam_info is checked
for NULL in if(roam_info && roam_info->disconnect_ies),
but roam_info may be null pointer and is explicitly
dereferenced later. Add null pointer check before
it is dereferenced again.

Change-Id: I51f731323f01ddc657c57d20d8c63317400c92ab
CRs-Fixed: 2518450
2019-09-04 11:30:44 -07:00
Sourav Mohapatra
939e0744f7 qcacld-3.0: Add support to print reg db and bdf reg db version
FW sends regdb and bdf regdb version as a part of service ready event.
Extract the versions and populate it to HDD layer.

Change-Id: I2c9a40832361381c66a482d93ef5721fa7d6ffe4
CRs-Fixed: 2486984
2019-09-04 11:30:39 -07:00
Abhishek Ambure
bfcf12f03b qcacld-3.0: Release WLAN_LEGACY_WMA_ID ref before vdev del command
In legacy code WLAN_LEGACY_WMA_ID reference was released after
sending vdev delete command to firmware. Now with converged vdev
manager, if wmi service "wmi_service_sync_delete_cmds" is not enabled
then vdev delete response is sent to upper layer through target_if.

Hence WLAN_LEGACY_WMA_ID reference for vdev is released before sending
vdev delete command and then wma_txrx_node for the vdev is cleaned up.

Change-Id: I717a7911a5139dc5145e7702e831f6f026c8f3aa
CRs-Fixed: 2518231
2019-09-04 11:30:35 -07:00
Bala Venkatesh
36c6975c31 qcacld-3.0: Send TDLS offchannel as 0, if only 2G is supported
Send TDLS offchannel as 0 if only 2G is supported otherwise
FW will do the TDLS offchannel in 2G and will result in MCC
and not desired in 2G.

Change-Id: Ieeea619526a3d8b04ac4bda3f3e0ca73aba2f78a
CRs-Fixed: 2517642
2019-09-04 11:30:30 -07:00
Jingxiang Ge
13b87056d2 qcacld-3.0: Fix possibile excessive log in hdd_rx_packet_cbk
There is possible excessive log in hdd_rx_packet_cbk when
receiving arp pkt. so lower log level from info to debug.

Change-Id: If7fbe1f86e98ca22172f9b21205b7215c435988b
CRs-Fixed: 2511832
2019-09-03 15:58:49 +08:00
nshrivas
6ef89791cd Release 5.2.0.146K
Release 5.2.0.146K

Change-Id: I0e58f4e86e56b4f548ace2043ed8da2f5e459831
CRs-Fixed: 774533
2019-09-02 02:31:13 -07:00
tinlin
a8193944ec qcacld-3.0: Possible null pointer dereference
cds_cfg is assigned the return value from function
cds_get_ini_config. cds_cfg may be null pointer. Add
null pointer check before cds_cfg is
dereferenced.

Change-Id: I184c0a589fa660c5c49cd951986ad918cbc42bcd
CRs-Fixed: 2518433
2019-09-02 02:31:13 -07:00
nshrivas
cff99af254 Release 5.2.0.146J
Release 5.2.0.146J

Change-Id: I5d074d2ae25bb7fd19d7fb78a328dbe36fbf531e
CRs-Fixed: 774533
2019-08-31 04:26:39 -07:00
Alan Chen
abd1947c43 qcacld-3.0: Add timing profiling log for runtime PM operations
Add timing profiling log for runtime PM operations such that we can
know how much time each operation is taking.

Change-Id: Iad2aca8e8bb2f0dadc14d24e3a5c2b03938df9df
CRs-Fixed: 2518935
2019-08-31 04:26:38 -07:00
nshrivas
de9238b30e Release 5.2.0.146I
Release 5.2.0.146I

Change-Id: I93a27a66522740a747db6ad546b7046b09442948
CRs-Fixed: 774533
2019-08-31 02:13:01 -07:00
Tushnim Bhattacharyya
9f94d78a66 qcacld-3.0: Replace channel with frequency in csr_roamstart_bssparams
Replace channel ID with frequency in struct csr_roamstart_bssparams.

Change-Id: I826db5eea09fd7b5789c4907168d30186e5d5435
CRs-Fixed: 2518017
2019-08-31 02:13:01 -07:00
CNSS_WLAN Service
3685ef90af Merge "Release 5.2.0.146H" into wlan-cld3.driver.lnx.2.0 2019-08-30 16:24:09 -07:00
CNSS_WLAN Service
3fcb07f060 Merge "qcacld-3.0: Use frequency for channel operation" into wlan-cld3.driver.lnx.2.0 2019-08-30 16:24:07 -07:00
CNSS_WLAN Service
f824a5022b Merge "qcacld-3.0: Lower the TSF sync interval for SAP mode" into wlan-cld3.driver.lnx.2.0 2019-08-30 16:24:06 -07:00
CNSS_WLAN Service
c5a50d8973 Merge "Release 5.2.0.146G" into wlan-cld3.driver.lnx.2.0 2019-08-30 16:24:04 -07:00
CNSS_WLAN Service
8454570459 Merge "qcacld-3.0: Check the p2p roc timer state by acquiring timer lock" into wlan-cld3.driver.lnx.2.0 2019-08-30 16:24:03 -07:00
nshrivas
64c96b1d5c Release 5.2.0.146H
Release 5.2.0.146H

Change-Id: Id261a63dcf0f6f893a9a40e709821493507075f3
CRs-Fixed: 774533
2019-08-30 16:02:56 -07:00
Rajeev Kumar Sirasanagandla
e796a60fd0 qcacld-3.0: Use frequency for channel operation
As a part of 802.11ax amendment, 6GHz band operation is added.

Since the 6 GHz channel numbers are overlapping with existing 2.4GHz
and 5GHz channel numbers, use frequency to identify unique channel
operation instead of channel number. Channel frequency is unique across
bands.

As a part of above requirement, in the existing WMI interface handlers
and related functions, wherever missing, add frequency attributes to
identify unique channel operation.

Change-Id: I3853d6e64e63eb219282afac4f56ccf398b0a04f
CRs-Fixed: 2517897
2019-08-30 16:02:55 -07:00
Subrat Dash
f75d3d3ecf qcacld-3.0: Lower the TSF sync interval for SAP mode
The TSF deviation is more than 100ns when the capture interval is 100sec.

Lower the interval to 1sec to keep the drift  within limit of 100us.

Change-Id: I2a6f7bf2d06d5d67854cbab6b582009f2cec39bf
CRs-Fixed: 2515981
2019-08-30 16:02:51 -07:00
CNSS_WLAN Service
f58f5d9e3f Merge "qcacld-3.0: check napi_gro_recevie result before do gro flush" into wlan-cld3.driver.lnx.2.0 2019-08-30 08:48:46 -07:00
nshrivas
7c0492af68 Release 5.2.0.146G
Release 5.2.0.146G

Change-Id: Ieb1726eed5a880032a955f15909e4984ae07d5f2
CRs-Fixed: 774533
2019-08-30 04:51:34 -07:00
Bala Venkatesh
7fb389e576 qcacld-3.0: Check the p2p roc timer state by acquiring timer lock
In function p2p_process_scan_complete_evt roc timer state is checked
using the api qdf_mc_timer_get_current_state, this api does not take
timer lock while returning the state. In other thread, if the timer
state is changed then the wrong timer state is returned in current thread.
And wrong timer state can lead to destroying roc timer without stopping
it synchronously.

Call qdf_timer_stop_sync api without checking the timer state
as the timer already checking the state by taking a timer lock.

Change-Id: Idb22e405178f2e0f1ed80b7c8aac04170e5b69bc
CRs-Fixed: 2511768
2019-08-30 04:51:34 -07:00
nshrivas
65ad144099 Release 5.2.0.146F
Release 5.2.0.146F

Change-Id: I04040268e075945df3d2669ebd4e2af974766326
CRs-Fixed: 774533
2019-08-29 22:10:55 -07:00
Tushnim Bhattacharyya
c71d7d46c9 qcacld-3.0: Include wmi.h on the correct header file
Include wmi.h in wma header file.

Change-Id: I08d53ff111d2f0bc9f7a4046d27174cf3e3f8aa7
CRs-Fixed: 2514755
2019-08-29 22:10:55 -07:00
Rajeev Kumar
e51bc40f96 qcacld-3.0: Remove CCE HW filter from runtime pm suspend
FW is not reay to support CCE HW filter during active mode
hence remove it.

Change-Id: Iba14c788362dad4d2f76eda8e06849b6c8174519
CRs-Fixed: 2514049
2019-08-29 22:10:50 -07:00
Jinwei Chen
c1dc5c788c qcacld-3.0: check napi_gro_recevie result before do gro flush
Check napi_gro_recevie result before do napi_gro_flush when bus
bandwidth is idle (<18 Mbps), only if napi_gro_recevie result is
not GRO_DROP and GRO_NORMAL then do napi_gro_flush for each RX packet.

Change-Id: I8cd75fb680ad4cb13f8d8677136f51c5a0548b6d
CRs-Fixed: 2515794
2019-08-29 18:30:47 -07:00
nshrivas
56d50cca34 Release 5.2.0.146E
Release 5.2.0.146E

Change-Id: I94e0752d7220eca7ee0ef19f6a966df4c00c250f
CRs-Fixed: 774533
2019-08-29 10:51:57 -07:00