linux/drivers/soc
Christian Marangi 33f8dff6e1 soc: qcom: mdt_loader: Fix unconditional call to scm_pas_mem_setup
commit bcb8898913 upstream.

Commit ebeb20a9cd ("soc: qcom: mdt_loader: Always invoke PAS
mem_setup") dropped the relocate check and made pas_mem_setup run
unconditionally. The code was later moved with commit f4e526ff7e
("soc: qcom: mdt_loader: Extract PAS operations") to
qcom_mdt_pas_init() effectively losing track of what was actually
done.

The assumption that PAS mem_setup can be done anytime was effectively
wrong, with no good reason and this caused regression on some SoC
that use remoteproc to bringup ath11k. One example is IPQ8074 SoC that
effectively broke resulting in remoteproc silently die and ath11k not
working.

On this SoC FW relocate is not enabled and PAS mem_setup was correctly
skipped in previous kernel version resulting in correct bringup and
function of remoteproc and ath11k.

To fix the regression, reintroduce the relocate check in
qcom_mdt_pas_init() and correctly skip PAS mem_setup where relocate is
not enabled.

Fixes: ebeb20a9cd ("soc: qcom: mdt_loader: Always invoke PAS mem_setup")
Tested-by: Robert Marko <robimarko@gmail.com>
Co-developed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Cc: stable@vger.kernel.org
Reviewed-by: Mukesh Ojha <quic_mojha@quicinc.com>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230526115511.3328-1-ansuelsmth@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2023-07-23 13:49:34 +02:00
..
actions soc: actions: include header to fix missing prototype 2020-09-22 12:45:16 +05:30
amlogic drivers: meson: secure-pwrc: always enable DMA domain 2023-07-19 16:21:33 +02:00
apple soc: apple: rtkit: Stop casting function pointer signatures 2022-12-31 13:31:53 +01:00
aspeed soc: aspeed: lpc-ctrl: Block error printing on probe defer cases 2022-02-08 09:52:59 +01:00
atmel ARM: at91: fix soc detection for SAM9X60 SiPs 2022-06-28 12:55:32 +03:00
bcm soc: bcm: brcmstb: biuctrl: fix of_iomap leak 2023-05-11 23:03:12 +09:00
canaan riscv: canaan: remove useless select of non-existing config SYSCON 2022-01-20 09:35:11 -08:00
dove treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
fsl soc/fsl/qe: fix usb.c build errors 2023-07-19 16:21:25 +02:00
fujitsu soc: a64fx-diag: disable modular build 2022-07-20 17:58:18 +02:00
gemini soc: Add SoC driver for Gemini 2018-01-04 17:01:53 +01:00
imx soc: imx8m: Fix incorrect check for of_clk_get_by_name() 2023-02-01 08:34:05 +01:00
ixp4xx soc: ixp4xx/npe: Fix unused match warning 2022-07-01 15:14:26 +02:00
lantiq soc: lantiq: convert to devm_platform_ioremap_resource 2020-01-10 11:44:52 -08:00
litex drivers/soc/litex: remove 8-bit subregister option 2021-06-11 04:35:40 +09:00
mediatek soc: mediatek: SVS: Fix MT8192 GPU node name 2023-07-19 16:21:27 +02:00
microchip ARM driver updates for 5.18 2022-03-23 18:23:13 -07:00
pxa pxa: Drop if with an always false condition 2022-09-26 12:40:11 +02:00
qcom soc: qcom: mdt_loader: Fix unconditional call to scm_pas_mem_setup 2023-07-23 13:49:34 +02:00
renesas soc: renesas: renesas-soc: Release 'chipid' from ioremap() 2023-05-11 23:03:12 +09:00
rockchip soc: rockchip: power-domain: add power domain support for rk3588 2022-09-09 19:06:41 +02:00
samsung MAINTAINERS: update Krzysztof Kozlowski's email 2022-03-07 23:46:03 +01:00
sifive soc: sifive: ccache: fix missing of_node_put() in sifive_ccache_init() 2022-12-31 13:31:50 +01:00
sunxi soc: sunxi: sram: Add support for the D1 system control 2022-09-18 22:54:38 +02:00
tegra soc/tegra: cbb: Check firewall before enabling error reporting 2022-12-31 13:31:50 +01:00
ti soc: ti: pm33xx: Fix refcount leak in am33xx_pm_probe 2023-05-11 23:03:07 +09:00
ux500 ARM: ux500: do not directly dereference __iomem 2023-01-07 11:11:38 +01:00
versatile soc: integrator: Drop pointless static qualifier in integrator_soc_init() 2020-08-20 08:57:05 +02:00
xilinx driver: soc: xilinx: use _safe loop iterator to avoid a use after free 2023-07-19 16:21:17 +02:00
Kconfig soc: fujitsu: Add A64FX diagnostic interrupt driver 2022-07-18 13:37:08 +02:00
Makefile soc: fujitsu: Add A64FX diagnostic interrupt driver 2022-07-18 13:37:08 +02:00