From: Konrad Dybcio <konrad.dybcio@linaro.org>
To: Stanimir Varbanov <stanimir.k.varbanov@gmail.com>,
Vikash Garodia <quic_vgarodia@quicinc.com>,
Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Dikshita Agarwal <dikshita@qti.qualcomm.com>,
Bryan O'Donoghue <bryan.odonoghue@linaro.org>,
Mansur Alisha Shaik <mansur@codeaurora.org>,
Jonathan Marek <jonathan@marek.ca>,
Hans Verkuil <hans.verkuil@cisco.com>,
Dikshita Agarwal <quic_dikshita@quicinc.com>
Cc: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
Stanimir Varbanov <stanimir.varbanov@linaro.org>,
linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org,
linux-kernel@vger.kernel.org,
Marijn Suijten <marijn.suijten@somainline.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Vikash Garodia <quic_vgarodia@quicinc.com>
Subject: [PATCH v2 01/18] media: venus: hfi_venus: Only consider sys_idle_indicator on V1
Date: Thu, 04 May 2023 10:00:57 +0200 [thread overview]
Message-ID: <20230228-topic-venus-v2-1-d95d14949c79@linaro.org> (raw)
In-Reply-To: <20230228-topic-venus-v2-0-d95d14949c79@linaro.org>
As per information from Qualcomm [1], this property is not really
supported beyond msm8916 (HFI V1) and some newer HFI versions really
dislike receiving it, going as far as crashing the device.
Only consider toggling it (via the module option) on HFIV1.
While at it, get rid of the global static variable (which defaulted
to zero) which was never explicitly assigned to for V1.
Note: [1] is a reply to the actual message in question, as lore did not
properly receive some of the emails..
[1] https://lore.kernel.org/lkml/955cd520-3881-0c22-d818-13fe9a47e124@linaro.org/
Fixes: 7ed9e0b3393c ("media: venus: hfi, vdec: v6 Add IS_V6() to existing IS_V4() if locations")
Fixes: d96d3f30c0f2 ("[media] media: venus: hfi: add Venus HFI files")
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
drivers/media/platform/qcom/venus/hfi_venus.c | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)
diff --git a/drivers/media/platform/qcom/venus/hfi_venus.c b/drivers/media/platform/qcom/venus/hfi_venus.c
index 2ad40b3945b0..bff435abd59b 100644
--- a/drivers/media/platform/qcom/venus/hfi_venus.c
+++ b/drivers/media/platform/qcom/venus/hfi_venus.c
@@ -131,7 +131,6 @@ struct venus_hfi_device {
static bool venus_pkt_debug;
int venus_fw_debug = HFI_DEBUG_MSG_ERROR | HFI_DEBUG_MSG_FATAL;
-static bool venus_sys_idle_indicator;
static bool venus_fw_low_power_mode = true;
static int venus_hw_rsp_timeout = 1000;
static bool venus_fw_coverage;
@@ -947,17 +946,12 @@ static int venus_sys_set_default_properties(struct venus_hfi_device *hdev)
if (ret)
dev_warn(dev, "setting fw debug msg ON failed (%d)\n", ret);
- /*
- * Idle indicator is disabled by default on some 4xx firmware versions,
- * enable it explicitly in order to make suspend functional by checking
- * WFI (wait-for-interrupt) bit.
- */
- if (IS_V4(hdev->core) || IS_V6(hdev->core))
- venus_sys_idle_indicator = true;
-
- ret = venus_sys_set_idle_message(hdev, venus_sys_idle_indicator);
- if (ret)
- dev_warn(dev, "setting idle response ON failed (%d)\n", ret);
+ /* HFI_PROPERTY_SYS_IDLE_INDICATOR is not supported beyond 8916 (HFI V1) */
+ if (IS_V1(hdev->core)) {
+ ret = venus_sys_set_idle_message(hdev, false);
+ if (ret)
+ dev_warn(dev, "setting idle response ON failed (%d)\n", ret);
+ }
ret = venus_sys_set_power_control(hdev, venus_fw_low_power_mode);
if (ret)
--
2.40.1
next prev parent reply other threads:[~2023-05-04 8:01 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-04 8:00 [PATCH v2 00/18] Venus QoL / maintainability fixes Konrad Dybcio
2023-05-04 8:00 ` Konrad Dybcio [this message]
2023-05-05 12:28 ` [PATCH v2 01/18] media: venus: hfi_venus: Only consider sys_idle_indicator on V1 Vikash Garodia
2023-05-04 8:00 ` [PATCH v2 02/18] media: venus: hfi_venus: Write to VIDC_CTRL_INIT after unmasking interrupts Konrad Dybcio
2023-05-05 12:33 ` Vikash Garodia
2023-05-05 18:48 ` Konrad Dybcio
2023-05-09 11:42 ` Vikash Garodia
2023-05-04 8:00 ` [PATCH v2 03/18] media: venus: Remap bufreq fields on HFI6XX Konrad Dybcio
2023-05-05 12:38 ` Vikash Garodia
2023-05-05 19:02 ` Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 04/18] media: venus: Introduce VPU version distinction Konrad Dybcio
2023-05-05 12:49 ` Vikash Garodia
2023-05-04 8:01 ` [PATCH v2 05/18] media: venus: Add vpu_version to most SoCs Konrad Dybcio
2023-05-05 12:52 ` Vikash Garodia
2023-05-04 8:01 ` [PATCH v2 06/18] media: venus: firmware: Leave a clue for homegrown porters Konrad Dybcio
2023-05-05 12:57 ` Vikash Garodia
2023-05-05 13:00 ` Vikash Garodia
2023-05-05 19:24 ` Konrad Dybcio
2023-05-09 12:00 ` Vikash Garodia
2023-05-04 8:01 ` [PATCH v2 07/18] media: venus: hfi_venus: Sanitize venus_boot_core() per-VPU-version Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 08/18] media: venus: core: Assign registers based on VPU version Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 09/18] media: venus: hfi_venus: Fix version checks in venus_halt_axi() Konrad Dybcio
2023-05-05 13:21 ` Vikash Garodia
2023-05-05 14:43 ` Dmitry Baryshkov
2023-05-05 15:28 ` Vikash Garodia
2023-05-05 19:12 ` Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 10/18] media: venus: hfi_venus: Fix version checks in venus_isr() Konrad Dybcio
2023-05-05 13:29 ` Vikash Garodia
2023-05-05 19:13 ` Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 11/18] media: venus: hfi_venus: Fix version check in venus_cpu_and_video_core_idle() Konrad Dybcio
2023-05-05 13:36 ` Vikash Garodia
2023-05-05 19:14 ` Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 12/18] media: venus: hfi_venus: Fix version check in venus_cpu_idle_and_pc_ready() Konrad Dybcio
2023-05-05 13:40 ` Vikash Garodia
2023-05-05 19:14 ` Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 13/18] media: venus: firmware: Correct IS_V6() checks Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 14/18] media: venus: hfi_platform: Check vpu_version instead of device compatible Konrad Dybcio
2023-05-05 13:47 ` Vikash Garodia
2023-05-04 8:01 ` [PATCH v2 15/18] media: venus: vdec: Fix version check in vdec_set_work_route() Konrad Dybcio
2023-05-05 14:02 ` Vikash Garodia
2023-05-05 19:15 ` Konrad Dybcio
2023-05-09 12:12 ` Vikash Garodia
2023-05-04 8:01 ` [PATCH v2 16/18] media: venus: Introduce accessors for remapped hfi_buffer_reqs members Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 17/18] media: venus: Use newly-introduced hfi_buffer_requirements accessors Konrad Dybcio
2023-05-04 8:01 ` [PATCH v2 18/18] media: venus: hfi_venus: Restrict writing SCIACMDARG3 to Venus V1/V2 Konrad Dybcio
2023-05-12 3:01 ` [PATCH v2 00/18] Venus QoL / maintainability fixes Bryan O'Donoghue
2023-05-16 12:57 ` Vikash Garodia
2023-05-17 20:25 ` Konrad Dybcio
2023-05-17 20:25 ` Konrad Dybcio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230228-topic-venus-v2-1-d95d14949c79@linaro.org \
--to=konrad.dybcio@linaro.org \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=bryan.odonoghue@linaro.org \
--cc=dikshita@qti.qualcomm.com \
--cc=hans.verkuil@cisco.com \
--cc=jonathan@marek.ca \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mansur@codeaurora.org \
--cc=marijn.suijten@somainline.org \
--cc=mchehab+huawei@kernel.org \
--cc=mchehab@kernel.org \
--cc=quic_dikshita@quicinc.com \
--cc=quic_vgarodia@quicinc.com \
--cc=stanimir.k.varbanov@gmail.com \
--cc=stanimir.varbanov@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox