Since system is awake when runtime PM suspend/resume happens, there is
no need to send DTIM related WMI commands with WOW sequence during runtime
PM resume as unlike system suspend, these commands are able to be sent from
other paths. It will just trigger runtime PM resume which is expected
behavior.
Change-Id: I51d0f45c0223a0c0e3c61bbcb7135a590359b08d
CRs-Fixed: 2475111
In function tdls_ct_idle_handler, idx is assigned from
tdls_info->index which can be 0 254. But tdls_conn_info
is static array in tdls_soc_priv_obj of size
WLAN_TDLS_STA_MAX_NUM (8). So check idx is less than
WLAN_TDLS_STA_MAX_NUM or not to avoid OOB memory access.
Change-Id: I8387cb0a44a79f0f83b25c12de2aa9fbc39ab2f3
CRs-Fixed: 2474432
Update default value of force max nss action OUI ini
to include AP that advertises rx nss as 1 before
connection and advertises rx nss as 4 in association
response and in beacons or probe responses immediately
after connection.
Change-Id: Ica6314547a2aa39d4887ac4231745d6a59cd6b0a
CRs-Fixed: 2466562
Currently the driver checks that DBS for connection
is allowed or not, and on that basis rejects the scan,
but it may happen that FW supports DBS, and DBS for
scan is enabled in the ini, but the DBS for connection
is disabled.
In that case the diver opts for non-dbs scan.
Fix is to allow DBS scan in case of DBS scan enabled in ini.
Change-Id: I9feccdb434787f9ae1b87397b9c7a25cb2e40705
CRs-Fixed: 2473835
Fix the logic to not to advertise twt requester for SAP &
twt responder for STA.
Change-Id: I153f7c52d0107c75f7c59b4c880bb4aa0757356b
CRs-Fixed: 2473541
Driver is updating wiphy band capabilities incorrectly as
it is always updating 2G band as always supported, in case
if 2G band is disabled from ini "BandCapability", driver
should not update 2G band capabilities to wiphy.
To avoid above issue, add a api to check if 2G band is
supported and then only update 2G band capabilities to
wiphy.
Change-Id: Ib921fa106158d93bfdb7aa57cfd5aa4370fab7d8
CRs-Fixed: 2470067
As single CPU and low frequency platform, the held time of spin lock
easily exceed the max time allowed when system taking heavy payload.
then crash occur. To address this, Disable QDF_LOCK_STATS_BUG_ON on
SDXPRAIRIE platform.
Change-Id: I156a003b361f3653591102de1cde9b131c467968
CRs-Fixed: 2456386
Array sta_to_adapter of hdd_ctx is accessed from several functions of
NAN and softap without bound check which can lead to out of bound read
or write access.
To fix this, add range check for sta_id.
Change-Id: I0b8c4e8bce26c6514df489c3305000691c7e1fe0
CRs-Fixed: 2456954
Linux coding guidelines don't allow use of camel case identifiers.
So rename selfMacAddr to self_mac_addr to be in compliance.
Change-Id: Id70e00744883f9fd797da8d4bb1cf4f65c8aa9ff
CRs-Fixed: 2463827
Memory pointed by stakeyparams is not made NULL after
freeing in wma_set_stakey. This results in double free
during wma_add_bss_sta.
Change-Id: Ifa24d536e116be60f572d9926a511f9f498e6696
CRs-Fixed: 2463399
qcacld-2.0 to qcacld-3.0 propagation
This change adds support for driver supported TCP
delayed ack to increase TCP RX performance in
third-party platform which does't support kernel
TCP delayed ack feature.
TCP delayed ack is dependent on count and timer
values. Whatever is achieved first will trigger
sending TCP ack.
This feature can be controlled through ini values.
gDriverDelAckTimerValue - timer value in ms
gDriverDelAckPktCount - delayed ack count
gDriverDelAckEnable - enable/disable feature
Change-Id: I8105bbb90965295b5a4aefeb00d344a90155974d
CRs-fixed: 2414224
Disable LFR2 in cld-3.2 mainline as roaming is offloaded
to firmware in LFR3. Also fix linker issues with lfr2 disabled.
Featurize LFR2 properly with adding correct header files
and bringing LFR2 only functions under WLAN_FEATURE_HOST_ROAM
compile time flag.
Change-Id: Iac81b693feaab503d371753a4d16cc3e70df2a87
CRs-Fixed: 2459786
Optionally set by userspace to request the driver not to resume
beacon reporting after a pause is completed, when the
QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_OP_TYPE is set to
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START.
If this flag is set, the driver will not resume beacon reporting
after beacon reporting pause is completed. Userspace has to
send QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command again in order
to initiate beacon reporting again.
If this flag is set in the recent
QCA_WLAN_VENDOR_BEACON_REPORTING_OP_START command, then in the
subsequent QCA_WLAN_VENDOR_BEACON_REPORTING_OP_PAUSE event (if any)
the QCA_WLAN_VENDOR_ATTR_BEACON_REPORTING_AUTO_RESUMES shall not be
set by the driver.
Change-Id: I371a218cb513dcb077b7df675c549818c2b657b2
CRs-Fixed: 2466480
In order to process QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING
vendor command, driver sends remove beacon filter cmd to fw to
allow fw to send all beacons of connected AP to driver.
But in some cases fw may wakeup host in wow mode.
To avoid these cases, with this change beacon reporting feature
will use WMI_VDEV_PARAM_NTH_BEACON_TO_HOST
command to FW instead of WMI_RMV_BCN_FILTER_CMDID
With WMI_VDEV_PARAM_NTH_BEACON_TO_HOST, in case of active reporting,
fw should send all beacons of connected AP to HOST
and also no wakeup of driver should happen in wow mode.
Change-Id: I9d0e255a6d4accb523bf4613146574239e7e0d09
CRs-Fixed: 2471627
In __spectral_scan_msg_handler(), payload section of input data is
type casted to driver internal structure spectral_scan_msg without
validating payload length which can lead to kernel info leak
if the payload length is less than size of spectral_scan_msg.
To fix this, avoid type-cast and return error if payload length is
less than size of spectral_scan_msg.
Change-Id: Ie7e74cc2cdcf8136582e81ffc3a088fd5a881dc9
CRs-Fixed: 2468493
Add feature flags DP_FLOW_CTL to featurize DP flowctl ops,
DP_PEER_MGMT to featurize peer handling in DP,
DP_POWER_SAVE to featurize power saving ops in DP.
Change-Id: I02f487fec846e9dd9ffcaf53a10e49e7a3365fff
Command timeouts for VDEV stop and PEER assoc/delete is 2 sec, which
doesn't consider delays in scheduling.
To consider scheduling delays set these values to 4 sec and change
the serialization and HDD timeouts accordingly.
Change-Id: Ifc8ca857727a7e73bbae586c0728816024f1c687
CRs-Fixed: 2472122
Change Id3273498f623d04beec879aa9d77c1d33986357a ("qcacmn: Rename OSIF
logging macros") is renaming the OSIF logging macros, so update the
legacy OSIF to use the new names.
Change-Id: I73d4214c9fecc435f9ac8c9f79560aa36333d311
CRs-Fixed: 2469498
Add a feature flag enabling support in defconfig
for the datapath event history logging feature.
CRs-Fixed: 2466616
Change-Id: I8fc2c76a927aea3e2e723cde87c69e59e03a9848
During resource unloading, if two next to next client connect
request comes, one is handled in pending event handler in
wlan_ipa_uc_op_cb callback after processing FW TX suspend response
and other one is handled in scheduler thread, this causes race
condition in sending IPA offload enable for STA iface. So send IPA
enable req to FW before queuing the client connect event to the
pending events.
Change-Id: Ifcabc2481e590e5e128434614c4b46fe53a34636
CRs-Fixed: 2460573
When Rome host F/W out of sync, cds_trigger_recovery_handler is
called, but pld_collect_rddm is added in it by change
Id9f1dfefe1560affff6c4ecfca1b8fdba3eb0928,
Rome doesn't support RDDM, panic will always happen without F/W
dump.
With this change and ini gEnableSelfRecovery=1, when host F/W out
of sync happens, crash inject is sent to F/W to trigger F/W dump,
if subsystem restart level is "system", panic will happen,
If subsystem restart level is "related", SSR will happen.
Change-Id: I3c714e6b2750ef3305b0f4c64ea5fe8fdc74c1d8
CRs-Fixed: 2472484
In the API blm_update_ap_info, it may happen that the scan
entry is NULL, and the scan entry pointer maybe dereferenced
in the debug print where the rssi print is there.
Fix is to print the RSSI only when the scan entry is valid.
Change-Id: I3ad973d61a0c11b6a55c8b346d54eb41956882b6
CRs-Fixed: 2469815