During idle-restart failure the platform driver does not complete
the power_up completion event and it eventually results in the
driver timeout. Add code to handle idle-restart failure and
return the value of the failure to the host driver.
Change-Id: I9d80b844429ecb292a6c7e9d35362fbfd3a24adb
Signed-off-by: Mohammed Siddiq <msiddiq@codeaurora.org>
Certain GPIOs are reserved for secure world and cannot be accessed by HLOS.
Supply "reserved_gpios" to msm_pinctrl to mark these pins as invalid.
Change-Id: I7ff8444af2819a68c60e66bd4e4e9f5ecf4990fa
Signed-off-by: Naina Mehta <nainmeht@codeaurora.org>
It cannot be guaranteed that certain legacy mode controllers stay
in M0 while a BW request is being processed. Ensure that those
pending BW requests are addressed when M0 entry occurs after a BW
request is processed but not responded to.
Change-Id: I6132116fae76fa10477aa7061c24f3ff5ac60a34
Signed-off-by: Bhaumik Bhatt <bbhatt@codeaurora.org>
While trusted touch is underway, block resume work
to flush touch FIFO since ownership of register space
is with Trusted VM.
Change-Id: Ib87a81aa8f39631ae3f3ea44f4a5dee4563bc514
Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
Release I2C session lock before releasing IO regions in TVM
during trusted touch scenario.
Change-Id: Ibd3b63e5d084097eb464e3697b8d7d82ea17262e
Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
Add Trusted touch support to nt36xxx Touchscreen driver.
This feature enables driver to operate in trusted touch
mode in trusted virtual machine(TVM). The primary virtual
machine(PVM) lends resources such as IO memory and touch
irq to TVM prior to trusted touch is initiated and
reclaims those resources back after trusted touch usecase
finishes. The resource requirements of TVM such as clock,
regulators etc are taken care by PVM. Introduce state
machine for various checkpoints in trusted touch usecase.
In error scenarios, this state machine helps driver to
rollback to previous state.
Change-Id: I5000ba016cee21c7b6b6beab8a7bb15a8c23f8d5
Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
For DSI byte clock RCG, check if there is a change in existing
settings before updating RCG configuration. This is needed to
avoid glitch on the display panel when there is a change in the
DSI byte clock frequency with display enabled.
Change-Id: I8ef0331cbb466b399cd12199b4d335ed44997dbc
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
Signed-off-by: Zhao, Yuan <yzhao@codeaurora.org>
Commit 29c41d5c47 ("regulator: rpmh-regulator: support parent
supply specification in subnodes") introduced a memory leak in
the function rpmh_regulator_init_vreg_supply() due to 'buf' not
being freed in the new 'else if' statement. Fix this memory leak
by freeing 'buf' correctly.
Change-Id: If2748b595d8ae3a4564a2956a67aeda476975309
Signed-off-by: David Collins <collinsd@codeaurora.org>
Correct the hw_settling times array defined for ADC5 lite.
Change-Id: I38eee9b3f76cb40e286f9e7e3fbf296b3f3ccfe5
Signed-off-by: Shyam Kumar Thella <sthella@codeaurora.org>
Cast MBYTE macro to unsiged long instead of unsigned long long.
Unsigned long long causes division errors when used for 32 bit
kernels. Also, add a new macro for Mbps to icc conversion
without loss of precision.
Change-Id: I584869c510d614e47ab7090a1f328df307d412a8
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
To compile for targets where HOTPLUG is disabled move the
msm_hp_restart_events function within the HOTPLUG ifdef code.
Change-Id: If316b76812dd8e3f45a73fe1d4f908b5ffabeef4
Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
GENERIC_GETTIMEOFDAY can be enabled only if HAVE_GENERIC_VDSO
is enabled. However, HAVE_ARM_ARCH_TIMER selects it unconditionally,
thus throwing the following warning:
WARNING: unmet direct dependencies detected for GENERIC_GETTIMEOFDAY
Depends on [n]: HAVE_GENERIC_VDSO [=n]
Selected by [y]:
- HAVE_ARM_ARCH_TIMER [=y] && CPU_V7 [=y]
Fix this by selecting GENERIC_GETTIMEOFDAY conditionally in
HAVE_ARM_ARCH_TIMER as well.
Also, handle this conditional dependency in all the references.
Change-Id: Iccb154ad4c0f49857115372334e49504f31a8380
Signed-off-by: Raghavendra Rao Ananta <rananta@codeaurora.org>
The function qcom_scm_mem_protect_region_id dereferences __scm without
checking for NULL and could potentially lead to a NULL pointer exception.
This scenario can happen if the clinet calls qcom_scm_mem_protect_region_id
before qcom_scm driver is even probed. Hence, check for NULL before
dereferencing it.
Change-Id: I1a9eba6d45ba8ebf73da80bca984b4dfad05042e
Signed-off-by: Ashok Vuyyuru <avuyyuru@codeaurora.org>
On MDM targets we have only one path for bus voting (sdhc-ddr).
If we provide only one path and not the other one then probe will
itself fail as per the current logic.
Don't return error when bus voting paths not found.
Change-Id: Idf5401266793f4d4003391816f7511f8c0754696
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
Enable configs required for SD card support on sdxnightjar.
Also enable the required Block layer configs.
Change-Id: I01d077c9d6218da11b503592bcee302db8e3eb44
Signed-off-by: Sarthak Garg <sartgarg@codeaurora.org>
The device advertises PA_HIBERN8TIME may not be enough for some UFS
devices. To workaround this issue, host should add more 100 us.
The commit 8941234ea1 ("scsi: ufs: Add UFS_DEVICE_QUIRK_PA_HIBER8TIME
quirk") just increase PA_HIBERN8TIME base on TX_HIBERN8TIME_CAPABILITY,
we should increase PA_HIBERN8TIME directly because the
RX_HIBERN8TIME_CAPABILITY may be more than TX_HIBERN8TIME_CAPABILITY.
Change-Id: If5e28e11a656df999fc50014e65bc89498b28499
Signed-off-by: Ziqi Chen <ziqichen@codeaurora.org>