Now we can use of_graph_get_next_port() for port parsing.
Use it on omapfb.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto...@renesas.com>
---
 drivers/video/fbdev/omap2/omapfb/dss/dss-of.c | 48 +------------------
 drivers/video/fbdev/omap2/omapfb/dss/dss.c    |  9 ++--
 include/video/omapfb_dss.h                    |  4 --
 3 files changed, 6 insertions(+), 55 deletions(-)

diff --git a/drivers/video/fbdev/omap2/omapfb/dss/dss-of.c 
b/drivers/video/fbdev/omap2/omapfb/dss/dss-of.c
index fe6c72d03216..321ae18f2747 100644
--- a/drivers/video/fbdev/omap2/omapfb/dss/dss-of.c
+++ b/drivers/video/fbdev/omap2/omapfb/dss/dss-of.c
@@ -15,52 +15,6 @@
 
 #include "dss.h"
 
-struct device_node *
-omapdss_of_get_next_port(const struct device_node *parent,
-                        struct device_node *prev)
-{
-       struct device_node *port = NULL;
-
-       if (!parent)
-               return NULL;
-
-       if (!prev) {
-               struct device_node *ports;
-               /*
-                * It's the first call, we have to find a port subnode
-                * within this node or within an optional 'ports' node.
-                */
-               ports = of_get_child_by_name(parent, "ports");
-               if (ports)
-                       parent = ports;
-
-               port = of_get_child_by_name(parent, "port");
-
-               /* release the 'ports' node */
-               of_node_put(ports);
-       } else {
-               struct device_node *ports;
-
-               ports = of_get_parent(prev);
-               if (!ports)
-                       return NULL;
-
-               do {
-                       port = of_get_next_child(ports, prev);
-                       if (!port) {
-                               of_node_put(ports);
-                               return NULL;
-                       }
-                       prev = port;
-               } while (!of_node_name_eq(port, "port"));
-
-               of_node_put(ports);
-       }
-
-       return port;
-}
-EXPORT_SYMBOL_GPL(omapdss_of_get_next_port);
-
 struct device_node *
 omapdss_of_get_next_endpoint(const struct device_node *parent,
                             struct device_node *prev)
@@ -122,7 +76,7 @@ omapdss_of_get_first_endpoint(const struct device_node 
*parent)
 {
        struct device_node *port, *ep;
 
-       port = omapdss_of_get_next_port(parent, NULL);
+       port = of_graph_get_next_port(parent, NULL);
 
        if (!port)
                return NULL;
diff --git a/drivers/video/fbdev/omap2/omapfb/dss/dss.c 
b/drivers/video/fbdev/omap2/omapfb/dss/dss.c
index d814e4baa4b3..5cab317011ee 100644
--- a/drivers/video/fbdev/omap2/omapfb/dss/dss.c
+++ b/drivers/video/fbdev/omap2/omapfb/dss/dss.c
@@ -26,6 +26,7 @@
 #include <linux/mfd/syscon.h>
 #include <linux/regmap.h>
 #include <linux/of.h>
+#include <linux/of_graph.h>
 #include <linux/regulator/consumer.h>
 #include <linux/suspend.h>
 #include <linux/component.h>
@@ -922,7 +923,7 @@ static int dss_init_ports(struct platform_device *pdev)
        if (parent == NULL)
                return 0;
 
-       port = omapdss_of_get_next_port(parent, NULL);
+       port = of_graph_get_next_port(parent, NULL);
        if (!port)
                return 0;
 
@@ -953,7 +954,7 @@ static int dss_init_ports(struct platform_device *pdev)
                        break;
                }
        } while (!ret &&
-                (port = omapdss_of_get_next_port(parent, port)) != NULL);
+                (port = of_graph_get_next_port(parent, port)) != NULL);
 
        if (ret)
                dss_uninit_ports(pdev);
@@ -969,7 +970,7 @@ static void dss_uninit_ports(struct platform_device *pdev)
        if (parent == NULL)
                return;
 
-       port = omapdss_of_get_next_port(parent, NULL);
+       port = of_graph_get_next_port(parent, NULL);
        if (!port)
                return;
 
@@ -1000,7 +1001,7 @@ static void dss_uninit_ports(struct platform_device *pdev)
                default:
                        break;
                }
-       } while ((port = omapdss_of_get_next_port(parent, port)) != NULL);
+       } while ((port = of_graph_get_next_port(parent, port)) != NULL);
 }
 
 static int dss_video_pll_probe(struct platform_device *pdev)
diff --git a/include/video/omapfb_dss.h b/include/video/omapfb_dss.h
index e8eaac2cb7b8..426d12881132 100644
--- a/include/video/omapfb_dss.h
+++ b/include/video/omapfb_dss.h
@@ -811,10 +811,6 @@ static inline bool omapdss_device_is_enabled(struct 
omap_dss_device *dssdev)
        return dssdev->state == OMAP_DSS_DISPLAY_ACTIVE;
 }
 
-struct device_node *
-omapdss_of_get_next_port(const struct device_node *parent,
-                        struct device_node *prev);
-
 struct device_node *
 omapdss_of_get_next_endpoint(const struct device_node *parent,
                             struct device_node *prev);
-- 
2.25.1

Reply via email to