Fix OTG enable error path and drop stale votes
on USB_ICL votable.
Change-Id: Ia0fce0ef75bb83ece72cc6a5a8f294b2500a0166
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
In existing implementation if vmap fails device panics for
NULL pointer access while doing pil_memset_io.
Instead check for the NULL pointer.
Change-Id: I1b9fd084a8c168b70f6e01134e4122445e4873b4
Signed-off-by: Swetha Chikkaboraiah <schikk@codeaurora.org>
For improved performance, move RX handling from a thread to
a hard IRQ handler. This helps to decrease the chance of missing
incoming back-to-back messages (e.g. Accept -> PS_Ready following
a successful power request) due to the pending RX token in case
the IRQ thread is delayed due to high system load. policy_engine
needs to perform the buffer allocation with the GFP_ATOMIC flag.
Change-Id: Iacb2623280f1ac4de9f483a8abbf5dc055041be7
Signed-off-by: Jack Pham <jackp@codeaurora.org>
It is virtual clock frontend driver which communicates
with host backend clock service/driver over HABMM. It
only supports msm8996 virtual platform currently.
Change-Id: Icfee28c301fa4a583b45e5d364432535643eb9b7
Signed-off-by: Zhiqiang Tu <ztu@codeaurora.org>
Having this flag was causing PD TX messages to incorrectly
get blocked in the case where the policy engine state machine
worker got scheduled to run in the RX IRQ, but before the
handler exits and clears the flag. This caused false errors
that an RX message is pending. Remove usage of this flag as
it was doing more harm than good.
Change-Id: Iffccfc9ffafac6017192d86d8d97d5534890c7b5
Signed-off-by: Jack Pham <jackp@codeaurora.org>
When sending/receiving a hard reset in source mode, the
PE_SRC_TRANSITION_TO_DEFAULT state turns off VBUS/VCONN and
sleeps for 750ms. During this fairly long period any Type-C
event such as cable disconnect or reconnect won't get
processed as the workqueue is blocked by this wait condition.
This can lead to incorrect state handling, for example when
a sink is removed and a source is attached; the state machine
will think a sink is still attached. Fix this by removing
the msleep() and set a timer to restart the state machine
to PE_UNKNOWN which will turn VBUS/VCONN back on and start
again in PE_SRC_STARTUP. This frees up the workqueue to
process any potential incoming events in the meantime.
Change-Id: I282551a58252a672f319d1559eac9f4ad4c3ca8a
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Entering SNK_Ready or SRC_Ready state from usbpd_set_state()
is somewhat terminal as it is the end state of a contract
negotiation. If there was a previous pending VDM message
waiting to be sent, for example the start of a Discovery which
was queued prior to a PR Swap, it would not get sent. Check for
this and enqueue usbpd_sm once again so that it could be sent
out. Otherwise, start the Discovery process in case we are
in DFP mode, and do that for SNK_Ready as well.
Change-Id: I4516ccb0deec8cdabdb62d539d7d2b66dc23f1ee
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Add android-verity support so that the system image is verified by
the kernel during the boot time. Also set the x509 key file to be
used for verification.
Change-Id: I17ffc2944ef9af556d9fdc05d62734de384dc27c
Signed-off-by: Binoy Jayan <bjayan@codeaurora.org>
If all cores for a cluster are offline or not brought up during
lmh dcvsh probe, it fails to register cooling device and it leads
to probe failure. If later these cores come online, lmh dcvsh doesn't
re-probe it and eventually that cluster lmh dcvsh is broken.
Register for cpu online notification and register cpu cooling device
in cpu online notification callback context. It makes sure that
both lmh dcvsh probing and cooling device register are proper.
Change-Id: Id5345a578aab920d12bd9d9e2ccf1d5059582de9
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
rh850_2_apq interrupt is connected to gpio_122 on auto cdp boards
CRs-Fixed: 2009305
Change-Id: Id60ec07a7bc4757050ad2a1c39123ec561581082
Signed-off-by: Alex Yakavenka <ayakav@codeaurora.org>
WLAN module supports LRO, so enable CONFIG_INET_LRO for SDM660.
Remove it from defconfig to enable as Kconfig has default set to enable.
Change-Id: I5681c47caa18931ab1a3ea2b09c3a1f9abc38777
CRs-Fixed: 2144533
Signed-off-by: Poddar Siddarth <siddpodd@codeaurora.org>
NTN_CLK_SYNC line should be set low before bringing Neutrino out
of reset for msm8996 agave board and auto CDP board.
Change-Id: I7b213a7dad2dbdedd3fe42a88972dc36cbf2e5b5
Signed-off-by: Zou Shunxiang <shunxian@codeaurora.org>
In diagfwd_peripheral_exit() free the memory associated with
early_init_info.
Change-Id: I862b6d806d67dad38316f1608827a4bf6f5a691f
Signed-off-by: Sreelakshmi Gownipalli <sgownipa@codeaurora.org>
Disable L1 and L1ss PCIe low power modes for msm8996 CV2X
since it causes problems with WLAN (RC0) and not supported
by Neutrino Ethernet (RC1).
Change-Id: I7d9358a2cb5921f5e5d5da858faec553197063ee
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Set properties of the esoc driver for MDM shutdown and reset
time intervals for msm8996 CV2X.
Change-Id: Ic86f6b441b369a3ea4845425930724d5e6fed149
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Convert the timeout and shutdown intervals to be read from
the device tree and set default values in case no option is
provided.
Change-Id: I90efb5910ddf1667db5cde79f46a4a94da1668ec
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
Reject driver reinit request when WLAN FW is down as FW
is in a bad state and can't communicate with host driver.
CRs-Fixed: 2153375
Change-Id: Id16cbfc05984091d61b18c98f7397baa871f82b4
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Register ops to store the gtk rekey data from the wlan
utility(wpa_supplicant) and configure the GTK offload
during wow suspend.
If the wlan module in suspend state with wowlan mode
this feature adds support to prevent the device to wakeup
from sleep state on gtk rekey failure in wlan firmware.
CRs-Fixed: 2150959
Change-Id: I968acfe65bd082d37c855f89d4460a09c055ffd8
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
Validate the userspace wlan control cmd data, info and length
before copy into wcnss driver buffer. Avoid unnecessary string
manipulation and use kernel defined format specifier to print
wlan MAC address.
CRs-Fixed: 2149331
Change-Id: Ib59fdcc0e6b84cdd73972dcb62b2c05e4741f5f7
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
With WARN_RATELIMIT lot of warning messages are
sometimes causing watchdog bite or spinlock lockup
(due to continuous logging). Thus change it to
pr_debug.
Change-Id: I2f0670bd20a39d289c105f9896e6fc509fb87de6
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
With USB Host pass through, touchscreen is available on gvm.
Change-Id: I129f2cc65e5d11a6d69e7afde13356a3bee98df6
Signed-off-by: Yimin Peng <yiminp@codeaurora.org>
Current CCID daemon is supporting TPDU level exhanges for CCID
communication. Hence report same in dwFeatures field of CCID class
descriptor.
Change-Id: If66a54bd74c76ccb417b202b224de5c79e9dfa05
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
When loading wlan driver, driver will check if chip is initialized
by reading pci io FW_IND_INITIALIZED status. While timeout occurred
when wait for above status randomly in multi load-unload process.
Restore pci config space before enable device during resume pci link.
Change-Id: Ib10f739b2321c7cb0e71ad40db571075a56ae48a
Signed-off-by: Kai Liu <kaliu@codeaurora.org>
Cleanup ION cache maintenance code to properly validate the target of
userspace cache maintenance requests.
Change-Id: I55b8e3584c59634f95250bc7c0bce5d8d70e6a13
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Reject regsiter_driver request when WLAN FW is already down as
WLAN FW is in a bad state and can't communicate with host driver.
Change-Id: I57ba839101f5c0a361e74060b18b45f87c71634c
CRs-Fixed: 2151726
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Check the validity of the pointer in user space that you intend to
access. access_ok function simply checks that the address is likely
in user space, not in the kernel.
Change-Id: I936f73a2c2029f9e7ca12cc8fc06d0698e6710c0
Signed-off-by: Tharun Kumar Merugu <mtharu@codeaurora.org>