[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3541e223-6a06-40f6-ab32-1b9baf718371@ti.com>
Date: Tue, 1 Jul 2025 17:34:16 +0530
From: Devarsh Thakkar <devarsht@...com>
To: Jayesh Choudhary <j-choudhary@...com>, <jyri.sarha@....fi>,
<maarten.lankhorst@...ux.intel.com>, <mripard@...nel.org>,
<tzimmermann@...e.de>, <dri-devel@...ts.freedesktop.org>,
<tomi.valkeinen@...asonboard.com>, <mwalle@...nel.org>
CC: <airlied@...il.com>, <simona@...ll.ch>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 1/3] drm/tidss: oldi: Add property to identify OLDI
supported VP
On 01/07/25 15:25, Jayesh Choudhary wrote:
> TIDSS should know which VP has OLDI output to avoid calling clock
> functions for that VP as those are controlled by oldi driver. Add a
> property "is_oldi_vp" to "tidss_device" structure for that. Mark it
> 'true' in tidss_oldi_init() and 'false' in tidss_oldi_deinit().
>
> Signed-off-by: Jayesh Choudhary <j-choudhary@...com>
Reviewed-by: Devarsh Thakkar <devarsht@...com>
Regards
Devarsh
> ---
> drivers/gpu/drm/tidss/tidss_drv.h | 2 ++
> drivers/gpu/drm/tidss/tidss_oldi.c | 2 ++
> 2 files changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/tidss/tidss_drv.h b/drivers/gpu/drm/tidss/tidss_drv.h
> index 0ae24f645582..82beaaceadb3 100644
> --- a/drivers/gpu/drm/tidss/tidss_drv.h
> +++ b/drivers/gpu/drm/tidss/tidss_drv.h
> @@ -24,6 +24,8 @@ struct tidss_device {
>
> const struct dispc_features *feat;
> struct dispc_device *dispc;
> + bool is_oldi_vp[TIDSS_MAX_PORTS];
> +
>
> unsigned int num_crtcs;
> struct drm_crtc *crtcs[TIDSS_MAX_PORTS];
> diff --git a/drivers/gpu/drm/tidss/tidss_oldi.c b/drivers/gpu/drm/tidss/tidss_oldi.c
> index b0f99656e87e..63e07c8edeaa 100644
> --- a/drivers/gpu/drm/tidss/tidss_oldi.c
> +++ b/drivers/gpu/drm/tidss/tidss_oldi.c
> @@ -430,6 +430,7 @@ void tidss_oldi_deinit(struct tidss_device *tidss)
> for (int i = 0; i < tidss->num_oldis; i++) {
> if (tidss->oldis[i]) {
> drm_bridge_remove(&tidss->oldis[i]->bridge);
> + tidss->is_oldi_vp[tidss->oldis[i]->parent_vp] = false;
> tidss->oldis[i] = NULL;
> }
> }
> @@ -579,6 +580,7 @@ int tidss_oldi_init(struct tidss_device *tidss)
> oldi->bridge.timings = &default_tidss_oldi_timings;
>
> tidss->oldis[tidss->num_oldis++] = oldi;
> + tidss->is_oldi_vp[oldi->parent_vp] = true;
> oldi->tidss = tidss;
>
> drm_bridge_add(&oldi->bridge);
Powered by blists - more mailing lists