On Tue, May 13, 2014 at 12:47:42PM +0200, Thierry Reding wrote:
> From: Thierry Reding
>
> 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
Reviewed-by: Matt Roper
> ---
> 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
> #include
> #include
> +#include
>
> #define SUBPIXEL_MASK 0x
>
> 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
>
--
Matt Roper
Graphics Software Engineer
IoTG Platform Enabling & Development
Intel Corporation
(916) 356-2795