linux-stable/drivers/remoteproc
Chen-Yu Tsai 4509a11ec3 remoteproc/mtk_scp: Move clk ops outside send_lock
commit e46ceea314 upstream.

Clocks are properly reference counted and do not need to be inside the
lock range.

Right now this triggers a false-positive lockdep warning on MT8192 based
Chromebooks, through a combination of mtk-scp that has a cros-ec-rpmsg
sub-device, the (actual) cros-ec I2C adapter registration, I2C client
(not on cros-ec) probe doing i2c transfers and enabling clocks.

This is a false positive because the cros-ec-rpmsg under mtk-scp does
not have an I2C adapter, and also each I2C adapter and cros-ec instance
have their own mutex.

Move the clk operations outside of the send_lock range.

Fixes: 63c13d61ea ("remoteproc/mediatek: add SCP support for mt8183")
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20230104083110.736377-1-wenst@chromium.org
[Fixed "Fixes:" tag line]
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-10 09:34:26 +01:00
..
da8xx_remoteproc.c
imx_dsp_rproc.c remoteproc: imx_dsp_rproc: Add mutex protection for workqueue 2023-01-07 11:11:55 +01:00
imx_rproc.c remoteproc: imx_rproc: Correct i.MX93 DRAM mapping 2023-01-07 11:11:55 +01:00
imx_rproc.h
ingenic_rproc.c
Kconfig
keystone_remoteproc.c remoteproc/keystone: Switch to using gpiod API 2022-09-19 15:32:27 -06:00
Makefile
meson_mx_ao_arc.c
mtk_common.h
mtk_scp.c remoteproc: mediatek: Support MT8188 SCP 2022-07-18 11:10:34 -06:00
mtk_scp_ipi.c remoteproc/mtk_scp: Move clk ops outside send_lock 2023-03-10 09:34:26 +01:00
omap_remoteproc.c remoteproc: omap_remoteproc: Fix typo in comment 2022-06-14 16:57:59 -06:00
omap_remoteproc.h
pru_rproc.c remoteproc: pru: Add support for various PRU cores on K3 AM62x SoCs 2022-07-05 10:40:30 -06:00
pru_rproc.h
qcom_common.c remoteproc: qcom: correct kerneldoc 2022-07-18 15:32:33 -05:00
qcom_common.h
qcom_pil_info.c
qcom_pil_info.h
qcom_q6v5.c remoteproc: qcom: q6v5: Set q6 state to offline on receiving wdog irq 2022-07-18 15:32:34 -05:00
qcom_q6v5.h
qcom_q6v5_adsp.c remoteproc: qcom: using pm_runtime_resume_and_get to simplify the code 2022-07-18 15:32:33 -05:00
qcom_q6v5_mss.c remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers 2023-03-10 09:33:40 +01:00
qcom_q6v5_pas.c remoteproc: qcom_q6v5_pas: Fix missing of_node_put() in adsp_alloc_memory_region() 2022-12-31 13:32:52 +01:00
qcom_q6v5_wcss.c remoteproc: qcom: q6v5: Fix missing clk_disable_unprepare() in q6v5_wcss_qcs404_power_on() 2022-12-31 13:32:52 +01:00
qcom_sysmon.c remoteproc: sysmon: fix memory leak in qcom_add_sysmon_subdev() 2022-12-31 13:32:52 +01:00
qcom_wcnss.c remoteproc: qcom: wcnss: Fix handling of IRQs 2022-07-06 22:24:37 -05:00
qcom_wcnss.h
qcom_wcnss_iris.c
rcar_rproc.c
remoteproc_cdev.c remoteproc: core: Move state checking to remoteproc_core 2022-04-14 11:13:33 -06:00
remoteproc_core.c remoteproc: core: Do pm_relax when in RPROC_OFFLINE state 2023-01-07 11:11:55 +01:00
remoteproc_coredump.c
remoteproc_debugfs.c
remoteproc_elf_helpers.h
remoteproc_elf_loader.c
remoteproc_internal.h remoteproc: Introduce rproc features 2022-09-28 10:46:21 -06:00
remoteproc_sysfs.c remoteproc: core: Move state checking to remoteproc_core 2022-04-14 11:13:33 -06:00
remoteproc_virtio.c remoteproc: virtio: Fix warning on bindings by removing the of_match_table 2022-10-05 09:20:44 -06:00
st_remoteproc.c
st_slim_rproc.c
stm32_rproc.c
ti_k3_dsp_remoteproc.c
ti_k3_r5_remoteproc.c remoteproc: k3-r5: Fix refcount leak in k3_r5_cluster_of_init 2022-06-14 16:54:57 -06:00
ti_sci_proc.h
wkup_m3_rproc.c