While resetting connection information, sta id is set to 0,
which is a valid value, leading sta id to hold a valid data
though connection information is reset.
While resetting connection information, set sta id with
HDD_WLAN_INVALID_STA_ID(0xFF) to make sure sta id holds invalid
data.
Change-Id: I7d438f323959a5fb6d3a232a88a8f2ca3c0e0c56
CRs-Fixed: 2040296
Replace the channel avoid event data structure with the one defined in
regulatory module, remove the HDD callback as regulatory module is
consuming the FW event now, add logic to notify user space of channel
avoid event.
Change-Id: I6b1b986837ab89503a7e0469619193b0af8127da
CRs-Fixed: 2080241
Hold wake lock in driver for SAP client disconnect notification to
user space inorder to avoid hostapd and driver going out of sync.
Change-Id: If81cf836b8fc047731735aa28831d1efa2f4e7b2
CRs-Fixed: 2084282
To resolve one of IOT issues, introduce INI called
"disable_high_ht_mcs_2x2" which will disable high MCS indices for
2G STA case based on INI value.
Change-Id: I60c5edd89a42f74c0f439fe6a9ab0c75373622b2
CRs-Fixed: 2087438
Presently, Host fails to report valid actual link speed
(gReportMaxLinkSpeed=0) to the upper layer when firmware
reports legacy link speeds as Host fails to update legacy
bit in rate flags, reported to upper layer.
To mitigate this issue report rate flags with legacy bit set
on receiving valid rates from firmware and if MCS index is
invalid, as WMA fails to set valid MCS index for legacy rates.
Change-Id: I0a542e8aa56eb18e653aad30c1bec13f133d267c
CRs-Fixed: 2089469
In LTE Coex test, firmware will report the unsafe channels, and if sap
runs on these channels, driver goes through channel select process and
restart. There are some situation, in channel select process, SAP can't
find the proper PCL channel lists, and fail to restart.
This fix is to let SAP continue to pick up a safe channel from ACS
range when fail to get pcl.
Change-Id: I54145547d2b161aec09caa2dabd4d4b52aa15f03
CRs-Fixed: 2064534
For fatal events , driver sends EVENT_WLAN_LOG_COMPLETE
to userspace. But there can be multiple events for each
ring id like connectivity, driver , frimware, wakelock etc.
Cnss diag has to trigger copy of pkt log to /sdcard only for
one bug report, so send ring id in log complete event so
that it can trigger copy for driver ring id.
Change-Id: I0776775ab81fd2920ea440b773b146b6af61e434
CRs-Fixed: 2028068
While processing of frames received before peer is registered in process
context, tcp_v4_rcv() is called which takes a spinlock and in between the
processing before spinlock can be released, it is getting preempted by
hif_napi_poll() as it gets executed in softirq context. It tries to take
the same spinlock in tcp_v4_rcv() resulting in deadlock.
Do netif_rx_ni() for frames received before peer is registered.
Change-Id: I6228984f209bb9312ed9d8f3937d6036918ff750
CRs-Fixed: 2034244
With TDLS enabled and CONVERGED_TDLS_ENABLE defined, wlan_hdd_tdls_init()
will be bypassed by tdls_umac_comp_active flag.
While, in wlan_hdd_tdls_exit(), similar check missed, which causes
uninitialized delay_work be flushed. This leads to final crash.
Check tdls_umac_comp_active flag in begining of wlan_hdd_tdls_exit()
to avoid crash.
CRs-Fixed: 2087653
Change-Id: I0d9458683f092456e54ccf42988d4f8534922947
qcacld-2.0 to qcacld-3.0 propagation
Add ini option to enable/disable action frame based channel switch.
Change-Id: I340464a18ef0b5cf09f481a23b01edcf04904e34
CRs-Fixed: 2082563
Constant value 4294967295 is recognized as an signed integer
in ISO C90. Change the definition of the constant value to
4294967295UL to fix compilation error where need a unsigned
value as a input parameter.
Change-Id: I02f67b6351c53b5e3331ce668059c4c61953a8d3
CRs-Fixed: 2023140
When doing HDD context check in ipa_init, the CDS is not yet
loaded. So remove the CDS loading check in ipa_init.
Change-Id: I45843c406f280cfbf932bc489f9051c2300b77ba
CRs-Fixed: 2070428
In MCC case when vdev pause queue is full, driver fails to tx and pkts
are dropped. ipa tx_desc only replenishes to ipa driver. This leads to
holes in hdd_ipa_tx_desc free list and list will be drained out causing
unexpected packet drops.
Fix is to replenish tx_desc to wlan driver maintained free list as well
using ipa registered skb free callback.
Change-Id: I1ae8570816efd822d5ced2c6383a03c56b12ec89
CRs-Fixed: 2073444
Add interface information when sending P2P listen offload stop
event to upper layer so that the event can be processed on the
correct interface.
Change-Id: I7aac52552e9277aff838d9bfef01201af48773c9
CRs-fixed: 2088732
If TDLS disabled at the build level, it triggers
build failures in some of the projects, which does
not support TDLS feature.
Restructure the TDLS function to avoid build
failures, when TDLS is not enabled.
Change-Id: I3b63546f22d0187fb42d400fd7e15ff7a3d64653
CRs-Fixed: 2056022
Move the log messages to appropriate log levels so that
the console does not get a huge spam of unnecessary logs
Change-Id: I8e140039a3a483953606558e102db23ab8b0096a
CRs-Fixed: 2043741
Change the log level from ERROR to INFO
for hdd_rx_packet_cbk log to prevent
packet information from flooding on the
kmsg.
Change-Id: I27bfcc708740f50c4b15d72b89176af2ce27f6fa
CRs-Fixed: 2082577
Currently there is no support to configure SMPS parameter
from host, add support to configure SMPS parameters using ini.
Change-Id: I6f8273ffed39a0b95c31f1647e86406b870165f2
CRs-Fixed: 2080571
CFG80211_REMOVE_IEEE80211_BACKPORT is added to indicate
backport of Change-Id: 57fbcce37b
from upstream 4.7 kernel to 4.4.
Hence add this flag CFG80211_REMOVE_IEEE80211_BACKPORT to
support this compilation. Also introduce HDD_NUM_NL80211_BANDS.
Change-Id: I60a15a1273f939a0a288d08d03ccb5bf1bdcc429
CRs-Fixed: 2087917
logical not is only applied to the left hand side of this
bitwise operator [-Werror,-Wlogical-not-parentheses]
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^ ~
csr_api_roam.c:14617:6: note: add parentheses after the '!' to
evaluate the bitwise operator first
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^
( )
csr_api_roam.c:14617:6: note: add parentheses around left hand
side expression to silence this warning
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^
( )
Change-Id: I489eba6a6265778346bb3b20832f92774a2d5e0e
CRs-Fixed: 2087302
Returning a negative value from the API results in the failure
on unsupported platform.
CRs-Fixed: 2082239
Change-Id: I75b14b81eaa00d53784a6deb90b99666e28b164d
MBO ies sent in tail buffer of beacon params
structure are not sent in beacon template to
firmware.
Fix is to add MBO ies in beacon template sent to fw
Change-Id: I3987bd431f9a21218650499afa16eac2b59e6486
CRs-Fixed: 2087752
In STA+AP concurrency case, driver fails to receive PNO STOP
indication from the upperlayer and thereby driver fails to send
same indication to FW, leading to a FW crash.
To mitigate this issue, during STA session close, issue PNO
stop indication to FW, if PNO is in progress.
Change-Id: If30e631fc5e8151cd5ecc66ff1d48627123a0a1e
CRs-Fixed: 2059793
Add support for indicating the new unified roam event
"cfg80211_roamed" which takes a structure to give roam information
to cfg80211.
Change-Id: I71769666e2112e0f443cb36d7db03cb7bdbaf1f2
CRs-Fixed: 2084891
The default value for the ini gdbs_scan_selection is set
with 2 DBS and 2 non-DBS Scan for Module id WLAN_MODULE_
ROAM (5) and WLAN_MODULE_HOST (16). Thus, the scan policy
for full scan is kept getting change for DBS scan and
legacy scan.
This change is to make the default value for the ini
gdbs_scan_selection as NULL, thus disabling the DBS scan
duty cycle feature by default.
Change-Id: I8dd304628b729e11a63aaa2b6dea972cff1798d7
CRs-Fixed: 2062420
Explicitly convert nl80211_chan_width to phy_ch_width in function
__wlan_hdd_cfg80211_set_mon_ch.
Change-Id: I3a35a417b1155db430d6f06444b42664365b02db
CRs-Fixed: 2071677
Replace sme_tspec_dir_type and sme_QosWmmDirType with sme_qos_wmm_dir_type
to avoid implicit conversion warnings/errors and to conform with linux coding
guidelines.
Change-Id: I1567ebbe7ec8adab3344d96f0d2aa93367975926
CRs-Fixed: 2071677
Fix implicit conversion from enumeration type 'tSirResultCodes' (aka
'enum eSirResultCodes') to different enumeration type 'QDF_STATUS'
[-Wenum-conversioni]
Change-Id: I72cbfb99d22d4747890b14d474a36b3c36d1c655
CRs-Fixed: 2071677
hdd_ipa_uc_loaded_uc_cb() allocates a msg buffer and passes it to
workqueue handler. Both hdd_ipa_uc_loaded_uc_cb() and workqueue
handler free the msg buffer, which leads to wrong memory dereference.
Fix is to return directly in hdd_ipa_uc_loaded_uc_cb() and let workqueue
handler free the msg buffer.
Change-Id: I842700e7fe94dc9a77fba966d918a054bc79f36a
CRs-Fixed: 2069189
sme_config is used as local variables with struct tSmeConfigParams
in multiple places causing stack frame size to increase. This is
causing build issues with 32 bit systems where the stack frame
size is limited to 1024 bytes for each frame.
Move multiple sme_config local variables to dynamic allocations to
reduce stack frame size.
Change-Id: I86a93546adf40bbbc19438c3b1e3a7ec0d38f39f
CRs-Fixed: 2074224
warning: implicit conversion from enumeration type 'tDriverType'
to different enumeration type 'enum driver_type' [-Wenum-conversion].
Move enum driver_type to QDF.
Change-Id: Ic89e4ee512a2d70c27324446257286aaafd49839
CRs-Fixed: 2055487
Due to the Change-Id: I3ad995636127a5fda0635549551a24cc5b1bd2c5
PARAM_A_BAND_PELT_THLD was incorrectly replaced with
PARAM_A_BAND_BOOST_THLD.
Fix this and bring back the attribute PARAM_A_BAND_PELT_THLD.
Change-Id: I83d21c2b4662c82d2f26f3bcd10a549889f6df1e
CRs-Fixed: 2055487
Split __wlan_hdd_cfg80211_set_ext_roam_params() into
multiple functions to improve readability of the code and
fix clang warning (-Wframe-larger-than).
Change-Id: I3ad995636127a5fda0635549551a24cc5b1bd2c5
CRs-Fixed: 2055487
Because of obsolete macros FEATURE_WLAN_LFR and WLAN_FEATURE_ROAM_SCAN_OFFLOAD
roaming capability is not properly set in get_supported_features.
Fix this by using the proper macros.
Change-Id: I4dec8c32c71fde01b663e11e60f1da171adee3e4
CRs-Fixed: 2067126
This is a qcacld-2.0 to qcacld-3.0 propagation.
Enable feature bits WIFI_FEATURE_CONTROL_ROAMING,
WIFI_FEATURE_IE_WHITELIST and WIFI_FEATURE_SCAN_RAND.
Change-Id: Ia0f136e038e7da040faae04eaa11bcf56bb72443
CRs-Fixed: 1102187
This is a qcacld-2.0 to qcacld-3.0 propagation
'wrqu->data.length' holds the total number of IE data buffer.
Add a check to make sure the number of remaining data to be read is
greater than or equal to IE length.
Also, advance the buffer pointer to point to the next element only
if next element is present.
Change-Id: Ic60f3e0650f365955dab4099eb8740e9789e00cc
CRs-Fixed: 1100132
Dump the last few (100) DPTRACE records when a cfg80211 disconnect is
received from the userspace with reason code WLAN_REASON_DEAUTH_LEAVING.
Change-Id: Ib370f8d8b71f20364e0da73a1aee5673c0fc4ca4
CRs-Fixed: 2029713
Unify hdd_register_interface() and hdd_register_hostapd(). Update
failure log with error status and device name in case of
register_netdevice(), register_netdev() or dev_alloc_name() failures.
Change-Id: I428c73d473de6dc2e61567129e9f2a7996631729
CRs-Fixed: 2085098
hdd_ipa->sta_connected in WLAN_CLIENT_DISCONNECT case is not under lock
protection and is prone to race conditions.
Fix is to release event_lock after checking sta_connected so as to avoid
possible race conditions.
Change-Id: I6206d5d0cc2cf5df02ab4caf0de810961da21006
CRs-Fixed: 2082525
propagation from qcacld-2.0 to qcacld-3.0.
While processing setpno ioctl, there is an out of bound memory
issue when Host is copying ioctl arguments to a local buffer.
While copying ioctl arguments, make sure valid indices are used.
Change-Id: I03078df7135f5f1daf1d9bead7d4410e58fb848a
CRs-Fixed: 1112355
Currently, auto powersave timers are deferrable. This means any pending
auto powersave timers will not fire while the device is supended, which
can have a negative impact on wlan power usage. Instead, flush any
pending auto powersave timers during the suspend process, to ensure
powersave is enabled while the device is suspended.
Change-Id: I5911ee30eaf770909b728af73958ba1bbaa8457f
CRs-Fixed: 2080812
Currently when IPA RX WDI pipe connect fails during start modules
host does not clean up the TX pipe which is allocated before the
RX pipe. As part of proper clean up from host in this change
disconnect the TX pipe handle when RX pipe connect returns failure.
Change-Id: Ic037dd2415ab5be497a0617d8151d63219868fd1
CRs-Fixed: 2040146
Setting gForce1x1Exception=1 in ini forces DUT to associate to
buggy AP's which are identified via OUI. Enable this feature by
default on all platforms by setting CFG_FORCE_1X1_DEFAULT=1.
Change-Id: Ic459d821f4aedba966beab8ca8ca977b7b639e34
CRs-Fixed: 2084927