Commit Graph

19715 Commits

Author SHA1 Message Date
bings
22cb0a7581 qcacld-3.0: fix hdd_convert_timeout_reason build error
hdd_convert_timeout_reason is also used in hdd_connect_done.
Define hdd_convert_timeout_reason when it is used.

Change-Id: Ifa03959969474d9cafb1315d53b83cae21745280
CRs-Fixed: 2703672
2020-06-08 10:30:17 -07:00
nshrivas
c4162a3ac0 Release 5.2.0.189I
Release 5.2.0.189I

Change-Id: I271f45c6846cbf63bf0521b90c6838cbee76512e
CRs-Fixed: 774533
2020-06-07 17:42:29 -07:00
Bapiraju Alla
2f20b939d1 qcacld-3.0: Specify exact size of the version string while coping
While coping version strings in cds_hang_event_notifier_call, specify
exact size of QWLAN_VERSIONSTR/QDF_HANG_EVENT_VERSION to avoid buffer
overflow.

Change-Id: Ie2203600a2c92bb78ba076b609375ca219773b19
CRs-Fixed: 2702069
2020-06-07 17:42:29 -07:00
Bapiraju Alla
cd65464616 qcacld-3.0: Add validation for wmi handle
Validate wmi handle obtained in tgt_fwol_pdev_param_send

Change-Id: I99edbdf5be4c17af7fb31b7cbdaf418e5a1150af
CRs-Fixed: 2699765
2020-06-07 17:42:25 -07:00
nshrivas
7d47f4b9c9 Release 5.2.0.189H
Release 5.2.0.189H

Change-Id: I37f33c7c705f260d6989da442e4409691822968d
CRs-Fixed: 774533
2020-06-07 12:29:09 -07:00
Jianmin Zhu
fb397c30c4 qcacld-3.0: Enable flag to increase TX descs in AUTO QCA6390
Based on multi-clients test experiment, when AUTO SA8155+HST
works as SAP connected more than 8 Ref STA clients, it requires
increase in TX descriptors to burst traffic to each Rx device,
or flow control happens to stop host tx queue frequently for
missing TX descriptors, can't get high throughput.

Change-Id: Ie2adbdd3bfece323d51d5e96fef6001c4e39c3f4
CRs-Fixed: 2703765
2020-06-07 12:29:09 -07:00
Alok Kumar
6a42b53a9d qcacld-3.0: Reset tcp adv window scale value to default
When gTcpAdvWinScaleEnable is enabled, tcp_adv_win_scale value
changes according to tput threshold. When wifi is disconnected,
tcp_adv_win_scale value is not reset to default value.

Reset the TCP advance window scale value to default when
bus bw timer stops.

Change-Id: I9b0ae2e8db11a626b3bdc4afc6e051af8943baab
CRs-Fixed: 2696481
2020-06-07 12:29:05 -07:00
Lincoln Tran
e4f18a9065 qcacld-3.0: Add logic to handle country code change
Update the HDD callback to check for phymode change or
channel change when country code updates and stop/restart
the adapter accordingly. Include cases for STA mode,
SAP mode, P2P-CLI mode, and P2P-GO mode.

Add conditional compilation flag for MCC specific API in
qcacmn.

Change-Id: I88edb401146e3cef48d757393f89fa48cb6ac895
CRs-fixed: 2658294
2020-06-07 12:29:02 -07:00
Lincoln Tran
745f9e7d1f qcacld-3.0: Update phymode before starting SAP and STA
Check phymode to verify it is allowed for the current country
before starting SAP or connecting STA.

Change-Id: Ica5e70bbd421c4dc18a34545f63e436bc482fc46
CRs-fixed: 2658294
2020-06-07 12:28:57 -07:00
Lincoln Tran
ffd5db1bb9 qcacld-3.0: Add API to convert phymode types
Convert CSR phymode to regulatory phymode and back. Regulatory
phymode enum contains fewer fields than eCsrPhyMode enum so a
conversion API is needed.

