Commit Graph

9842 Commits

Author SHA1 Message Date
nshrivas
94c7ac7e10 Release 5.2.0.74H
Release 5.2.0.74H

Change-Id: I851aaf71b11548449bbb260855c90aff10856233
CRs-Fixed: 774533
2018-04-18 22:03:29 -07:00
jiad
80055eb33c qcacld-3.0: Add frag_header to support pre-wdi2.0 platform
wdi2.0 feature adds extra 2 bytes to frag_header and thus hdr_len
to IPA HW also adds 2 bytes. This change breaks pre-wdi2.0 platform
with WiFi FW discarding all TX traffic since packet payload is
with an extra 2-byte offset.

Fix is to add frag_header structure with pre-wdi2.0 pattern.

Change-Id: I467a05bab4111a305ae23250c61cecc050821611
CRs-Fixed: 2047714
2018-04-18 22:03:28 -07:00
nshrivas
00e328c7e9 Release 5.2.0.74G
Release 5.2.0.74G

Change-Id: I9ed5f072b59d5ec0a65af1178e5c5bac4114fc50
CRs-Fixed: 774533
2018-04-18 18:39:02 -07:00
Abhinav Kumar
271f063980 qcacld-3.0: Add new ini to enable/disable FT open feature
Add new ini item "enable_ftopen" to enable/disable FT open
feature. There is no ini currently to disable only FT open.

Change-Id: I18280d9de77857b15698eb233ba4ec71089beb06
CRs-Fixed: 2214766
2018-04-18 18:38:54 -07:00
Abhinav Kumar
bd9a47e43d qcacld-3.0: Send appropriate value of Tx power in TPC report
TPC IE, transmit power value reports zero in beacon when operating
as P2P-GO or SAP.

Fix is to populate appropriate value of tx power in TPC report.

Change-Id: Iae52d7bb6a94d167a6bc6f981d62be6f7c12e0c1
CRs-Fixed: 2224187
2018-04-18 18:38:50 -07:00
Pragaspathi Thilagaraj
d9888ce77f qcacld-3.0: Fix OOB write in wma_unified_debug_print_event_handler
The routine wma_unified_debug_print_event_handler logs the data from debug
print event handler. The param event data from firmware is copied to a
destination buffer .If the maximum size of the data exceeds or equals
BIG_ENDIAN_MAX_DEBUG_BUF for big endian hosts then possible OOB write will
occur in wma_unified_debug_print_event_handler. For other hosts, OOB read
could occur if datalen exceeds maximum firmware message size
WMI_SVC_MAX_SIZE.

Add check to validate datalen doesnot exceed the maximum firmware msg size
WMI_SVC_MAX_SIZE. Return failure if it exceeds.
Add check to ensure datalen doesnot exceed or equal the maximum buffer
length value for big endian hosts BIG_ENDIAN_MAX_DEBUG_BUF.
Add null termination at the end of the data recieved from the firmware.

Change-Id: Ibb662cb8e17ef8be8b7591308c422a78b71e331a
CRs-Fixed: 2222533
2018-04-18 18:38:48 -07:00
Nirav Shah
fb79af826c qcacld-3.0: Do not compile pld_pcie file for non-pci case
Do not compile pld_pcie file for non-pci
attach.

Change-Id: Ic32074960137e055f991de134a9720e2b81a642c
CRs-Fixed: 2213301
2018-04-18 18:38:46 -07:00
Jeff Johnson
55435343c8 qcacld-3.0: Remove 2nd WLAN_FEATURE_RX_FULL_REORDER_OL macro
Change "qcacld-3.0: Remove unused WLAN_FEATURE_RX_FULL_REORDER_OL
macro" (Change-Id I72e770874150cbac69e8efbb9e5dd7027a2e8869) removed
one reference to macro WLAN_FEATURE_RX_FULL_REORDER_OL but left one,
so now remove that one as well.

Change-Id: I64d4042b8f129cb6ef85057652cbf5c244891b8d
CRs-Fixed: 2226541
2018-04-18 18:38:44 -07:00
Nirav Shah
e6c8e64600 qcacld-3.0: Fix to set start/stop threshold from ini
Fix to set start/stop threshold value from ini
for flow control for LL.

Change-Id: Id77e47ea959dfce02cea8b4af648b07b12bb5cdc
CRs-Fixed: 2213290
2018-04-18 18:38:40 -07:00
Min Liu
46ef0bf334 qcacld-3.0: Do not wait for peer deletion for SSR
When SSR is in progress, WMI commands for peer and vdev deletion
will not be sent to FW. Do not wait for peer deletion for it will
always lead to timeout since peer delete command will not be sent.
And the check is not needed since vdev delete command will not be
sent, either.

