drm/ast: Fail if connector initialization fails
authorThomas Zimmermann <tzimmermann@suse.de>
Mon, 7 Feb 2022 14:15:36 +0000 (15:15 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Tue, 8 Feb 2022 12:37:52 +0000 (13:37 +0100)
Update the connector code to fail if the connector could not be
initialized. The current code just ignored the error and failed
later when the connector was supposed to be used.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220207141544.30015-2-tzimmermann@suse.de
drivers/gpu/drm/ast/ast_mode.c

index ab52efb..51cc6fe 100644 (file)
@@ -1322,18 +1322,21 @@ static int ast_connector_init(struct drm_device *dev)
        struct ast_connector *ast_connector = &ast->connector;
        struct drm_connector *connector = &ast_connector->base;
        struct drm_encoder *encoder = &ast->encoder;
+       int ret;
 
        ast_connector->i2c = ast_i2c_create(dev);
        if (!ast_connector->i2c)
                drm_err(dev, "failed to add ddc bus for connector\n");
 
        if (ast_connector->i2c)
-               drm_connector_init_with_ddc(dev, connector, &ast_connector_funcs,
-                                           DRM_MODE_CONNECTOR_VGA,
-                                           &ast_connector->i2c->adapter);
+               ret = drm_connector_init_with_ddc(dev, connector, &ast_connector_funcs,
+                                                 DRM_MODE_CONNECTOR_VGA,
+                                                 &ast_connector->i2c->adapter);
        else
-               drm_connector_init(dev, connector, &ast_connector_funcs,
-                                  DRM_MODE_CONNECTOR_VGA);
+               ret = drm_connector_init(dev, connector, &ast_connector_funcs,
+                                        DRM_MODE_CONNECTOR_VGA);
+       if (ret)
+               return ret;
 
        drm_connector_helper_add(connector, &ast_connector_helper_funcs);