Change-Id: I4b962c07a917d19fa4ae51c78befae507dabf80f
CRs-fixed: 2658294
2020-06-07 12:28:54 -07:00
nshrivas
b669e9b7ea Release 5.2.0.189G
Release 5.2.0.189G

Change-Id: I621d0673211a2587c58916affe1b464b0eadef0a
CRs-Fixed: 774533
2020-06-07 10:13:22 -07:00
Manikanta Pubbisetty
e70a618e3f qcacld-3.0: unregister peer hang notifier
Currently, we register the peer hang notifier when the peer unmap
timer elapses, but do not unregister it. We also pass the peer reference
for which the unmap timeout happened as part of the notifier registry.

Since we do not unregister the notfier, there are chances that we
call the notifier with a stale peer reference during the subsequent
hang event which results in a crash; avoid this by unregistering the
peer hang notifier as part of device recovery.

Change-Id: I36bd8d9c1b4e38e1ba9d8c16b79df7f0cd1c9f82
CRs-Fixed: 2688676
2020-06-07 10:13:22 -07:00
Jingxiang Ge
3c19aa6dbb qcacld-3.0: Add vendor cmd for ldpc/tx_stbc/rx_stbc
Add vendor cmd for ldpc/tx_stbc/rx_stbc.

Change-Id: Id932bc68f9282adc1f542ecc6212288b4ae59d38
CRs-Fixed: 2689414
2020-06-07 10:13:18 -07:00
Sourav Mohapatra
f1e669fdc6 qcacld-3.0: Wait for driver recovery while WiFi ON/OFF
Currently the driver is not synchronized properly between SSR and wifi
ON/OFF. This causes a potential deadlock resulting in a DSC timeout.

To synchronize, add a wait in wlan_hdd_state_ctrl_param_write
which is called during WiFi ON/OFF. This wait will ensure that the
driver recovery is complete before proceeding with ON/OFF.

Change-Id: Ia1c4f8d7076d77c591276ee380b55a747cf606bd
CRs-Fixed: 2701513
2020-06-07 10:13:14 -07:00
nshrivas
95c7b813db Release 5.2.0.189F
Release 5.2.0.189F

Change-Id: Id2475f4d55796f844b3e5729e9efcdc5ec72c5df
CRs-Fixed: 774533
2020-06-07 08:07:44 -07:00
Chaoli Zhou
1178ae7db8 qcacld-3.0: Fix htt_status & A_STATUS map dp status wrong issue
Convert the tx complete status or A_STATUS to the correct dp status
before pass to qdf_dp_trace_ptr

Change-Id: I1ad94c8c293c29c9789e6dc761244911a7520707
2020-06-07 08:07:44 -07:00
hqu
d494c3b85a qcacld-3.0: Change default value for ini np_chan_weight
When config chanlist with DFS channel only, SAP can't be started
due to all DFS channel are all excluded and can't find available
channel in current chanlist. Issue is introduced by
'Change-Id: I53a22a0059d56aa8fca66215fed1ed0588db7db5'.

Fix is to set default ini np_chan_weight value to 1, then DFS channel
will be most likely put at last in available chanlist and DFS channel
will be the last choice when no other normal channel can be used.
If config chanlist with DFS channels only, SAP still can be started
on DFS channel successfully.

Change-Id: I04f70068069ff5c4f68b7d7fa56a2ede40035c6e
CRs-Fixed: 2694415
2020-06-07 08:07:40 -07:00
Yu Wang
41d24a7273 qcacld-3.0: modify BTC mode according to BTC chain mode
BTC mode should be set according to BTC chain mode, which can be
updated dynamically during runtime.

Change-Id: Ifc95d3340ab19e217bd55a0ca5ce69988650f9e0
CRs-Fixed: 2666550
2020-06-07 08:07:35 -07:00
nshrivas
6bbfbb7bd2 Release 5.2.0.189E
Release 5.2.0.189E

