Currently lspcon_resume calls lspcon_init and in case of failure we get
error messages from lspcon_init and then again from lspcon_resume.

Just have a single error message in lspcon_init and convert all other
errors as dbg messages.

Signed-off-by: Ankit Nautiyal <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_lspcon.c | 27 +++++++++++----------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c 
b/drivers/gpu/drm/i915/display/intel_lspcon.c
index 16ee0dc179f7..3c3bc80e32f0 100644
--- a/drivers/gpu/drm/i915/display/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/display/intel_lspcon.c
@@ -680,24 +680,30 @@ bool lspcon_init(struct intel_digital_port *dig_port)
                return false;
 
        if (!lspcon_set_pcon_mode(lspcon)) {
-               drm_err(&i915->drm, "LSPCON mode change to PCON failed\n");
-               return false;
+               drm_dbg_kms(&i915->drm, "LSPCON mode change to PCON failed\n");
+               goto lspcon_init_failed;
        }
 
        if (drm_dp_read_dpcd_caps(&intel_dp->aux, intel_dp->dpcd) != 0) {
-               drm_err(&i915->drm, "LSPCON DPCD read failed\n");
-               return false;
+               drm_dbg_kms(&i915->drm, "LSPCON DPCD read failed\n");
+               goto lspcon_init_failed;
        }
 
        if (!lspcon_detect_vendor(lspcon)) {
-               drm_err(&i915->drm, "LSPCON vendor detection failed\n");
-               return false;
+               drm_dbg_kms(&i915->drm, "LSPCON vendor detection failed\n");
+               goto lspcon_init_failed;
        }
 
        connector->ycbcr_420_allowed = true;
        lspcon->active = true;
        drm_dbg_kms(&i915->drm, "Success: LSPCON init\n");
        return true;
+
+lspcon_init_failed:
+       drm_err(&i915->drm, "LSPCON init failed on port %c\n",
+               port_name(dig_port->base.port));
+
+       return false;
 }
 
 u32 intel_lspcon_infoframes_enabled(struct intel_encoder *encoder,
@@ -718,13 +724,8 @@ void lspcon_resume(struct intel_digital_port *dig_port)
        if (!intel_bios_encoder_is_lspcon(dig_port->base.devdata))
                return;
 
-       if (!lspcon->active) {
-               if (!lspcon_init(dig_port)) {
-                       drm_err(&i915->drm, "LSPCON init failed on port %c\n",
-                               port_name(dig_port->base.port));
-                       return;
-               }
-       }
+       if (!lspcon->active && !lspcon_init(dig_port))
+               return;
 
        expected_mode = lspcon_get_expected_mode(lspcon);
        if (expected_mode == DRM_LSPCON_MODE_PCON)
-- 
2.40.1

Reply via email to