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]>
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