Change-Id: If38cb8f1d41f84442aaa9db65a1c512313e4a597
CRs-Fixed: 774533
2020-06-07 03:13:48 -07:00
Srinivas Dasari
cefd07f8e1 qcacld-3.0: Don't set hw_filter for NDI mode
Hardware filters are supported for STA and P2P client modes.
But it's configured for NDI mode also currently. Don't configure
hw filters for NDI mode as it's not supported.

Change-Id: Ifc8f213a6279c8eb0ddde60c4f9b3538bc841ffc
CRs-Fixed: 2688396
2020-06-07 03:13:47 -07:00
Alan Chen
184c8ab3b6 qcacld-3.0: Change NLA policy table for policy OFFLOADED_PACKETS
The current policy table for OFFLOADED_PACKETS is incorrect and does
not match the uptream versions. Hence, rearrange the table contents
with the proper parameters to fix this.

Change-Id: I1e6b0ebc3ef4f622833778e0545d50783d524551
CRs-Fixed: 2701205
2020-06-07 03:13:44 -07:00
nshrivas
b7f224cfec Release 5.2.0.189D
Release 5.2.0.189D

Change-Id: I2ec4ef75ac51ef5cf7c423c6d085a2f7129f99a8
CRs-Fixed: 774533
2020-06-07 00:17:54 -07:00
Rajesh Chauhan
bc611919e0 Revert "qcacld-3.0: Use IS_ENABLED for the definition of kernel module"
This reverts Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e.
That change fails build for GKI variant.

Change-Id: I6cd7322870023d245fe9d20250ceb0b5d738d214
CRs-Fixed: 2701642
2020-06-06 19:06:09 -07:00
nshrivas
91daf1a6ab Release 5.2.0.189C
Release 5.2.0.189C

Change-Id: I7d0dc0f4a8856023ac328a8edcdaadd66a4838c5
CRs-Fixed: 774533
2020-06-05 06:25:38 -07:00
Vevek Venkatesan
dd91edd508 qcacld-3.0: Use IS_ENABLED for the definition of kernel module
Add support and use IS_ENABLED in code, if CONFIG_IPA3 config as
loadable kernel module.

Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e
CRs-Fixed: 2701642
2020-06-05 06:25:38 -07:00
nshrivas
928bce4387 Release 5.2.0.189B
Release 5.2.0.189B

Change-Id: I6e59c8746bb6f9a6438a4ddd6bf168755666ec02
CRs-Fixed: 774533
2020-06-05 00:48:29 -07:00
Rakesh Pillai
7da05db9f2 qcacld-3.0: Add different PLD vote for latency sensitive case
Any connection in 11g/a is very latency sensitive and
we need to vote for a higher DDR frequency than in
the other phy modes.

Identify the number of latency sensitive connections
in STA mode and vote for higher DDR frequency for the
latency sensitive cases.

Change-Id: I2ce20b2b40213bde52211eae659c9673c6e0d305
CRs-fixed: 2695045
2020-06-05 00:48:28 -07:00
Subrat Dash
f9d6d9d65e qcacld-3.0: Handle EDCA tx queue confguration from hostapd
The hostapd sends the EDCA configuration for tx queue set in the
hostapd.conf config file using nl80211 interface.

Add support to extract the configuratin in the cfg80211 callback
function wlan_hdd_set_txq_params and invoke SME api to send the
parameters to MAC layer.

CRs-Fixed: 2693865
Change-Id: I8acfc03d9a6ad17a1df0c03955cf3b4150a4fbef
2020-06-05 00:48:24 -07:00
nshrivas
5e0867d027 Release 5.2.0.189A
Release 5.2.0.189A

Change-Id: I4be946b012e54173a8608f1e6bb3bdeeb6ca4ce7
CRs-Fixed: 774533
2020-06-04 23:22:48 -07:00
Srinivas Dasari
6f6a3e666d qcacld-3.0: Use NLA_EXACT_LEN instead of NLA_UNSPEC in new kernels
The change If6d559a3aa7b8719a515e00e271e313c02f8135f has modified
few attribute types from NLA_UNSPEC to NLA_BINARY. But NLA_BINARY
validates only for max length and doesn't validate min length.
This could cause buffer overread if userspace sends less data as
the driver reads fixed length(e.g. 6 bytes for mac_addr) always.
Use VENDOR_NLA_POLICY_MAC_ADDR(NLA_POLICY_ETH_ADDR) or
NLA_EXACT_LEN instead of NLA_UNSPEC which validates for
exact length.

