This reverts commit I03f8c85d8ca4f9bd1d438c1aa5bb149e86839b29.
Change-Id: I4e2cbf24ba935744db1c1dff78ebdccfedae352e
Signed-off-by: Mohammed Siddiq <msiddiq@codeaurora.org>
Currently, an error log is printed every time when parsing a DT
property fails because of probe deferral. Fix it.
Change-Id: I5d7781baa1fdfaf1abaccb3b0bfbee3f14eeea24
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Currently, an error log is printed every time when parsing a DT
property fails because of probe deferral. Fix it.
Change-Id: Ic63c18393494b38bfb09a7ca85fd738dd2de56fd
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Add restore function for sx150x to re-init hw after hibernation.
Change-Id: I657ccca872a04ebc458273fbe0ea69c7969c4dbb
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
The flow is allocated in qrtr_tx_wait, but not freed when qrtr node
is released. (*slot) becomes NULL after radix_tree_iter_delete is
called in __qrtr_node_release. The fix is to save (*slot) to a
vairable and then free it.
This memory leak is catched when kmemleak is enabled in kernel,
the report looks like below:
unreferenced object 0xffffa0de69e08420 (size 32):
comm "kworker/u16:3", pid 176, jiffies 4294918275 (age 82858.876s)
hex dump (first 32 bytes):
00 00 00 00 00 00 00 00 28 84 e0 69 de a0 ff ff ........(..i....
28 84 e0 69 de a0 ff ff 03 00 00 00 00 00 00 00 (..i............
backtrace:
[<00000000e252af0a>] qrtr_node_enqueue+0x38e/0x400 [qrtr]
[<000000009cea437f>] qrtr_sendmsg+0x1e0/0x2a0 [qrtr]
[<000000008bddbba4>] sock_sendmsg+0x5b/0x60
[<0000000003beb43a>] qmi_send_message.isra.3+0xbe/0x110 [qmi_helpers]
[<000000009c9ae7de>] qmi_send_request+0x1c/0x20 [qmi_helpers]
Change-Id: If032d223388286557df7e689c2a003705b8f38db
Signed-off-by: Carl Huang <cjhuang@codeaurora.org>
Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
QUSB2PHY_LVL_SHIFTER is required to be updated to clamp the
signals from the QUSB PHY. And for certain platforms
this register is secured. Hence, use the scm_call to
do a secure write to the register.
Change-Id: I161ffe857795759083cf13cfa98ec78ca97f5fdb
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
Signed-off-by: Rohith Kollalsi <rkollals@codeaurora.org>
BY default MPM_WAKEUP_INT_EN bits are set from firmware
for gpios which can have wakeup capability. This results
in wakeup capability set for a gpio which is not being used
as IRQ. Problem manifests as spurious interrupts coming to
GIC from PDC as MPM_WAKEUP_INT_EN registers bit corresponding
to gpio is set.
Fix this by disabling wakeup capability for gpio not being
used as IRQ. When client driver calls irq_set_irq_wake()
after requesting gpio as irq, enable wakeup capability.
Change-Id: Ie215f2fdd36483b133b17ec8162c7423a7d8db31
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Currently, rx_list is updated from pmic_glink_rpmsg_callback()
with the new message received and the workqueue is queued for
pmic_glink_rx_work() to deliver it to the client. However, there
is a possibility that a race condition can occur when this list
is manipulated from pmic_glink_rpmsg_callback() in interrupt
context and pmic_glink_rx_work() from process context. Fix it by
using rx_lock before using list_* in pmic_glink_rx_work().
Change-Id: Ib10671d89d60e4b33f1a9666f4af08bb09d1a53b
Suggested-by: Chris Lew <clew@codeaurora.org>
Suggested-by: David Collins <collinsd@codeaurora.org>
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Add fastcvp driver, which exposes APIs to video driver
to share HFI command queue address to CDSP and
handle errors to exit gracefully in case video and
cdsp subsystems restart.
This snapshot was taken as of msm-4.14 with commit
5704525974fc1f3cb3f14d922d4987f35f2dc278.
Change-Id: I2b75e01f88d4bc5a267942e63cab79094ef327b9
Signed-off-by: Laisheng Hu <laisheng@codeaurora.org>
Update duty-cycle of the root clock generator based on the desired
duty-cycle from the consumer.
Change-Id: Ia820ec01ff900f60d8f907f48f5d73673dc0f604
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Add support for global clock controller for peripheral
clock clients to be able to request for the clocks in
Monaco.
Change-Id: I0dcf82faf9073a7ee832c693540dddbca44e2524
Signed-off-by: Saurabh Sahu <sausah@codeaurora.org>
DRM_GEM_SHMEM_HELPER will be used for some DRM drivers.
Change-Id: Icd237262787df9aae4ce503f7f2c49b756f330db
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Currently the driver enables autoresume for all the connected
peripherals. In a case where an LS device is connected but fails
the enumeration, this autoresume enablement is leading to PHY
keeping the Dm pulled up even when the peripheral is detached.
Hence, the detach hs_phy_irq is never fired and disconnect is
not processed.
Since remote wakeup from LS peripherals is not a requirement on
our platforms, enable autoresume for FS/HS devices only.
Change-Id: I0a62d08e58af18b523af322c64529f5183d55907
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
Currently the driver checks whether the PED bit of the PORTSC
register is set to decide whether any device is connected, and
then checks the PORTSPEED field to check for the speed and
accordingly updates the HSPHY speed flag with LS or FS/HS. Hence,
the PDC is programmed to fire HS_PHY_IRQ only on the rising edge
of Dp/Dm.
In a case where the connected peripheral has failed to enumerate,
the PED bit can be cleared by the host driver. When such a device
is disconnected, there is no HS_PHY_IRQ fired to wakeup SW and
disconnect handling does not happen.
Fix this by setting HSPHY speed flags based on the CCS bit of the
PORTSC register so that the PDC is programmed to fire HS_PHY_IRQ
on the falling edge of Dp/Dm.
Change-Id: I122d170434da19fd6aeb022a5fa8a85f1ea6f541
Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
EDAC ppi interrupts get disabled on cpu hotplug.
Add support to re-enable edac ppi post cpu comes online
during hotplug.
Change-Id: I51455c0134634f03b5e4e83eca915b794dd85067
Signed-off-by: Mayank Grover <groverm@codeaurora.org>
Enable MFD SPMI PMIC driver and several SPMI and PMIC drivers
which are needed to provide baseline support of PMIC peripherals.
Change-Id: I965b40eb0931c2e22e9fab28626e9ca753ad3ff8
Signed-off-by: Veera Vegivada <vvegivad@codeaurora.org>
Update qdss config file name based on device
type and build type.
Change-Id: I74a9a858707828e3ad9ec5678de4ff2ba56e64ea
Signed-off-by: Sandeep Singh <sandsing@codeaurora.org>
Add support for mpm wakeup control capability, for selective
enable of wakeup capability for GPIO being used as IRQ.
Change-Id: I38f5c8eea4b12919fb95b2135d76579eb4b27247
Signed-off-by: Prateek Sood <prsood@codeaurora.org>
Valid frequencies may result in BCM votes that exceed the max HW value.
Set vote ceiling to BCM_TCS_CMD_VOTE_MASK to ensure the votes aren't
truncated, which can result in lower frequencies than desired.
Change-Id: I6d64815ee93c5c604ec0bea86eca00aca570bb9e
Signed-off-by: Mike Tipton <mdtipton@codeaurora.org>