Change-Id: Ib6f921a7c7ff09bf30ed19b443a30542db2b51a3
CRs-Fixed: 2217366
2018-04-18 18:38:33 -07:00
Jeff Johnson
ee86984027 qcacld-3.0: Use KBUILD_CPPFLAGS for conditional flags
The refactored Kbuild has introduced build errors when the driver is
built using LLVM. The primary issue is that the pre-processing stage
introduces many checks that are not present when using GCC. To avoid
these issue include the conditional compilation macros in the
pre-processing stage.

Change-Id: I9b4a5b41523ae6e3055b4b9ae021322acade8a5f
CRs-Fixed: 2226196
2018-04-18 18:38:29 -07:00
Jeff Johnson
3d46351ccd qcacld-3.0: Remove obsolete SoftAP VSTA feature code
The SoftAP VSTA feature was introduced to overcome a limitation in a
prior version of WLAN hardware. Since the WLAN hardware supported by
this driver does not have this limitation, remove the feature code.

Change-Id: I1f2fe31b294fb7b2da1fa8619b3380412c5d872e
CRs-Fixed: 2224817
2018-04-18 18:38:24 -07:00
Yun Park
a9d0c11298 qcacld-3.0: Send AP_DISCONNECT event after all clients disconnected
There could be an abnormal situation occurs in IPA pipes suspend
process if HDD_IPA_AP_DISCONNECT event sent while WDI pipes are still
active.
Fix to send HDD_IPA_AP_DISCONNECT after all clients disconnected.

Change-Id: I7ad757834ec22384d07236363d135009a9710bee
CRs-Fixed: 2192239
2018-04-18 18:38:21 -07:00
Jeff Johnson
5820cb2b40 qcacld-3.0: Kbuild: Remove CONFIG_WLAN_RX_HASH
Change "qcacmn: Propagate config parameters to datapath" (Change-Id
Icbdc835a51a6fea87c06174e9fc63d5d007aec1d in qca-wifi-host-cmn)
removed the only reference to macro WLAN_RX_HASH, so remove the macro
along with the controlling config item.

Change-Id: I2aab4184939f99b4966b2106ff4ca7666022ccbb
CRs-Fixed: 2224816
2018-04-18 18:38:16 -07:00
Jeff Johnson
df5d779c08 qcacld-3.0: Better featurize the SSR injection debug code
The driver supports a "SSR injection" feature that is used during
testing to validate certain recovery features. Currently this feature
is protected by a generic WLAN_DEBUG feature flag, and in addition
there are two separate debug ioctl handlers which have duplicate
code. In order to better support a finer level of configurability
introduce a new configuration flag and consolidate to a single
implementation of the feature under that flag.

Change-Id: I73e8dd4580ca53d129ae0181ffc46d011699f3dc
CRs-Fixed: 2224815
2018-04-18 18:38:11 -07:00
Jeff Johnson
810f3aed05 qcacld-3.0: Kbuild: Remove obsolete PELOG enablement
Change "qcacld-3.0: Remove obsolete PELOG* logging macros" (Change-Id
I018088db456871ed46c60957c4ef5d5af85d0457) removed some obsolete
macros. Now remove the Kbuild support that previously enabled those
macros.

Change-Id: Ie359440c725f614ea109fe95d90a43dd279ea8a9
CRs-Fixed: 2224814
2018-04-18 18:38:06 -07:00
nshrivas
ff2d5772db Release 5.2.0.74F
Release 5.2.0.74F

Change-Id: Ic244e2d42559d01bc953895a4ae804494ac1e034
CRs-Fixed: 774533
2018-04-17 13:17:41 -07:00
Manjunathappa Prakash
ae7494872c qcacld-3.0: Create flow control pools on vdev start
As many as 5 vdevs can be created, which is defined by MAX_SME_SESSIONS.
But flow control pools are only valid for active TxRx capable vdevs.
Which is 3 active vdev starts. So attach flow pool creation to vdev_start
instead of vdev_attach.

Change-Id: I137676ba618aa3a6684c7d17ef7d9263c4df6efe
CRs-Fixed: 2179220
2018-04-17 13:17:40 -07:00
nshrivas
490facc39a Release 5.2.0.74E
Release 5.2.0.74E