Change-Id: I92cc29716dff29037d14ffd2e269761149c7f74b
CRs-Fixed: 2700695
2020-06-04 23:22:48 -07:00
nshrivas
61547b7304 Release 5.2.0.189
Release 5.2.0.189

Change-Id: I13f367eca0587fdc5f5c8b3a34dd7ebb60f853d7
CRs-Fixed: 774533
2020-06-04 21:56:56 -07:00
Sourav Mohapatra
6c984e5800 qcacld-3.0: Flush psoc idle work during WIFI on/off
Currently in the driver there is a possible race condition between
hdd_open and idle_psoc_timeout wherein stop modules is being done. Both
these operations can potentially occur in parallel.

To synchronize, flush the idle_psoc_work in wlan_hdd_state_ctrl_param_write
which is called during WiFi ON/OFF.

Change-Id: I1d53fa9d53ca31c2c1466f0ee809a07a86a06ee0
CRs-Fixed: 2701512
2020-06-04 21:56:55 -07:00
nshrivas
6451b2dc39 Release 5.2.0.188Z
Release 5.2.0.188Z

Change-Id: I26a3f51cea3a8acfbacafc173fa7cc3ce3836e8b
CRs-Fixed: 774533
2020-06-04 05:30:58 -07:00
sheenam monga
0ec49a71f7 qcacld-3.0: Handle attribute OEM_DATA_RESPONSE_EXPECTED
Add support for OEM_DATA_RESPONSE_EXPECTED. Driver waits for the
response from FW when this attribute is set and forward the blob of
data to supplicant.

Change-Id: I3e51809e4f5736b521c26e37afb02396f9c5ed23
CRs-Fixed: 2694556
2020-06-04 05:30:58 -07:00
nshrivas
7f4a948144 Release 5.2.0.188Y
Release 5.2.0.188Y

Change-Id: I0bdbbcc3814e682b736bfb509f81b6c854022b19
CRs-Fixed: 774533
2020-06-04 02:46:34 -07:00
Bapiraju Alla
bfacaa2d0d qcacld-3.0: Update regulatory band capability with FW capability
Update band capability of regulatory component with firmware band
capability

Change-Id: I9916b17dfa279ebecc0f459d4c0b13580578b4b6
CRs-Fixed: 2689885
2020-06-04 02:46:34 -07:00
nshrivas
e77a0364f7 Release 5.2.0.188X
Release 5.2.0.188X

Change-Id: I97cc0ebf92c4c54891e826dd00df11fc07bfd9f4
CRs-Fixed: 774533
2020-06-03 13:33:25 -07:00
Rakesh Pillai
79098d2cc9 qcacld-3.0: Add INI support to handle latency critical clients
Add a new ini to enable/disable the handling of the
latency critical clients (eg: 11g/a) in the bus
bandwidth timer.

Change-Id: I4b8966aa29ffc2ca236098cb83b8db0e160b776b
CRs-Fixed: 2695042
2020-06-03 13:33:25 -07:00
nshrivas
2a48eadd2d Release 5.2.0.188W
Release 5.2.0.188W

Change-Id: I7272c9ed00e833964558190aad9b75ab0f3a9801
CRs-Fixed: 774533
2020-06-03 09:27:40 -07:00
Min Liu
50ac9a47d4 qcacld-3.0: QCA vendor command for add / delete TSPEC
Add QCA vendor subcommands QCA_NL80211_VENDOR_SUBCMD_CONFIG_TSPEC
to add / delete TSPEC in STA mode.
The attributes defined in enum qca_wlan_vendor_attr_config_tspec
are used to encapsulate required information.

