drm/sun4i: Set drm_crtc.port to the underlying TCON's output port node
authorChen-Yu Tsai <wens@csie.org>
Thu, 23 Feb 2017 08:05:34 +0000 (16:05 +0800)
committerMaxime Ripard <maxime.ripard@free-electrons.com>
Tue, 7 Mar 2017 21:15:15 +0000 (22:15 +0100)
The way drm_of_find_possible_crtcs works is it tries to match the
remote-endpoint of the given node's various endpoints to all the
crtc's .port field. Thus we need to set drm_crtc.port to the output
port node of the underlying TCON.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
drivers/gpu/drm/sun4i/sun4i_crtc.c

index 7d332fce677057cef5ca43b81bc19afa9e5056dd..eec13cea3144b45d6720b119fc553f97fe5728f6 100644 (file)
@@ -19,6 +19,7 @@
 #include <linux/clk-provider.h>
 #include <linux/ioport.h>
 #include <linux/of_address.h>
+#include <linux/of_graph.h>
 #include <linux/of_irq.h>
 #include <linux/regmap.h>
 
@@ -160,5 +161,9 @@ struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm)
 
        drm_crtc_helper_add(&scrtc->crtc, &sun4i_crtc_helper_funcs);
 
+       /* Set crtc.port to output port node of the tcon */
+       scrtc->crtc.port = of_graph_get_port_by_id(drv->tcon->dev->of_node,
+                                                  1);
+
        return scrtc;
 }