[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <zur4q7hcb2jujfxowrhoh7sxzkawadv4oe6vuemb75xnajq6gb@ti7hhpt3fb5m>
Date: Fri, 1 Aug 2025 14:01:36 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
To: Jayesh Choudhary <j-choudhary@...com>
Cc: andrzej.hajda@...el.com, neil.armstrong@...aro.org, rfoss@...nel.org,
Laurent.pinchart@...asonboard.com, mripard@...nel.org,
lumag@...nel.org, dianders@...omium.org,
dri-devel@...ts.freedesktop.org, tomi.valkeinen@...asonboard.com,
jonas@...boo.se, jernej.skrabec@...il.com,
maarten.lankhorst@...ux.intel.com, tzimmermann@...e.de,
airlied@...il.com, simona@...ll.ch, lyude@...hat.com,
luca.ceresoli@...tlin.com, viro@...iv.linux.org.uk,
andy.yan@...k-chips.com, linux@...blig.org, javierm@...hat.com,
linux-kernel@...r.kernel.org, devarsht@...com
Subject: Re: [PATCH v4 1/5] drm/bridge: cadence: cdns-mhdp8546-core: Remove
legacy support for connector initialisation in bridge
On Tue, Jun 24, 2025 at 11:14:44AM +0530, Jayesh Choudhary wrote:
> Now that we have DBANC framework, remove the connector initialisation code
> as that piece of code is not called if DRM_BRIDGE_ATTACH_NO_CONNECTOR flag
> is used. Only TI K3 platforms consume this driver and tidss (their display
> controller) has this flag set. So this legacy support can be dropped.
>
> Fixes: c932ced6b585 ("drm/tidss: Update encoder/bridge chain connect model")
> Signed-off-by: Jayesh Choudhary <j-choudhary@...com>
> ---
> .../drm/bridge/cadence/cdns-mhdp8546-core.c | 187 +-----------------
> 1 file changed, 10 insertions(+), 177 deletions(-)
>
> -
> -static int cdns_mhdp_connector_atomic_check(struct drm_connector *conn,
> - struct drm_atomic_state *state)
> -{
> - struct cdns_mhdp_device *mhdp = connector_to_mhdp(conn);
> - struct drm_connector_state *old_state, *new_state;
> - struct drm_crtc_state *crtc_state;
> - u64 old_cp, new_cp;
> -
> - if (!mhdp->hdcp_supported)
> - return 0;
> -
> - old_state = drm_atomic_get_old_connector_state(state, conn);
> - new_state = drm_atomic_get_new_connector_state(state, conn);
> - old_cp = old_state->content_protection;
> - new_cp = new_state->content_protection;
> -
> - if (old_state->hdcp_content_type != new_state->hdcp_content_type &&
> - new_cp != DRM_MODE_CONTENT_PROTECTION_UNDESIRED) {
> - new_state->content_protection = DRM_MODE_CONTENT_PROTECTION_DESIRED;
> - goto mode_changed;
> - }
> -
> - if (!new_state->crtc) {
> - if (old_cp == DRM_MODE_CONTENT_PROTECTION_ENABLED)
> - new_state->content_protection = DRM_MODE_CONTENT_PROTECTION_DESIRED;
> - return 0;
> - }
This is the only place which handled disabling of HDCP while disabling the connector.
> -
> - if (old_cp == new_cp ||
> - (old_cp == DRM_MODE_CONTENT_PROTECTION_DESIRED &&
> - new_cp == DRM_MODE_CONTENT_PROTECTION_ENABLED))
> - return 0;
> -
> -mode_changed:
> - crtc_state = drm_atomic_get_new_crtc_state(state, new_state->crtc);
> - crtc_state->mode_changed = true;
> -
> - return 0;
> -}
> -
--
With best wishes
Dmitry
Powered by blists - more mailing lists