drm/mediatek: exit earlier if failed to register audio driver
authorTzung-Bi Shih <tzungbi@google.com>
Thu, 6 Feb 2020 03:17:50 +0000 (11:17 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 11 Feb 2020 11:47:59 +0000 (11:47 +0000)
Exits earlier if register_audio_driver() returns errors.

Signed-off-by: Tzung-Bi Shih <tzungbi@google.com>
Acked-by: CK Hu <ck.hu@mediatek.com>
Link: https://lore.kernel.org/r/20200206102509.1.Ieba8d422486264eb7aaa3aa257620a1b0c74c6db@changeid
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/gpu/drm/mediatek/mtk_hdmi.c

index 5e4a4db..fcec06e 100644 (file)
@@ -1659,7 +1659,7 @@ static const struct hdmi_codec_ops mtk_hdmi_audio_codec_ops = {
        .get_eld = mtk_hdmi_audio_get_eld,
 };
 
-static void mtk_hdmi_register_audio_driver(struct device *dev)
+static int mtk_hdmi_register_audio_driver(struct device *dev)
 {
        struct hdmi_codec_pdata codec_data = {
                .ops = &mtk_hdmi_audio_codec_ops,
@@ -1672,9 +1672,10 @@ static void mtk_hdmi_register_audio_driver(struct device *dev)
                                             PLATFORM_DEVID_AUTO, &codec_data,
                                             sizeof(codec_data));
        if (IS_ERR(pdev))
-               return;
+               return PTR_ERR(pdev);
 
        DRM_INFO("%s driver bound to HDMI\n", HDMI_CODEC_DRV_NAME);
+       return 0;
 }
 
 static int mtk_drm_hdmi_probe(struct platform_device *pdev)
@@ -1708,7 +1709,11 @@ static int mtk_drm_hdmi_probe(struct platform_device *pdev)
                return ret;
        }
 
-       mtk_hdmi_register_audio_driver(dev);
+       ret = mtk_hdmi_register_audio_driver(dev);
+       if (ret) {
+               dev_err(dev, "Failed to register audio driver: %d\n", ret);
+               return ret;
+       }
 
        hdmi->bridge.funcs = &mtk_hdmi_bridge_funcs;
        hdmi->bridge.of_node = pdev->dev.of_node;