Change-Id: I67e2bb48b079d29b74eecf5277c0ea2d381814ae
CRs-Fixed: 774533
2018-04-17 11:07:50 -07:00
Kiran Kumar Lokere
bfc1b40f83 Revert "qcacld-3.0: Set BA buffer size default value to 63"
This reverts Change-Id: I48ffbcfb81d3fdf365907d2bf8eafab6fd15c701.

Change-Id: I45b2b10cb98c70264291c183d55a12d35912c966
CRs-Fixed: 2225515
2018-04-17 11:07:50 -07:00
nshrivas
937a5e1d25 Release 5.2.0.74D
Release 5.2.0.74D

Change-Id: I3dfbdb3d47d74854b1c031b5aff3e9803aed0ead
CRs-Fixed: 774533
2018-04-16 22:59:57 -07:00
Will Huang
36049720ff qcacld-3.0: Move qdf_cancel_delayed_work to __hdd_module_exit
If hdd_wlan_stop_modules is called by hdd_iface_change_callback which
is invoke by a delayed worker, and a race condition happen that rmmod
call in during hdd_wlan_stop_modules, although cnss driver will
serialize wlan remove with the wlan shutdown invoked by delayed worker,
CNSS_DRIVER_UNLOADING still got set and wlan shutdown will invoke remove
wlan, which will try to sync cancel delayed worker and wait for each
other to deadlock.

If move qdf_cancel_delayed_work() from hdd_wlan_exit() to
__hdd_module_exit(), it will flush/wait in a different context of cnss
driver worker, so avoid deadlock hit.

Change-Id: I6bc58e8ae70291d5490560310e90abc52421b59f
CRs-Fixed: 2222381
2018-04-16 22:59:56 -07:00
Jeff Johnson
f31bb21acc qcacld-3.0: Kbuild: Define CONFIG_CHNL_MATRIX_RESTRICTION
Currently the switch -DWLAN_ENABLE_CHNL_MATRIX_RESTRICTION is inferred
by examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_CHNL_MATRIX_RESTRICTION
configuration parameter.

Change-Id: I337d026ac0651e729d899058ee0e9d7e8256f018
CRs-Fixed: 2224813
2018-04-16 22:59:53 -07:00
Jeff Johnson
7bfd46ea5c qcacld-3.0: Kbuild: Define CONFIG_TUFELLO_DUAL_FW_SUPPORT
Currently the switch -DCONFIG_TUFELLO_DUAL_FW_SUPPORT is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create an explicit CONFIG_TUFELLO_DUAL_FW_SUPPORT
configuration parameter.

Change-Id: Id72259449c16aa81413c24a57cb1085110ff0223
CRs-Fixed: 2224812
2018-04-16 22:59:50 -07:00
Jeff Johnson
b3e1bd11fc qcacld-3.0: Kbuild: Define CONFIG_CHANNEL_HOPPING_ALL_BANDS
Currently the switch -DCHANNEL_HOPPING_ALL_BANDS is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_CHANNEL_HOPPING_ALL_BANDS
configuration parameter.

Change-Id: Icc9aef38445cdcd9269210b578b1e1be2fe18ac9
CRs-Fixed: 2224811
2018-04-16 22:59:46 -07:00
Jeff Johnson
ec273f3f2e qcacld-3.0: Kbuild: Define CONFIG_WLAN_LOGGING_SOCK_SVC
Currently the switch -DWLAN_LOGGING_SOCK_SVC_ENABLE is inferred by
examining a seemingly unrelated configuration option. In order to
clearly separate setting the configuration from applying the
configuration create a new CONFIG_WLAN_LOGGING_SOCK_SVC configuration
parameter.

Change-Id: Ic542512e3440453ef9f320297cf18f73f92fb2e3
CRs-Fixed: 2224810
2018-04-16 22:59:43 -07:00
nshrivas
5c0788318d Release 5.2.0.74C
Release 5.2.0.74C

Change-Id: I840ada04fc1f9a85fb9c5e346f114fbff11a41b6
CRs-Fixed: 774533
2018-04-16 20:26:19 -07:00
Jeff Johnson
e16768476a qcacld-3.0: Kbuild: Cleanly featurize legacy WiFi positioning
Define a separate configuration option for legacy WiFi positioning and
use that option to set the associated ccflags macro.

Change-Id: I43cc04b3730687bf6298c66af7c42a9d6d9db80c
CRs-Fixed: 2224809
2018-04-16 20:26:19 -07:00
Jeff Johnson
772fdfa966 qcacld-3.0: Kbuild: Cleanly featurize Lithium flags
Define separate configuration options for the various Lithium
features and use those options to set the associated ccflags macros.

