From: Thierry Reding <tred...@nvidia.com>

Include the drm_plane_helper.h header file to fix the following sparse
warnings:

          CHECK   drivers/gpu/drm/drm_plane_helper.c
        drivers/gpu/drm/drm_plane_helper.c:102:5: warning: symbol 
'drm_primary_helper_update' was not declared. Should it be static?
        drivers/gpu/drm/drm_plane_helper.c:219:5: warning: symbol 
'drm_primary_helper_disable' was not declared. Should it be static?
        drivers/gpu/drm/drm_plane_helper.c:233:6: warning: symbol 
'drm_primary_helper_destroy' was not declared. Should it be static?
        drivers/gpu/drm/drm_plane_helper.c:241:30: warning: symbol 
'drm_primary_helper_funcs' was not declared. Should it be static?
        drivers/gpu/drm/drm_plane_helper.c:259:18: warning: symbol 
'drm_primary_helper_create_plane' was not declared. Should it be static?

Doing that makes gcc complain as follows:

          CC      drivers/gpu/drm/drm_plane_helper.o
        drivers/gpu/drm/drm_plane_helper.c:260:19: error: conflicting types for 
'drm_primary_helper_create_plane'
         struct drm_plane *drm_primary_helper_create_plane(struct drm_device 
*dev,
                           ^
        In file included from drivers/gpu/drm/drm_plane_helper.c:29:0:
        include/drm/drm_plane_helper.h:42:19: note: previous declaration of 
'drm_primary_helper_create_plane' was here
         struct drm_plane *drm_primary_helper_create_plane(struct drm_device 
*dev,
                           ^
        drivers/gpu/drm/drm_plane_helper.c: In function 
'drm_primary_helper_create_plane':
        drivers/gpu/drm/drm_plane_helper.c:274:11: warning: assignment discards 
'const' qualifier from pointer target type
           formats = safe_modeset_formats;
                   ^
        In file included from include/linux/linkage.h:6:0,
                         from include/linux/kernel.h:6,
                         from include/drm/drmP.h:45,
                         from drivers/gpu/drm/drm_plane_helper.c:27:
        drivers/gpu/drm/drm_plane_helper.c: At top level:
        drivers/gpu/drm/drm_plane_helper.c:289:15: error: conflicting types for 
'drm_primary_helper_create_plane'
         EXPORT_SYMBOL(drm_primary_helper_create_plane);
                       ^
        include/linux/export.h:57:21: note: in definition of macro 
'__EXPORT_SYMBOL'
          extern typeof(sym) sym;     \
                             ^
        drivers/gpu/drm/drm_plane_helper.c:289:1: note: in expansion of macro 
'EXPORT_SYMBOL'
         EXPORT_SYMBOL(drm_primary_helper_create_plane);
         ^
        In file included from drivers/gpu/drm/drm_plane_helper.c:29:0:
        include/drm/drm_plane_helper.h:42:19: note: previous declaration of 
'drm_primary_helper_create_plane' was here
         struct drm_plane *drm_primary_helper_create_plane(struct drm_device 
*dev,
                           ^

Which can easily be fixed by making the signatures of the implementation
and the prototype match.

Signed-off-by: Thierry Reding <treding at nvidia.com>
---
 drivers/gpu/drm/drm_plane_helper.c | 1 +
 include/drm/drm_plane_helper.h     | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/drm_plane_helper.c 
b/drivers/gpu/drm/drm_plane_helper.c
index d2b1c03b3d71..63192420bab7 100644
--- a/drivers/gpu/drm/drm_plane_helper.c
+++ b/drivers/gpu/drm/drm_plane_helper.c
@@ -26,6 +26,7 @@
 #include <linux/list.h>
 #include <drm/drmP.h>
 #include <drm/drm_rect.h>
+#include <drm/drm_plane_helper.h>

 #define SUBPIXEL_MASK 0xffff

diff --git a/include/drm/drm_plane_helper.h b/include/drm/drm_plane_helper.h
index 09824becee3e..c5e7ab9503c8 100644
--- a/include/drm/drm_plane_helper.h
+++ b/include/drm/drm_plane_helper.h
@@ -42,7 +42,7 @@ extern int drm_primary_helper_disable(struct drm_plane 
*plane);
 extern void drm_primary_helper_destroy(struct drm_plane *plane);
 extern const struct drm_plane_funcs drm_primary_helper_funcs;
 extern struct drm_plane *drm_primary_helper_create_plane(struct drm_device 
*dev,
-                                                        uint32_t *formats,
+                                                        const uint32_t 
*formats,
                                                         int num_formats);


-- 
1.9.2

Reply via email to