| From foo@baz Mon Apr 9 17:09:24 CEST 2018 |
| From: Maxime Ripard <maxime.ripard@free-electrons.com> |
| Date: Sat, 27 May 2017 18:09:32 +0200 |
| Subject: drm/sun4i: Ignore the generic connectors for components |
| |
| From: Maxime Ripard <maxime.ripard@free-electrons.com> |
| |
| |
| [ Upstream commit 49baeb074783f5bdf770dc9fac5fbb2837190583 ] |
| |
| The generic connectors such as hdmi-connector doesn't have any driver in, |
| so if they are added to the component list, we will be waiting forever for |
| a non-existing driver to probe. |
| |
| Add a list of the connectors we want to ignore when building our component |
| list. |
| |
| Reviewed-by: Chen-Yu Tsai <wens@csie.org> |
| Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/gpu/drm/sun4i/sun4i_drv.c | 12 ++++++++++++ |
| 1 file changed, 12 insertions(+) |
| |
| --- a/drivers/gpu/drm/sun4i/sun4i_drv.c |
| +++ b/drivers/gpu/drm/sun4i/sun4i_drv.c |
| @@ -212,6 +212,11 @@ static const struct component_master_ops |
| .unbind = sun4i_drv_unbind, |
| }; |
| |
| +static bool sun4i_drv_node_is_connector(struct device_node *node) |
| +{ |
| + return of_device_is_compatible(node, "hdmi-connector"); |
| +} |
| + |
| static bool sun4i_drv_node_is_frontend(struct device_node *node) |
| { |
| return of_device_is_compatible(node, "allwinner,sun5i-a13-display-frontend") || |
| @@ -252,6 +257,13 @@ static int sun4i_drv_add_endpoints(struc |
| !of_device_is_available(node)) |
| return 0; |
| |
| + /* |
| + * The connectors will be the last nodes in our pipeline, we |
| + * can just bail out. |
| + */ |
| + if (sun4i_drv_node_is_connector(node)) |
| + return 0; |
| + |
| if (!sun4i_drv_node_is_frontend(node)) { |
| /* Add current component */ |
| DRM_DEBUG_DRIVER("Adding component %s\n", |