Propagate errors from intel_hdmi_init_connector() to be able to handle
them at callers. This is similar to intel_dp_init_connector().

Cc: Sergey Senozhatsky <[email protected]>
Cc: Ville Syrjala <[email protected]>
Signed-off-by: Jani Nikula <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_hdmi.c | 10 ++++++----
 drivers/gpu/drm/i915/display/intel_hdmi.h |  4 ++--
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c 
b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 23c270a8c4aa..57d53107c2bd 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -3042,7 +3042,7 @@ void intel_infoframe_init(struct intel_digital_port 
*dig_port)
        }
 }
 
-void intel_hdmi_init_connector(struct intel_digital_port *dig_port,
+bool intel_hdmi_init_connector(struct intel_digital_port *dig_port,
                               struct intel_connector *intel_connector)
 {
        struct intel_display *display = to_intel_display(dig_port);
@@ -3059,17 +3059,17 @@ void intel_hdmi_init_connector(struct 
intel_digital_port *dig_port,
                    intel_encoder->base.base.id, intel_encoder->base.name);
 
        if (DISPLAY_VER(display) < 12 && drm_WARN_ON(dev, port == PORT_A))
-               return;
+               return false;
 
        if (drm_WARN(dev, dig_port->max_lanes < 4,
                     "Not enough lanes (%d) for HDMI on [ENCODER:%d:%s]\n",
                     dig_port->max_lanes, intel_encoder->base.base.id,
                     intel_encoder->base.name))
-               return;
+               return false;
 
        ddc_pin = intel_hdmi_ddc_pin(intel_encoder);
        if (!ddc_pin)
-               return;
+               return false;
 
        drm_connector_init_with_ddc(dev, connector,
                                    &intel_hdmi_connector_funcs,
@@ -3114,6 +3114,8 @@ void intel_hdmi_init_connector(struct intel_digital_port 
*dig_port,
                                           &conn_info);
        if (!intel_hdmi->cec_notifier)
                drm_dbg_kms(display->drm, "CEC notifier get failed\n");
+
+       return true;
 }
 
 /*
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.h 
b/drivers/gpu/drm/i915/display/intel_hdmi.h
index 466f48df8a74..ef91457bed42 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.h
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.h
@@ -22,8 +22,8 @@ struct intel_encoder;
 struct intel_hdmi;
 union hdmi_infoframe;
 
-void intel_hdmi_init_connector(struct intel_digital_port *dig_port,
-                              struct intel_connector *intel_connector);
+bool intel_hdmi_init_connector(struct intel_digital_port *dig_port,
+                             struct intel_connector *intel_connector);
 bool intel_hdmi_compute_has_hdmi_sink(struct intel_encoder *encoder,
                                      const struct intel_crtc_state *crtc_state,
                                      const struct drm_connector_state 
*conn_state);
-- 
2.39.5

Reply via email to