|
@@ -14,6 +14,7 @@
|
|
#include <drm/drmP.h>
|
|
#include <drm/drmP.h>
|
|
#include <drm/drm_crtc.h>
|
|
#include <drm/drm_crtc.h>
|
|
#include <drm/drm_crtc_helper.h>
|
|
#include <drm/drm_crtc_helper.h>
|
|
|
|
+#include <drm/drm_of.h>
|
|
#include <linux/kernel.h>
|
|
#include <linux/kernel.h>
|
|
#include <linux/component.h>
|
|
#include <linux/component.h>
|
|
#include <linux/platform_device.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 device *dev = &pdev->dev;
|
|
struct mtk_dpi *dpi;
|
|
struct mtk_dpi *dpi;
|
|
struct resource *mem;
|
|
struct resource *mem;
|
|
- struct device_node *bridge_node;
|
|
|
|
int comp_id;
|
|
int comp_id;
|
|
int ret;
|
|
int ret;
|
|
|
|
|
|
@@ -714,16 +714,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
|
|
return -EINVAL;
|
|
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);
|
|
comp_id = mtk_ddp_comp_get_id(dev->of_node, MTK_DPI);
|
|
if (comp_id < 0) {
|
|
if (comp_id < 0) {
|