Set ac_queues default to enabled.
Change wil_select_ac_queue to return higher priority queue for EAPOL,
ARP and ICMP packets. These special packets are critical to maintain
the link with the AP and guarantee healthy operations and diagnostics
in the network.
Special packets will get the higher priority to ensure early
transmission when access category is enabled.
Change-Id: Ic03a810c303f614174f9f10c72e339ee32a6f023
Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
When traffic is very high, some special packets such as ARP may get
dropped causing the tx traffic to stall intermittently.
This patch preserves spare tx descriptors so that special packets can
be sent even when the tx ring is almost full. The number of reserved
entries can be changed by writing to tx_reserved_entries via debugfs,
taking effect in subsequent connections.
This feature is enabled when either drop_if_ring_full or ac_queues are
enabled.
Change-Id: I6c5215500966840445f2631fb32494750e60303d
Signed-off-by: Hrishikesh Vidwans <hvidwans@codeaurora.org>
Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
Add support for Access Category to select queue for transmit packets.
The callback wil_select_queue will return the queue id [0..3] to use for
the current skb transmission.
This feature is disabled by default. Use ac_queues parameter from
wigig.ini configuration file to enable.
Change-Id: I2891c58744eddafe16f9d74d1a87acdbf90d3d40
Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
max_assoc_sta can receive values (from the user or from the FW)
that are higher than WIL6210_MAX_CID.
Verify that cid doesn't exceed the upper bound of WIL6210_MAX_CID.
Change-Id: Id00b69a128d2c4df4a3ef85583bbe44590ff557c
Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
On some crash dump cases mem_lock is already taken, error
returns and crash dump copy fails.
In this case wait until mem_lock available instead of failing
the operation.
Also take the mem_lock for writing to prevent other threads from
altering the state of the device while collecting crash dump.
Change-Id: I2ae74fba77e39161e33a7c5302916d1c9254fa05
Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
mem_lock is taken for the entire wil_reset().
Optimize this by taking mem_lock just before device is
being reset and release the lock after FW download.
Change-Id: Icf3430e355acc2c33dc37c6a38a18c47de03a2cf
Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
New FW has power save capability in AP/PCP mode. FW reports this to
driver with WMI_FW_CAPABILITY_AP_POWER_MANAGEMENT.
AP/PCP mode power save in FW is disabled by default. It can be enabled
by sending WMI_PS_DEV_PROFILE_CFG_CMD to FW as part of start_ap
sequence.
Several pre-conditions must be met for driver to enable this:
1. power save enabled from cfg80211
2. AP power save enabled from platform driver. This is reported from
platform driver with a new WIL_PLATFORM_CAPA_AP_PS
AP power save can be controlled via "ap_ps" debugfs.
Change-Id: I328fdbfe5382e60688c9f4a67aa9378197e01987
Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
Add snapshot of the SPS (Smart Peripheral Subsystem) driver from msm-4.19
'commit thermal: tsens: Add support for TSENS min temp and 0C interrupt
("7b3e424f29e7c55468258ea49e24996684a5051a")'.
Change-Id: I26319a4ac0571e72aecdd0f1c65e1837aafbafc6
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
Dump all the Rx status message on different errors to allow more
visibility of the case.
Change-Id: I81e7f52f56068ea214f63dda1f74b102aeb605df
Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
Enable socinfo driver for QCOM SoCs. This driver provide
sysfs node entries for clients to know about SoC information.
Change-Id: Ic79d89d69dd4ad74eabfc4af8d081c1ab291796a
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
Client can update secure vmid by setting attribute DOMAIN_ATTR_SECURE_VMID.
If this is done after domain attach, it causes a condition where TTBR pages
aren't mapped to secure VMID. This causes S2 translation fault. Disallow
secure vmid update if domain is attached.
While we are at it, restrict DOMAIN_ATTR_FAST update while domain is
attached.
Change-Id: I4246f1f90a11ed21dfafa360cc2f16ade2708d2b
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
Limit tlb sync poll retry latency to a upper limit. This reduces the
response time of tlb sync completion.
Change-Id: I7b92e216c17f5942ad01a9e9f24eff88f7608388
Signed-off-by: Prakash Gupta <guptap@codeaurora.org>
Signed-off-by: Chris Goldsworthy <cgoldswo@codeaurora.org>
Sometimes we don't want to call the gcc-wrapper for various reasons, so
allow build scripts to set a special environment variable to skip it.
Change-Id: Ic0dedbadd3567812ed0216e7b30d8677ca14ba37
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Add support for L3 voting in the devfreq icc driver.
This includes populating the device's OPP table with L3
frequencies from HW and voting in this same unit of Hz
as accepted by the L3 interconnect provider.
Change-Id: I877f41324b55b333f4e5ef9f34232563357712c8
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
A core-dev table is explicity defined in each memlat device
today. However, some devices may want to share the same core-dev
table so add support for parsing a shared core-dev table that
can be used across multiple memlat devices.
Change-Id: I5ee0d439c199a6414d2adaeed8328f3dc99b2a84
Signed-off-by: Amir Vajid <avajid@codeaurora.org>
In register_common(), there's unnecessary code used to find
which device tree node has the core-dev property. Refactor
this to reduce complexity.
Change-Id: Ib3475272b25e898ad23f9f5a4412d90cd889a356
Signed-off-by: Amir Vajid <avajid@codeaurora.org>