drm/mediatek: convert dpi driver to use drm_of_find_panel_or_bridge
authorchunhui dai <chunhui.dai@mediatek.com>
Wed, 3 Oct 2018 03:41:45 +0000 (11:41 +0800)
committerCK Hu <ck.hu@mediatek.com>
Wed, 3 Oct 2018 03:56:32 +0000 (11:56 +0800)
Convert dpi driver to use drm_of_find_panel_or_bridge.
This changes some error messages to debug messages (in the graph core).
Graph connections are often "no connects" depending on the particular
board, so we want to avoid spurious messages. Plus the kernel is not a
DT validator.
related links:
[1] https://lkml.org/lkml/2017/2/3/716
[2] https://lkml.org/lkml/2017/2/3/719

Signed-off-by: chunhui dai <chunhui.dai@mediatek.com>
Signed-off-by: CK Hu <ck.hu@mediatek.com>
drivers/gpu/drm/mediatek/mtk_dpi.c

index 0dbe9345fa2e610987d12ccdd7166112bafe0ef3..08915e1765f800dbee18375a87f9eb67fee9aa12 100644 (file)
@@ -14,6 +14,7 @@
 #include <drm/drmP.h>
 #include <drm/drm_crtc.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_of.h>
 #include <linux/kernel.h>
 #include <linux/component.h>
 #include <linux/platform_device.h>
@@ -668,7 +669,6 @@ static int mtk_dpi_probe(struct platform_device *pdev)
        struct device *dev = &pdev->dev;
        struct mtk_dpi *dpi;
        struct resource *mem;
-       struct device_node *bridge_node;
        int comp_id;
        int ret;
 
@@ -714,16 +714,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
                return -EINVAL;
        }
 
-       bridge_node = of_graph_get_remote_node(dev->of_node, 0, 0);
-       if (!bridge_node)
-               return -ENODEV;
-
-       dev_info(dev, "Found bridge node: %pOF\n", bridge_node);
+       ret = drm_of_find_panel_or_bridge(dev->of_node, 0, 0,
+                                         NULL, &dpi->bridge);
+       if (ret)
+               return ret;
 
-       dpi->bridge = of_drm_find_bridge(bridge_node);
-       of_node_put(bridge_node);
-       if (!dpi->bridge)
-               return -EPROBE_DEFER;
+       dev_info(dev, "Found bridge node: %pOF\n", dpi->bridge->of_node);
 
        comp_id = mtk_ddp_comp_get_id(dev->of_node, MTK_DPI);
        if (comp_id < 0) {