linux/drivers/soc/qcom
Christian Marangi 15544619bc 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:53:57 +02:00
..
apr.c driver core: make struct bus_type.uevent() take a const * 2023-01-27 13:45:52 +01:00
cmd-db.c soc: qcom: cmd-db: Mark device as having no PM support 2022-10-17 17:58:15 -05:00
cpr.c PM: AVS: qcom-cpr: Fix an error handling path in cpr_probe() 2023-01-10 09:48:13 -06:00
icc-bwmon.c soc: qcom: icc-bwmon: fix incorrect error code passed to dev_err_probe() 2023-05-14 19:07:10 -07:00
ice.c soc: qcom: Make the Qualcomm UFS/SDCC ICE a dedicated driver 2023-04-07 12:08:39 -07:00
Kconfig v6.3-rc1 + 20230407105029.2274111-4-abel.vesa@linaro.org 2023-04-07 12:12:27 -07:00
kryo-l2-accessors.c soc: qcom: kryo-l2-accessors: Fix misnaming of 'val' 2020-11-10 23:23:02 -06:00
llcc-qcom.c ARM: SoC drivers for v6.4 2023-04-25 12:02:16 -07:00
Makefile soc: qcom: Rename ice to qcom_ice to avoid module name conflict 2023-05-24 20:30:52 -07:00
mdt_loader.c soc: qcom: mdt_loader: Fix unconditional call to scm_pas_mem_setup 2023-07-23 13:53:57 +02:00
ocmem.c firmware: qcom_scm: Move qcom_scm.h to include/linux/firmware/qcom/ 2023-02-08 19:15:16 -08:00
pdr_interface.c soc: qcom: pdr: replace usage of found with dedicated list iterator variable 2022-04-07 22:20:27 -05:00
pdr_internal.h soc: qcom: pdr: Make QMI message rules const 2022-10-17 13:19:40 -05:00
pmic_glink.c soc: qcom: pmic_glink: register ucsi aux device 2023-03-21 19:34:37 -07:00
pmic_glink_altmode.c soc: qcom: pmic_glink: remove redundant calculation of svid 2023-02-06 12:25:00 -08:00
qcom-geni-se.c soc: qcom: geni-se: Add interfaces geni_se_tx_init_dma() and geni_se_rx_init_dma() 2023-07-19 16:35:27 +02:00
qcom_aoss.c soc: qcom: Use of_property_present() for testing DT property presence 2023-03-13 05:43:07 -07:00
qcom_gsbi.c soc: qcom: gsbi: mark OF related data as maybe unused 2023-03-13 05:37:27 -07:00
qcom_stats.c soc: qcom: stats: Populate all subsystem debugfs files 2023-02-06 12:13:30 -08:00
qmi_encdec.c soc: qcom: qmi: use const for struct qmi_elem_info 2022-08-29 17:33:01 -05:00
qmi_interface.c net/sock: Introduce trace_sk_data_ready() 2023-01-23 11:26:50 +00:00
ramp_controller.c soc: qcom: ramp_controller: Fix an error handling path in qcom_ramp_controller_probe() 2023-05-24 20:02:10 -07:00
rmtfs_mem.c soc: qcom: rmtfs: Fix error code in probe() 2023-05-24 20:05:08 -07:00
rpmh-internal.h soc: qcom: rpmh-rsc: Avoid unnecessary checks on irq-done response 2022-12-05 15:12:17 -06:00
rpmh-rsc.c soc: qcom: rpmh-rsc: drop redundant unsigned >=0 comparision 2023-05-14 19:07:50 -07:00
rpmh.c soc: qcom: rpmh-rsc: Avoid unnecessary checks on irq-done response 2022-12-05 15:12:17 -06:00
rpmhpd.c soc: qcom: rpmhpd: Add SA8155P power domains 2023-05-24 20:39:26 -07:00
rpmpd.c soc: qcom: rpmpd: Remove useless comments 2023-03-15 15:40:28 -07:00
smd-rpm.c soc: qcom: smd-rpm: Use GFP_ATOMIC in write path 2023-04-06 11:42:23 -07:00
smem.c soc: qcom: smem: update max processor count 2023-03-13 16:34:36 -07:00
smem_state.c soc: qcom: smem_state: Add refcounting for the 'state->of_node' 2022-08-18 14:13:46 -05:00
smp2p.c soc: qcom: move from strlcpy with unused retval to strscpy 2022-10-17 13:19:39 -05:00
smsm.c soc: qcom: smsm: Use dev_err_probe() 2023-03-24 05:59:07 -07:00
socinfo.c soc: qcom: socinfo: Add Soc ID for SM7150 2023-03-15 15:31:16 -07:00
spm.c soc: qcom: spm: Implement support for SAWv2.3, MSM8976 L2 PM 2022-11-05 23:27:32 -05:00
trace-rpmh.h soc: qcom: rpmh-rsc: Avoid unnecessary checks on irq-done response 2022-12-05 15:12:17 -06:00
wcnss_ctrl.c soc: qcom: wcnss_ctrl: Allow reading firmware-name from DT 2021-04-05 22:35:06 -05:00