From: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
To: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>,
Dikshita Agarwal <dikshita.agarwal@oss.qualcomm.com>,
Abhinav Kumar <abhinav.kumar@linux.dev>,
Bryan O'Donoghue <bod@kernel.org>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Hans Verkuil <hverkuil@kernel.org>,
Stefan Schmidt <stefan.schmidt@linaro.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Stanimir Varbanov <stanimir.k.varbanov@gmail.com>,
Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>,
Robin Murphy <robin.murphy@arm.com>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>
Cc: linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
iommu@lists.linux.dev
Subject: Re: [PATCH v4 09/13] media: iris: Use power domain type to look up pd_devs index
Date: Wed, 6 May 2026 20:18:23 +0530 [thread overview]
Message-ID: <351f5afc-784d-4c1a-a386-199bd528723a@oss.qualcomm.com> (raw)
In-Reply-To: <20260505-glymur-v4-9-17571dbd1caa@oss.qualcomm.com>
On 5/5/2026 12:29 PM, Vishnu Reddy wrote:
> The pmdomain_tbl was a array of strings holding only the power domain
> names. Callers had to pass a pd_devs[] pointer indexed directly by the
> platform_pm_domain_type enum value to iris_enable_power_domains() and
> iris_disable_power_domains().
>
> A future platform may need to introduce a new enum value that aliases
> an existing one (e.g. IRIS_VCODEC1_POWER_DOMAIN aliasing the
> IRIS_VPP0_HW_POWER_DOMAIN on Glymur), which would break the assumption
> that enum values map 1:1 to pd_devs[] indices.
>
> To fix this, replace the string array with a new struct platform_pd_data
> that pairs each power domain name with its platform_pm_domain_type. Add
> a helper iris_get_pd_index_by_type() that walks this table and returns
> the correct pd_devs[] index for a given type.
>
> Update iris_enable_power_domains() and iris_disable_power_domains()
> to accept a platform_pm_domain_type instead of a struct device pointer.
> They now call the helper internally to resolve the index, removing the
> need for callers to do the index lookup themselves.
>
> This prepares the driver for adding new platforms where power domain enum
> values cannot be used directly as pd_devs[] indices.
>
> Signed-off-by: Vishnu Reddy <busanna.reddy@oss.qualcomm.com>
> ---
> .../platform/qcom/iris/iris_platform_common.h | 9 +++-
> .../media/platform/qcom/iris/iris_platform_gen1.c | 18 +++++---
> .../media/platform/qcom/iris/iris_platform_gen2.c | 24 ++++++----
> drivers/media/platform/qcom/iris/iris_probe.c | 4 +-
> drivers/media/platform/qcom/iris/iris_resources.c | 44 +++++++++++++++++-
> drivers/media/platform/qcom/iris/iris_resources.h | 6 ++-
> drivers/media/platform/qcom/iris/iris_vpu3x.c | 7 ++-
> drivers/media/platform/qcom/iris/iris_vpu4x.c | 52 ++++++++--------------
> drivers/media/platform/qcom/iris/iris_vpu_common.c | 23 +++++-----
> 9 files changed, 116 insertions(+), 71 deletions(-)
>
> diff --git a/drivers/media/platform/qcom/iris/iris_platform_common.h b/drivers/media/platform/qcom/iris/iris_platform_common.h
> index 30e9d4d288c6..7d59e6364e9d 100644
> --- a/drivers/media/platform/qcom/iris/iris_platform_common.h
> +++ b/drivers/media/platform/qcom/iris/iris_platform_common.h
> @@ -212,6 +212,12 @@ enum platform_pm_domain_type {
> IRIS_APV_HW_POWER_DOMAIN,
> };
>
> +struct platform_pd_data {
> + enum platform_pm_domain_type *pd_types;
> + const char **pd_names;
> + u32 pd_count;
> +};
> +
<snip>
>
> -int iris_enable_power_domains(struct iris_core *core, struct device *pd_dev)
> +static int iris_get_pd_index_by_type(struct iris_core *core, enum platform_pm_domain_type pd_type)
> {
> + const struct platform_pd_data *pd_tbl;
> + u32 pd_count, i;
> +
> + pd_tbl = core->iris_platform_data->pmdomain_tbl;
> + pd_count = core->iris_platform_data->pmdomain_tbl->pd_count;
pd_count can be dropped, use pd_tbl->pd_count instead.
with that fixed,
Reviewed-by: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
next prev parent reply other threads:[~2026-05-06 14:48 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-05 6:59 [PATCH v4 00/13] media: iris: Add support for glymur platform Vishnu Reddy
2026-05-05 6:59 ` [PATCH v4 01/13] media: iris: Fix VM count passed to firmware Vishnu Reddy
2026-05-05 6:59 ` [PATCH v4 02/13] dt-bindings: media: qcom,venus: Remove clock, power-domain, and iommus from common schema Vishnu Reddy
2026-05-06 6:41 ` Krzysztof Kozlowski
2026-05-06 9:32 ` Vishnu Reddy
2026-05-06 13:09 ` Krzysztof Kozlowski
2026-05-06 16:28 ` Vishnu Reddy
2026-05-05 6:59 ` [PATCH v4 03/13] dt-bindings: media: qcom,glymur-iris: Add glymur video codec Vishnu Reddy
2026-05-06 7:18 ` Krzysztof Kozlowski
2026-05-05 6:59 ` [PATCH v4 04/13] media: iris: Add iris vpu bus support Vishnu Reddy
2026-05-06 14:15 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 05/13] iommu: Add iris-vpu-bus to iommu_buses Vishnu Reddy
2026-05-05 6:59 ` [PATCH v4 06/13] media: iris: Add context bank hooks for platform specific initialization Vishnu Reddy
2026-05-06 14:26 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 07/13] media: iris: Enable Secure PAS support with IOMMU managed by Linux Vishnu Reddy
2026-05-06 5:21 ` Mukesh Ojha
2026-05-06 16:36 ` Vishnu Reddy
2026-05-05 6:59 ` [PATCH v4 08/13] media: iris: Rename clock and power domain macros to use vcodec prefix Vishnu Reddy
2026-05-06 14:42 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 09/13] media: iris: Use power domain type to look up pd_devs index Vishnu Reddy
2026-05-06 14:48 ` Vikash Garodia [this message]
2026-05-05 6:59 ` [PATCH v4 10/13] media: iris: Add power sequence for Glymur Vishnu Reddy
2026-05-06 15:15 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 11/13] media: iris: Add support to select core for dual core platforms Vishnu Reddy
2026-05-06 15:50 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 12/13] media: iris: Add platform data for glymur Vishnu Reddy
2026-05-06 15:56 ` Vikash Garodia
2026-05-05 6:59 ` [PATCH v4 13/13] arm64: dts: qcom: glymur: Add iris video node Vishnu Reddy
2026-05-06 16:02 ` Vikash Garodia
2026-05-06 6:44 ` [PATCH v4 00/13] media: iris: Add support for glymur platform Krzysztof Kozlowski
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=351f5afc-784d-4c1a-a386-199bd528723a@oss.qualcomm.com \
--to=vikash.garodia@oss.qualcomm.com \
--cc=abhinav.kumar@linux.dev \
--cc=andersson@kernel.org \
--cc=bod@kernel.org \
--cc=busanna.reddy@oss.qualcomm.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dikshita.agarwal@oss.qualcomm.com \
--cc=hverkuil@kernel.org \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=robh@kernel.org \
--cc=robin.murphy@arm.com \
--cc=stanimir.k.varbanov@gmail.com \
--cc=stefan.schmidt@linaro.org \
--cc=will@kernel.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