Change-Id: I08fee39c76963b102611b134346fe5edc95a0835
CRs-Fixed: 2224808
2018-04-16 20:26:15 -07:00
Jeff Johnson
23fc95216a qcacld-3.0: Kbuild: Cleanly featurize Helium flags
Define separate configuration options for the various Helium
features and use those options to set the associated ccflags macros.

Change-Id: Ia221aa3690ecbe37ac6568fa54876c77e338e2f6
CRs-Fixed: 2224807
2018-04-16 20:26:12 -07:00
Jeff Johnson
5b306f4696 qcacld-3.0: Kbuild: Cleanly featurize Adrastea flags
Define separate configuration options for the various Adrastea
features and use those options to set the associated ccflags macros.

Change-Id: Ie418140dd21038ee3fd6eb3ecfd5d031bf1432ed
CRs-Fixed: 2224806
2018-04-16 20:26:08 -07:00
nshrivas
cdb654af77 Release 5.2.0.74B
Release 5.2.0.74B

Change-Id: I27fcefec2f84e0d62cbdbdbdd6c0d5d2706f20eb
CRs-Fixed: 774533
2018-04-16 18:08:50 -07:00
Kiran Kumar Lokere
05e9a65b55 qcacld-3.0: Add support to configure PPDU duration to FW
Add user configuration support for setting PPDU duration to FW

Change-Id: I3756252d89ab7356aa1e1df1e7005e82346580b3
CRs-Fixed: 2207446
2018-04-16 18:08:49 -07:00
nshrivas
c497b274fa Release 5.2.0.74A
Release 5.2.0.74A

Change-Id: I3394e19371919ac860b6bc84b4bea00bc471d93d
CRs-Fixed: 774533
2018-04-16 16:56:51 -07:00
Abhinav Kumar
a083f21918 qcacld-3.0: Add new ini to set delay Hand-off period
Add new ini item "ho_delay_for_rx" to set delay Hand-off
period. For LFR 3.0 roaming scenario, once roam candidate
is found, firmware waits for minimum this much duration
to receive pending rx frames from current BSS before
switching to new channel for handoff to new AP.

Change-Id: Ided9a81e9402259f5df6b42926b3fa336b6bb4d0
CRs-Fixed: 2221748
2018-04-16 16:56:50 -07:00
Kabilan Kannan
fc3a8c0631 qcacld-3.0: Block WMI cmds before issuing HTC stop
WMI cmds should be blocked, before calling HTC stop
to avoid the race condition in the system

Change-Id: I677c55cd96ea6af973595eec1e759641fbea109a
CRs-Fixed: 2193653
2018-04-16 16:56:47 -07:00
Jeff Johnson
2095d16daa qcacld-3.0: Kbuild: Cleanly featurize legacy TX flow control
Define a separate configuration option for legacy TX flow control and
use that option to set the associated ccflags macro.

Change-Id: Id14ac79280d3bf809c1e85bde4d5c7037a3ea766
CRs-Fixed: 2224629
2018-04-16 16:56:43 -07:00
Bala Venkatesh
82914ad371 qcacld-3.0: Remove DFS channels from scan list in case of MCC disallow
ACS in 5G channels for STA connected in 5G non DFS channel can result
SAP starting on DFS channel. Making MCC on DFS channel. This is
leading to FW panic if STA tries to roam during SAP is
detecting radar.

Avoid SAP starting on DFS channel if STA connected on 5G non DFS

Remove DFS channels from scan list before acs, if MCC is disllowed.
So, that DFS channel is not selectecd after acs.

Change-Id: I717309b81934852bfd93146b233db6f7fb03f252
CRs-Fixed: 2215332
2018-04-16 16:56:40 -07:00
Bala Venkatesh
f13b72897b qcacld-3.0: Check for SAP restart after channel switch
Race condition in STA connection and Channel switch of
Softap can result in MCC for STA+SAP scenario. Even
though Force SCC is enabled.

As part of STA connection in association handler SAP
restart is checked. If Channel Switch for SAP interface
is in progress at the same time. Then depending on SAP
Channel MCC can be resulted.
Check for SAP restart in the function hdd_hostapd_sap_event_cb.

Change-Id: Ic4ba8790d604f184eb8030e4fe06c5e76f9a62bd
CRs-Fixed: 2205482
2018-04-16 16:56:37 -07:00
nshrivas
514bd44116 Release 5.2.0.74
Release 5.2.0.74

