Presently the logging thread is not destroyed if the driver is unloaded
in the FTM mode leading to accessing to invalid memory location once
the wlan driver is unloaded.
Destroy the logging thread irrespective of the device mode during
the unload of the driver.
CRs-Fixed: 2040566
Change-Id: I1a97acffa5fb292ac9d355d6a95e6fc253fc833a
Change ssidHidden variable type as tHiddenssId enum instead of
original boolean type in tagCsrSSIDInfo structure to backup the
value from hdd (eg: eHIDDEN_SSID_NOT_IN_USE, eHIDDEN_SSID_ZERO_LEN,
eHIDDEN_SSID_ZERO_CONTENTS).
Change-Id: Ibc88c80856984b1b61e2fbe489219b391900dad3
CRs-Fixed: 2065342
During initializing station mode, the array holding STA IDs are
not set to HDD_WLAN_INVALID_STA_ID(0xFF), leading STA IDs to hold
a valid data, though there no connections.
Set array holding STA IDs with HDD_WLAN_INVALID_STA_ID, to make
STA IDs holding invalid data.
Change-Id: I12167e83bebe0380520676c194f11cd4848330cf
CRs-Fixed: 2053816
Change number of dropped packet before kickout threshold to max
theoretical value of 65535.
Change-Id: I9b29e704460cfabdc346cda7ab4bc5f01ad5ea98
CRs-Fixed: 2029453
Currently the QCA_WLAN_VENDOR_ATTR_NDP_IFACE_STR nla_policy specifies
a type of NLA_STRING, but the underlying implementation expects a
NUL-terminated string. Update the policy to correctly use a type of
NLA_NUL_STRING with the len updated to remove the allocation needed
for the terminating NUL.
Change-Id: Ic73241511ab73ae63fd7c1a8d6422da91931919c
CRs-Fixed: 2062141
VDEV object has not been checked against NULL value before passing as
part of message to a next layer
CRs-Fixed: 2063561
Change-Id: I9c7ad08f1e201779cb433044a1525555a2ccaa34
As part of the support for the FIPS certification feature add the
HDD infrastructure.
Change-Id: I76a545c42b10a662db04b5994de100c713a46c59
CRs-Fixed: 2065002
As part of the support for the FIPS certification feature add the
WMA infrastructure.
Change-Id: I7e113cee8ba9a08c2efd1141bef84e43d530cdcb
CRs-Fixed: 2065002
In order to get FIPS certification the driver will need to support a
userspace API and accompanying logic to exercise the FIPS WMI
interface exposed by firmware. Since this logic need not be enabled on
production devices, expose a configuration knob so that it can be
enabled or disabled on demand.
Change-Id: I979be0175ea89e9147b07b222f54a7c3fc23dbd9
CRs-Fixed: 2065002
Fix static analyze issues which cause is may dereference NULL
pointer, adding NULL pointer check or using already checked pointer.
Change-Id: Ib3a1f5214da839cd2bec4ffee16e0809095fa513
CRs-Fixed: 2058073
In function pld_pcie_uevent, pld_context->ops->uevent NULL check logic
is wrong so correct it.
Change-Id: I1bf9d8c8f5318b476761a458f5475107007dfa01
CRs-Fixed: 2058248
qcacld-2.0 to qcacld-3.0 propagation
Free the memory for channel list once the scanStatus is NOT
eCSR_SCAN_SUCCESS in WLANSAP_PreStartBssAcsScanCallback.
Change-Id: Id2d7fe5d7df8c032d50f02880deedb2ed1ac79fd
CRs-Fixed: 2059751
Map the input target time to host time, and
time stamp netbuf with this host time.
Change-Id: I1fb298615267bb11c4f21cabe670fd4c3a12a759
CRs-Fixed: 2057693
To map target time to host time, implement a timer
to capture TSF and host time periodically.
The timer will be started when connection state of
sta/p2p_gc being changed from not associated to
associated; and stopped when from associated to
not associated.
Change-Id: I697080b95f01f173beddc038ab9ad89ee394354b
CRs-Fixed: 2057693
1. Failed to get TSF if issuing cap_tsf more
than 1 time continuously, due to the TSF
value will be reset by the following 'cap_tsf'
command, however, these 'cap_tsf' won't be
excuted actually, because 'get_tsf' was not
received after last successful 'cap_tsf'.
To fix it, do TSF reset only if 'cap_tsf'
will be actually excuted.
2. Add flag 'cap_tsf_flag' to make sure cap_tsf
being executed serially.
3. Add flag 'tsf_ready_flag' to indicate whether
TSF feature has been initialized successfully.
Add 'TSF_NOT_READY' in 'hdd_tsf_get_state' to
indicate this state.
Propagated from qcacld-2.0
Change-Id: Ib768e3d7f0b33a75e8bd838d4ed1c0b84e3aa13d
CRs-Fixed: 2057693
The AC values used by htt and txrx module are mismatch. Assertion
is also added to confirm that the values are matching.
The change is also to sync with CLD2.0.
Change-Id: I011a6f2b78a6954863c99f9d3875b2c88d2b78b1
CRs-Fixed: 2065390
Add initialization for mapping from TIDs including extension TIDs
to category table.
The change is also to sync with CLD2.0.
Change-Id: Ie79e5420cc22f4cb3e34ceeb020f3fde8f170d4d
CRs-Fixed: 2065379
After VDEV_START set WMI_VDEV_PARAM_PROTECTION_MODE param to no
protection: IEEE80211_PROT_NONE. Currently NAN spec and firmware
implementation does not have a mechanism to identify when protection
is needed.
Change-Id: I5906097f44d2059e26e440d2435568ef661160bc
CRs-Fixed: 2033348
In case remain on channel response is pending when wlan unloads, this
memory will leak. Free gpLimRemainOnChanReq memory when lim_cleanup is
called to avoid leak.
Change-Id: Ibf47bbc4b7eb5ce9509998cd40d0c3ce54e4da62
CRs-Fixed: 2051164
In roam sync propagation, initialise pe_session NSS to vdev_nss, which
will then later be updated as per ASSOC response frame received from
firmware. This allows roaming from 1x1 to 2x2.
Change-Id: I5260425c7bfdfaa09bac908ea7d8a89d5caa3f69
CRs-Fixed: 2058560
When operating in an 802.11b mode, CCK TX FIR Override forces a 2x2
radio configuration into 1x for Tx and 2x for Rx (ie 1x2) for
regulatory compliance reasons. Add gEnableCckTxFirOverride to allow
this firmware feature to be enabled/disabled via ini configuration.
Change-Id: I359fc908fa27113e2500a28c343cf90dea518212
CRs-Fixed: 2062111
Add the following rules when HT client is associating with SAP,
1.2G-AS platform: SAP associates with HT (11n) clients as 2x1 in 2G
and 2X2 in 5G.
2.Non-2G-AS platform: SAP associates with HT (11n) clients as 2X2
in 2G and 5G and async DBS scan is disabled.
3.5G-AS platform: SAP associates with HT (11n) clients as 2X2 in 2G
and 5G and async DBS scan is disabled.
Change-Id: Ia472e786cf3ffcb420aa8142a543b56f508c6b4a
CRs-Fixed: 2063482
Even if vht operation or Opmode IE is present in beacon, HT info IE is used to
detect the channel width and set to firmware and then again vht operation or
opmode IE is used to detect and set new channel width to firmware.
So if vht operation or Opmode IE are present, use them to detect and set
new channel width.
Change-Id: Ibbb5a2c55a5f79536fe269e0b6c0f5ff2c369309
CRs-Fixed: 2067727
Propagatin from qcacld-2.0 to qcacld-3.0
Length of the MAC address is not checked which may cause out of bound
read issue.
To resolve this add a check for MAC address length.
CRs-Fixed: 2063980
Change-Id: I58454b84c28b157cef35984d612a9bc6fdd9ec56
Add host support for detecting SOC power collapse failures in FW and
communicating the same to framework.
Change-Id: Icee39c896802c4d7136e0b8ef442a33feeb4799c
CRs-Fixed: 1112979
In some cases kernel incorrectly forwards the address change request
down to the driver even when interface is down. Driver tries to get
the session pointer from mac context and ends up crashing due to NULL
pointer dereference.
Ignore address change requests when interface is down.
CRs-Fixed: 2060889
Change-Id: I2b572c517b335856cdf2ae04433b4a48a9598572
For TF sdio chip with platform driver, ramdump is
configured in platform driver. Driver can get the
virtual memory, but it can't call ioremap again.
If there is a platform driver, ramdump should be
allocated in platform driver, and if there is no
platform driver, ramdump should be allocated in
driver.
CRs-Fixed: 2066529
Change-Id: Ia2a32a4895f354e365522a30bbfac949ccb7a391
Do not change channel BW if channel is 0 in HT info, As this will
cause invalid channel and phymode sent to firmware and result into
crash.
Change-Id: Ia629314b9ced299afa5d89092d0a9fc5c7cb6b4c
CRs-Fixed: 2065143
Convert the boolean variables used for tracking okc_enable into
separate bit flags for OKC and PMK caching. Firmware will also
add support for bitwise enablement of OKC and PMK caching in 802.11i
configuration part of RSO command.
CRs-Fixed: 2004963
Change-Id: Ib2fcdc6318adb488eca5cf47b2b59541020e6009
An incorrect IE length can overflow the remaining length variable
and make IE parsing logic perform a buffer over-read.
Check on IE length to avoid buffer over-read.
Change-Id: I20ef6a0136c7a5b602ad15a2fb725f20807b81d0
CRs-Fixed: 2052804
WPA RSN IE is copied from source without a check on the given IE length.
A malicious IE length can cause buffer overflow.
Add maximum bound check on WPA RSN IE length.
Change-Id: Id159d307e8f9c1de720d4553a7c29f23cbd28571
CRs-Fixed: 2052791