]> git.hungrycats.org Git - linux/commitdiff
remoteproc: qcom_q6v5_pas: disable auto boot for wpss
authorBalaji Pothunoori <quic_bpothuno@quicinc.com>
Fri, 18 Oct 2024 10:59:11 +0000 (16:29 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Dec 2024 09:41:04 +0000 (10:41 +0100)
commit 8a47704d64c9afda80e7f399ba2cf898cfcc45b2 upstream.

Currently, the rproc "atomic_t power" variable is incremented during:
a. WPSS rproc auto boot.
b. AHB power on for ath11k.

During AHB power off (rmmod ath11k_ahb.ko), rproc_shutdown fails
to unload the WPSS firmware because the rproc->power value is '2',
causing the atomic_dec_and_test(&rproc->power) condition to fail.

Consequently, during AHB power on (insmod ath11k_ahb.ko),
QMI_WLANFW_HOST_CAP_REQ_V01 fails due to the host and firmware QMI
states being out of sync.

Fixes: 300ed425dfa9 ("remoteproc: qcom_q6v5_pas: Add SC7280 ADSP, CDSP & WPSS")
Cc: stable@vger.kernel.org
Signed-off-by: Balaji Pothunoori <quic_bpothuno@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20241018105911.165415-1-quic_bpothuno@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/remoteproc/qcom_q6v5_pas.c

index f4f4b3df3884ef9498d2f85e776b8c046f6175ec..793b1d274be33a6dd31493c960c4553d9e049ba0 100644 (file)
@@ -1356,7 +1356,7 @@ static const struct adsp_data sc7280_wpss_resource = {
        .crash_reason_smem = 626,
        .firmware_name = "wpss.mdt",
        .pas_id = 6,
-       .auto_boot = true,
+       .auto_boot = false,
        .proxy_pd_names = (char*[]){
                "cx",
                "mx",