Change-Id: Ic3ce8b26a2804c806c7a7dbc4671176e2252300e
CRs-Fixed: 774533
2018-04-16 15:16:16 -07:00
Abhinav Kumar
b638b5daee qcacld-3.0: Fix to allow ACS scan in dual band SAP mode
Currently, Logic to reject concurrent ACS scan is present
in Hdd context and variables for this context is common for
both softaps(softap1 and softap2). Due to this in case of dual
band SAP mode, if an ACS scan is in progress for softap1 then
driver rejects any ACS scan on softap2, which is not acceptable.
Fix is to move logic to reject concurrent ACS scan from
hdd context to adapter context.

Change-Id: I9d2b437523ef6ac5794e7952ac6cd35d1c2f778b
CRs-Fixed: 2206499
2018-04-16 15:16:16 -07:00
Himanshu Agarwal
3022b30e99 qcacld-3.0: Support BAND_ALL in case of ICM from HOST driver side
Whenever hw_mode=any is set in hostapd.conf, BAND_ALL is sent to
HOST driver from hostapd. ICM module doesn't support BAND_ALL
and so HOST driver internally changes the band to BAND_2G or BAND_5G
based on acs_freq_band and update the channel list and ch_width
accordingly.

ICM module supports BAND_ALL now so don't do any optimization on
band in HOST driver.

Change-Id: Ia0b554f72ba0d5063ff622edbe1fa7113b984142
CRs-Fixed: 2224675
2018-04-16 15:16:12 -07:00
nshrivas
90fd2034db Release 5.2.0.73Z
Release 5.2.0.73Z

Change-Id: I3e951004ebbc7012cfc96c05b718f78acdbcccf3
CRs-Fixed: 774533
2018-04-16 10:35:38 -07:00
Jeff Johnson
69ba6d082f qcacld-3.0: Kbuild: Set ccflags directly based on config item
Currently there are many cases where ccflags-y is set by logic:
 ifeq ($(CONFIG_FOO), y)
 ccflags-y += -DENABLE_FOO
 endif

In order to align with Linux style reduce such simple cases to:
 ccflags-$(CONFIG_FOO) += -DENABLE_FOO

Change-Id: Ibe700701d25c3a2944fa2f2eabf528b04b59bbdd
CRs-Fixed: 2223862
2018-04-16 10:35:37 -07:00
Jeff Johnson
b4e2d82f45 qcacld-3.0: Kbuild: Replace CDEFINES with ccflags-y
In order to more closely comply with Linux look and feel replace the
temporary variable CDEFINES with direct use of ccflags-y.

Change-Id: I801e61644f583ea213c9d699b318d328ae4ba1c2
CRs-Fixed: 2223861
2018-04-16 10:35:34 -07:00
Jeff Johnson
a63a9b6f96 qcacld-3.0: Kbuild: Create config items for "always on" switches
In preparation for fully file-driven configuration create config
items for (almost) all -D switches which are currently being set
unconditionally.

Change-Id: I067b13e11c9cdf3a0355c2e64ab3770088118afa
CRs-Fixed: 2223860
2018-04-16 10:35:30 -07:00
nshrivas
0bf398ab02 Release 5.2.0.73Y
Release 5.2.0.73Y

Change-Id: I122474e0b2d9f8f398a2bc9c970fdaa26be81ce5
CRs-Fixed: 774533
2018-04-16 08:48:00 -07:00
Liangwei Dong
8193551a89 qcacld-3.0: Fix get WLM setting failed
Add WLM setting to "csr_get_config_param"
to avoid the setting lost when set back by
csr_change_default_config_param.

Change-Id: I539a4a87f55365c701a7149784e92c60fb6c5383
CRs-Fixed: 2223340
2018-04-16 08:48:00 -07:00
nshrivas
d13634a800 Release 5.2.0.73X
Release 5.2.0.73X

Change-Id: I7b8ed8d223453bbcff4fd4932c72def9556c317e
CRs-Fixed: 774533
2018-04-16 05:50:20 -07:00
Pragaspathi Thilagaraj
71596f796d Revert "qcacld-3.0: Fix OOB write in wma_unified_debug_print_event_handler"
The change for the CR 2211133 caused compilation issue in LE
branches. This reverts commit with
change Id-I45943ae76d8fcf7b53e1f064c462d01cd6d00dcf

Change-Id: I069f1a4ae8ad320f5a073ee072dd772e05c5fc5d
CRs-Fixed: 2222536
2018-04-16 05:50:19 -07:00