Re: [PATCH v11 3/9] media: iris: Replace enum-indexed clock and power domain tables with per-block structures

From: Dmitry Baryshkov

Date: Tue Sep 22 2026 - 09:13:51 EST


On Thu, Sep 17, 2026 at 10:30:22AM +0530, Vishnu Reddy wrote:
> As new platforms are added, the platform_clk_type and
> platform_pm_domain_type enums keep growing. Every new clock or
> power domain requires a new enum entry, and every enable/disable
> path has to loop through the clock table to find the right clock
> by enum value, adding overhead and boilerplate on each path.
> The enum index space is also shared across all hardware blocks.
> On the Glymur platform, the VPP0 index for VPU4x and the VCODEC1
> index clash, making it error-prone to extend support without
> breaking existing platforms.
> Replace the flat tables and enum-based lookups with
> iris_power_domain, which bundles a power domain device and its
> associated clocks together per hardware block. Platform data
> describes each block via iris_power_domain_data, and the enable
> and disable helpers operate directly on an iris_power_domain
> instance, removing the need for any index lookup at runtime.
>
> Signed-off-by: Vishnu Reddy <busanna.reddy@xxxxxxxxxxxxxxxx>
> ---
> drivers/media/platform/qcom/iris/iris_core.h | 23 +++-
> .../platform/qcom/iris/iris_platform_common.h | 41 ++----
> .../platform/qcom/iris/iris_platform_sc7280.h | 28 ++++-
> .../platform/qcom/iris/iris_platform_sm8250.h | 26 +++-
> .../platform/qcom/iris/iris_platform_sm8550.h | 26 +++-
> .../platform/qcom/iris/iris_platform_sm8750.h | 29 +++--
> .../media/platform/qcom/iris/iris_platform_vpu2.c | 20 +--
> .../media/platform/qcom/iris/iris_platform_vpu3x.c | 32 ++---
> .../platform/qcom/iris/iris_platform_x1p42100.h | 27 +++-
> drivers/media/platform/qcom/iris/iris_probe.c | 137 +++++++++++++++++++--
> drivers/media/platform/qcom/iris/iris_resources.c | 81 ++++++------
> drivers/media/platform/qcom/iris/iris_resources.h | 8 +-
> drivers/media/platform/qcom/iris/iris_vpu3x.c | 37 +-----
> drivers/media/platform/qcom/iris/iris_vpu4x.c | 137 +++------------------
> drivers/media/platform/qcom/iris/iris_vpu_common.c | 98 ++-------------
> 15 files changed, 347 insertions(+), 403 deletions(-)
>

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>


--
With best wishes
Dmitry