aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/vc4/vc4_hdmi.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
index fd2644d231ff..26b6b067567c 100644
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
@@ -465,12 +465,6 @@ static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
465 if (IS_ERR(hdmi->hd_regs)) 465 if (IS_ERR(hdmi->hd_regs))
466 return PTR_ERR(hdmi->hd_regs); 466 return PTR_ERR(hdmi->hd_regs);
467 467
468 ddc_node = of_parse_phandle(dev->of_node, "ddc", 0);
469 if (!ddc_node) {
470 DRM_ERROR("Failed to find ddc node in device tree\n");
471 return -ENODEV;
472 }
473
474 hdmi->pixel_clock = devm_clk_get(dev, "pixel"); 468 hdmi->pixel_clock = devm_clk_get(dev, "pixel");
475 if (IS_ERR(hdmi->pixel_clock)) { 469 if (IS_ERR(hdmi->pixel_clock)) {
476 DRM_ERROR("Failed to get pixel clock\n"); 470 DRM_ERROR("Failed to get pixel clock\n");
@@ -482,7 +476,14 @@ static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
482 return PTR_ERR(hdmi->hsm_clock); 476 return PTR_ERR(hdmi->hsm_clock);
483 } 477 }
484 478
479 ddc_node = of_parse_phandle(dev->of_node, "ddc", 0);
480 if (!ddc_node) {
481 DRM_ERROR("Failed to find ddc node in device tree\n");
482 return -ENODEV;
483 }
484
485 hdmi->ddc = of_find_i2c_adapter_by_node(ddc_node); 485 hdmi->ddc = of_find_i2c_adapter_by_node(ddc_node);
486 of_node_put(ddc_node);
486 if (!hdmi->ddc) { 487 if (!hdmi->ddc) {
487 DRM_DEBUG("Failed to get ddc i2c adapter by node\n"); 488 DRM_DEBUG("Failed to get ddc i2c adapter by node\n");
488 return -EPROBE_DEFER; 489 return -EPROBE_DEFER;