[PATCH] drm/sti: Fix modular build

Mark Brown broonie at kernel.org
Mon Dec 15 04:15:41 PST 2014


>       arm-allmodconfig
> ERROR: "sti_hqvdp_create" [drivers/gpu/drm/sti/sticompositor.ko] undefined!
> ERROR: "sti_drm_plane_init" [drivers/gpu/drm/sti/sti_hqvdp.ko] undefined!
> ERROR: "sti_layer_create" [drivers/gpu/drm/sti/sti_hqvdp.ko] undefined!
> ERROR: "sti_layer_to_str" [drivers/gpu/drm/sti/sti_hqvdp.ko] undefined!

Today's ARM allmodconfig failed to build in -next due to the ST DRM
drivers, they build several modules which reference each other but
several of the symbols are not exported, leading to build failures.
Fix this by adding the required exports.

Signed-off-by: Mark Brown <broonie at kernel.org>
---
 drivers/gpu/drm/sti/sti_drm_plane.c | 1 +
 drivers/gpu/drm/sti/sti_hqvdp.c     | 1 +
 drivers/gpu/drm/sti/sti_layer.c     | 2 ++
 3 files changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/sti/sti_drm_plane.c b/drivers/gpu/drm/sti/sti_drm_plane.c
index c9dd0e57cac1..bb6a29339e10 100644
--- a/drivers/gpu/drm/sti/sti_drm_plane.c
+++ b/drivers/gpu/drm/sti/sti_drm_plane.c
@@ -194,3 +194,4 @@ struct drm_plane *sti_drm_plane_init(struct drm_device *dev,
 
 	return &layer->plane;
 }
+EXPORT_SYMBOL(sti_drm_plane_init);
diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c
index 200d02014575..f3db05dab0ab 100644
--- a/drivers/gpu/drm/sti/sti_hqvdp.c
+++ b/drivers/gpu/drm/sti/sti_hqvdp.c
@@ -816,6 +816,7 @@ struct sti_layer *sti_hqvdp_create(struct device *dev)
 
 	return &hqvdp->layer;
 }
+EXPORT_SYMBOL(sti_hqvdp_create);
 
 static void sti_hqvdp_init_plugs(struct sti_hqvdp *hqvdp)
 {
diff --git a/drivers/gpu/drm/sti/sti_layer.c b/drivers/gpu/drm/sti/sti_layer.c
index 480ec1c974e2..899104f9d4bc 100644
--- a/drivers/gpu/drm/sti/sti_layer.c
+++ b/drivers/gpu/drm/sti/sti_layer.c
@@ -40,6 +40,7 @@ const char *sti_layer_to_str(struct sti_layer *layer)
 		return "<UNKNOWN LAYER>";
 	}
 }
+EXPORT_SYMBOL(sti_layer_to_str);
 
 struct sti_layer *sti_layer_create(struct device *dev, int desc,
 				   void __iomem *baseaddr)
@@ -77,6 +78,7 @@ struct sti_layer *sti_layer_create(struct device *dev, int desc,
 
 	return layer;
 }
+EXPORT_SYMBOL(sti_layer_create);
 
 int sti_layer_prepare(struct sti_layer *layer,
 		      struct drm_crtc *crtc,
-- 
2.1.3



More information about the dri-devel mailing list