Add aux_busy_last_status to intel_dp. Don't bother with initializing to
all ones; the only difference is potentially missing logging for one
error case if the readout is all zeros.

Signed-off-by: Jani Nikula <jani.nik...@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display_types.h | 1 +
 drivers/gpu/drm/i915/display/intel_dp.c            | 5 ++---
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h 
b/drivers/gpu/drm/i915/display/intel_display_types.h
index 976669f01a8c..1602aac7ca0f 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1185,6 +1185,7 @@ struct intel_dp {
        /* sink or branch descriptor */
        struct drm_dp_desc desc;
        struct drm_dp_aux aux;
+       u32 aux_busy_last_status;
        u8 train_set[4];
        int panel_power_up_delay;
        int panel_power_down_delay;
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index f9fc9a1383e3..c697f551a1b0 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -1347,13 +1347,12 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
        trace_i915_reg_rw(false, ch_ctl, status, sizeof(status), true);
 
        if (try == 3) {
-               static u32 last_status = -1;
                const u32 status = intel_uncore_read(uncore, ch_ctl);
 
-               if (status != last_status) {
+               if (status != intel_dp->aux_busy_last_status) {
                        WARN(1, "dp_aux_ch not started status 0x%08x\n",
                             status);
-                       last_status = status;
+                       intel_dp->aux_busy_last_status = status;
                }
 
                ret = -EBUSY;
-- 
2.20.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to