GSI Driver get the usage count in work handler when set_alt 1 happens
and this counter will decrement in disconnect work due to cable disconnect
or in gsi_suspend for suspended state.
In this case set alt to 0 came for MBIM interface and clear the
data_interface_up flag. After that suspend happens and does not decrement
the counter in gsi_suspend. This causes a mismatch of usage count and
usb not entering to low power mode.
Fix this by checking for USB_PROT_GPS_CTRL instead of data_interface_up.
Change-Id: Iaabf3de46ed72e33980d1e3e386e8ca0ae651c74
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
Some hosts enable function remote-wakeup immediately after
enumeration. But they don't perform function_suspend before U3
and also don't disable function remote-wakeup even if entering
deep sleep state and don't intend to wakeup from USB. One of the
reason could be that they rely on device to initiate remote-wakeup
only if it function suspended. Hence, update the check to initiate
function remote-wakeup only if device is function suspended.
Change-Id: I3d6bb817d9174f94051b1e1ef74dc9c941c66f4c
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Remove debug measure support for clocks that are not registered with the
clock framework. While at it update the external clocks in debugcc to
measure only clocks.
Change-Id: Icd6d59a098d116074403d24d9bc990fdebd7bdd7
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
Currently, certain controllers with lower core clock rates, takes
more than 32ms to set the halted bit. This results in XHCI halt
timeout.
Fix this by increasing the timeout to 48ms.
Change-Id: I2f2715a11a947e01303c659e257ef0cabb311cac
Signed-off-by: Harsh Agarwal <harshq@codeaurora.org>
Add MSS_Q6_BIMC_AXI and MSS_CFG_AHB clock IDs for GCC and clients
to be able to request for clocks from these clock controllers.
Change-Id: I2a7315d8d40348cf08515be9a43ad004f0c1d064
Signed-off-by: Rakesh Kota <kotarake@codeaurora.org>
Add GPIO to PDC wakeirq map.
While at this also update direct connect irq map.
Change-Id: I6c1f485f33077f95473c93b981ab7bec683ccf9f
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Enable config to support basic network functionality
Acked-by: Utkal shah <c_ushah@qti.qualcomm.com>
Change-Id: Id04a561687924aafd6342a4cf833ee695609db7a
Signed-off-by: Paras Singh Jain <parassin@codeaurora.org>
Fix out-of-bound array access by using the right
offset-mask in getting the OTST status.
Change-Id: I89a4176251ea9157c5dd997b3c11bfcb07420a4f
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
This changes avoids device crash if Rf card is not present
in device.
Change-Id: I4b22ad0023a38e5b3ef49d6bf0e404b00c608115
Signed-off-by: Sandeep Singh <sandsing@codeaurora.org>
Return EACCESS instead of EIO when link access is not
allowed at prevent l1, so client driver will procced
based on the return value.
Change-Id: Iee3b9a65609db1272be550089948d07527c7e134
Signed-off-by: Vivek Pernamitta <vpernami@codeaurora.org>
Enable CPU clock drivers to support cpu frequency scaling.
Change-Id: I489ae54357a7058304ef7f9309589f772462df24
Signed-off-by: Rakesh Kota <kotarake@codeaurora.org>
Add support for sdxnightjar CPU clock driver for
controlling cpu clocks.
Change-Id: I1fabb167a5c2d5e42d0a8baed13bc94d31ce97bf
Signed-off-by: Taniya Das <tdas@codeaurora.org>
UFS controller in the newer target supports UFS HCI specs
version 3.0. Hence Adding UFS3.0 in UFS HCI version check
to avoid logging the error message.
Change-Id: Ibbbb482a26a3ffd50667615bf2795404381a4111
Signed-off-by: Nitin Rawat <nitirawa@codeaurora.org>
SLIMBUS_MSM_NGD should be m not y for the current
device to be normally boot up and function.
Explicitly mark CONFIG_SLIMBUS as m as well for
normal function.
Change-Id: I09502c2300f9ee5fe06a82146b5832a13a576cff
Signed-off-by: Maria Yu <aiquny@codeaurora.org>
pte_accessible() is used by ptep_clear_flush() to figure out whether TLB
invalidation is necessary when unmapping pages for reclaim. Although our
implementation is correct according to the architecture, returning true
only for valid, young ptes in the absence of racing page-table
modifications, this is in fact flawed due to lazy invalidation of old
ptes in ptep_clear_flush_young() where we elide the expensive DSB
instruction for completing the TLB invalidation.
Rather than penalise the aging path, adjust pte_accessible() to return
true for any valid pte, even if the access flag is cleared.
Bug: 176475096
Change-Id: Ifd7919b4e9b790a94802b0115f93a9a260757036
Cc: <stable@vger.kernel.org>
Fixes: 76c714be0e ("arm64: pgtable: implement pte_accessible()")
Reported-by: Yu Zhao <yuzhao@google.com>
Acked-by: Yu Zhao <yuzhao@google.com>
Reviewed-by: Minchan Kim <minchan@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20201120143557.6715-2-will@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
(cherry picked from commit 07509e10dcc77627f8b6a57381e878fe269958d3)
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
During composition switch, android driver stops data transfers first
and removes configuration before disabling the pullup. With this sequence
there is a possibility for a race where usb_remove_config is in progress
during which pullup is active and sending the setup request for strings
with zero configuration value. Hence fix the issue by adding spinlock
protection for get_sring descriptor.
Change-Id: I13c601f0e48d847b322a2761cd52268963cacf01
Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
Remove debug measure support for clocks that are not registered with
the clock framework.
Change-Id: I69461a35ad219aec8d0cdd54666234ad01fbc1df
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
Prevent PCIE L1 substates while MHI fast resume to make
device not to enter any low power substates and allow l1
once mhi fast resume is completed.
Change-Id: Id92af704ce6f38ce13df25ef8be5d9c67b4b588a
Signed-off-by: Vivek Pernamitta <vpernami@codeaurora.org>