devm_drm_of_get_bridge is capable of looking up the downstream
bridge and panel and trying to add a panel bridge if the panel
is found.

Replace explicit finding calls with devm_drm_of_get_bridge.

Reviewed-by: Guido Günther <a...@sigxcpu.org>
Signed-off-by: Jagan Teki <ja...@amarulasolutions.com>
---
Changes for v3:
- drop panel.h
- collect Guido r-b
Changes for v2:
- split the patch

 drivers/gpu/drm/bridge/nwl-dsi.c | 19 +++----------------
 1 file changed, 3 insertions(+), 16 deletions(-)

diff --git a/drivers/gpu/drm/bridge/nwl-dsi.c b/drivers/gpu/drm/bridge/nwl-dsi.c
index 30aacd939dc3..88d05a33f658 100644
--- a/drivers/gpu/drm/bridge/nwl-dsi.c
+++ b/drivers/gpu/drm/bridge/nwl-dsi.c
@@ -25,7 +25,6 @@
 #include <drm/drm_bridge.h>
 #include <drm/drm_mipi_dsi.h>
 #include <drm/drm_of.h>
-#include <drm/drm_panel.h>
 #include <drm/drm_print.h>
 
 #include <video/mipi_display.h>
@@ -916,22 +915,10 @@ static int nwl_dsi_bridge_attach(struct drm_bridge 
*bridge,
 {
        struct nwl_dsi *dsi = bridge_to_dsi(bridge);
        struct drm_bridge *panel_bridge;
-       struct drm_panel *panel;
-       int ret;
-
-       ret = drm_of_find_panel_or_bridge(dsi->dev->of_node, 1, 0, &panel,
-                                         &panel_bridge);
-       if (ret)
-               return ret;
-
-       if (panel) {
-               panel_bridge = drm_panel_bridge_add(panel);
-               if (IS_ERR(panel_bridge))
-                       return PTR_ERR(panel_bridge);
-       }
 
-       if (!panel_bridge)
-               return -EPROBE_DEFER;
+       panel_bridge = devm_drm_of_get_bridge(dsi->dev, dsi->dev->of_node, 1, 
0);
+       if (IS_ERR(panel_bridge))
+               return PTR_ERR(panel_bridge);
 
        return drm_bridge_attach(bridge->encoder, panel_bridge, bridge, flags);
 }
-- 
2.25.1

Reply via email to