> -----Original Message-----
> From: Intel-gfx <[email protected]> On Behalf Of Imre 
> Deak
> Sent: Monday, 1 June 2026 12.38
> To: [email protected]; [email protected]
> Cc: Nikula, Jani <[email protected]>
> Subject: [PATCH v2 05/22] drm/i915/dp_link_training: Use link_training as 
> base pointer in debugfs
> 
> Retrieve the link_training pointer from the connector and derive the DP 
> pointer from it in debugfs entries.
> 
> This prepares for a follow-up change where values exposed via debugfs entries 
> will be retrieved from the link training state.
> 
> v2: Join unnecessarily wrapped lines. (Jani)
> 
> Cc: Jani Nikula <[email protected]>

Reviewed-by: Mika Kahola <[email protected]>

> Signed-off-by: Imre Deak <[email protected]>
> ---
>  .../drm/i915/display/intel_dp_link_training.c | 20 ++++++++++++++-----
>  1 file changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_training.c 
> b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> index d8f1834e50433..4ecc00b7c9ff5 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> @@ -68,6 +68,11 @@ struct intel_dp_link_training {
>       struct intel_dp *dp;
>  };
> 
> +static struct intel_dp_link_training *connector_to_link_training(struct
> +intel_connector *connector) {
> +     return intel_attached_dp(connector)->link.training;
> +}
> +
>  static void intel_dp_reset_lttpr_common_caps(struct intel_dp *intel_dp)  {
>       memset(intel_dp->lttpr_common_caps, 0, 
> sizeof(intel_dp->lttpr_common_caps));
> @@ -2322,7 +2327,8 @@ static int 
> i915_dp_force_link_training_failure_show(void *data, u64 *val)  {
>       struct intel_connector *connector = to_intel_connector(data);
>       struct intel_display *display = to_intel_display(connector);
> -     struct intel_dp *intel_dp = intel_attached_dp(connector);
> +     struct intel_dp_link_training *link_training = 
> connector_to_link_training(connector);
> +     struct intel_dp *intel_dp = link_training->dp;
>       int err;
> 
>       err = 
> drm_modeset_lock_single_interruptible(&display->drm->mode_config.connection_mutex);
> @@ -2342,7 +2348,8 @@ static int 
> i915_dp_force_link_training_failure_write(void *data, u64 val)  {
>       struct intel_connector *connector = to_intel_connector(data);
>       struct intel_display *display = to_intel_display(connector);
> -     struct intel_dp *intel_dp = intel_attached_dp(connector);
> +     struct intel_dp_link_training *link_training = 
> connector_to_link_training(connector);
> +     struct intel_dp *intel_dp = link_training->dp;
>       int err;
> 
>       if (val > 2)
> @@ -2368,7 +2375,8 @@ static int i915_dp_force_link_retrain_show(void *data, 
> u64 *val)  {
>       struct intel_connector *connector = to_intel_connector(data);
>       struct intel_display *display = to_intel_display(connector);
> -     struct intel_dp *intel_dp = intel_attached_dp(connector);
> +     struct intel_dp_link_training *link_training = 
> connector_to_link_training(connector);
> +     struct intel_dp *intel_dp = link_training->dp;
>       int err;
> 
>       err = 
> drm_modeset_lock_single_interruptible(&display->drm->mode_config.connection_mutex);
> @@ -2388,7 +2396,8 @@ static int i915_dp_force_link_retrain_write(void *data, 
> u64 val)  {
>       struct intel_connector *connector = to_intel_connector(data);
>       struct intel_display *display = to_intel_display(connector);
> -     struct intel_dp *intel_dp = intel_attached_dp(connector);
> +     struct intel_dp_link_training *link_training = 
> connector_to_link_training(connector);
> +     struct intel_dp *intel_dp = link_training->dp;
>       int err;
> 
>       err = 
> drm_modeset_lock_single_interruptible(&display->drm->mode_config.connection_mutex);
> @@ -2413,7 +2422,8 @@ static int i915_dp_link_retrain_disabled_show(struct 
> seq_file *m, void *data)  {
>       struct intel_connector *connector = to_intel_connector(m->private);
>       struct intel_display *display = to_intel_display(connector);
> -     struct intel_dp *intel_dp = intel_attached_dp(connector);
> +     struct intel_dp_link_training *link_training = 
> connector_to_link_training(connector);
> +     struct intel_dp *intel_dp = link_training->dp;
>       int err;
> 
>       err = 
> drm_modeset_lock_single_interruptible(&display->drm->mode_config.connection_mutex);
> --
> 2.49.1

Reply via email to