Change-Id: I9553fba1189d562f6f0205e86b281172213344ba
CRs-Fixed: 2686250
2020-06-03 09:27:39 -07:00
Min Liu
faed961a98 qcacld-3.0: Set Wi-Fi configurations - TX AMSDU, RX AMSDU
Add attributes in SET(GET)_WIFI_CONFIGURATION to dynamically
configure capabilities - TX AMSDU, RX AMSDU.

Change-Id: I17d3c5d32987e638805cdaf5fe48ba3036b3ff22
CRs-Fixed: 2687303
2020-06-03 09:27:36 -07:00
nshrivas
3fa762de92 Release 5.2.0.188V
Release 5.2.0.188V

Change-Id: I0a09bac7a064e12a796e73e407d5b51f15c239bb
CRs-Fixed: 774533
2020-06-03 08:08:03 -07:00
Gururaj Pandurangi
7fe6ad582f qcacld-3.0: Validate mac_ctx before using it
Validate mac_ctx before dereferencing it.

Change-Id: Iba786647c5a54e0a67ff7b9cbb0dbaea3bd52d76
CRs-Fixed: 2699734
2020-06-03 08:08:03 -07:00
nshrivas
f63fa412aa Release 5.2.0.188U
Release 5.2.0.188U

Change-Id: Ifff9fa4c2f699bab1f98093eabefe4e2a4ea8738
CRs-Fixed: 774533
2020-06-03 00:45:36 -07:00
Rajesh Chauhan
b4a3dddcc6 Revert "qcacld-3.0: flush batched GRO_NORMAL packets"
This reverts Change-Id: Ib3e851c0822a85c4712a1b817cc19dfecf6d0e7a.
First we need to get ABI snapshot/Whitelist updated for the new
kernel API being used in this change and then only we can promote
this change. To unblock promotion, revert this change for now.

Change-Id: I8aae0fe64623034486c9db6275a16654119c06bd
CRs-Fixed: 2673959
2020-06-03 00:45:36 -07:00
Lincoln Tran
e8fee5584c Revert "qcacld-3.0: Update hdd_data_stall_process_event"
This reverts Change-Id: Id4d2eaaa2262d7fe2dd6241ae4581a3d0cb09805.

This change is incorrect because the caller passes in the
bodyptr directly to parameter. The change incorrectly dereferences
the parameter.

Change-Id: Iaaedae1a3498fc1c10024083ee98ce97c3401f82
CRs-fixed: 2701124
2020-06-03 00:45:32 -07:00
nshrivas
265fe56111 Release 5.2.0.188T
Release 5.2.0.188T

Change-Id: I17e49cff361a42cd32b6db83fd18a39ffd243f92
CRs-Fixed: 774533
2020-06-02 15:19:13 -07:00
ngong
9d23242e68 qcacld-3.0: Check gIPAConfig before setting ipa flag to fw
Currently if kernel enable CONFIG_IPA3, wlan driver will directly
send IPA enabling flag to firmware, not checking gIPAConfig.
It lead to IPA disabled in driver but enabled in fw, causing fw crash
for some target like Genoa. 

Correct logic is to check gIPAConfig before configure firmware.

Change-Id: I6e85c6bf3831029826bf279237eac2cc3a1ff07f
CRs-Fixed: 2698953
2020-06-02 15:19:13 -07:00
nshrivas
e9d4b3c893 Release 5.2.0.188S
Release 5.2.0.188S

Change-Id: Ib87aa2b4bb32a182bd8381c23222c11713c173de
CRs-Fixed: 774533
2020-06-02 13:33:01 -07:00
Jinwei Chen
d3f4ccf4d6 qcacld-3.0: add vdev->osif_rx failure handling for fisa path
Currently there is no vdev->osif_rx result check in fisa path,
so if vdev->osif_rx returns failure, the RX skb may not have been
handled and it may be leaked.

Add vdev->osif_rx failure handling to avoid skb leak.

Change-Id: I6c194c31bbe71cba5c56c2b93f505225de439b72
CRs-Fixed: 2695084
2020-06-02 13:33:01 -07:00