[Nouveau] [PATCH -next] crc:Fix build errors

Lyude Paul lyude at redhat.com
Mon Jul 27 17:48:19 UTC 2020


Hi, I actually already sent a patch for this:

https://patchwork.freedesktop.org/patch/378202/

I'm guessing it hasn't gotten picked up upstream yet?

On Mon, 2020-07-27 at 12:00 +0800, Peng Wu wrote:
> If CONFIG_DRM_NOUVEAU=y,the following errors
> are seen while building crc.h.
> 
> In file included from
> /scratch/linux/drivers/gpu/drm/nouveau/nouveau_display.c:47:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_head_crc_late_register’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:109:47: error:
> parameter name omitted
>  static inline int nv50_head_crc_late_register(struct nv50_head *) {}
>                                                ^~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:109:54: warning: no
> return statement in function returning non-void [-Wreturn-type]
>  static inline int nv50_head_crc_late_register(struct nv50_head *) {}
>                                                       ^~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_crc_handle_vblank’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:111:57: warning:
> ‘return’ with a value, in function returning void
>  nv50_crc_handle_vblank(struct nv50_head *head) { return 0; }
>                                                          ^
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:111:1: note: declared
> here
>  nv50_crc_handle_vblank(struct nv50_head *head) { return 0; }
>  ^~~~~~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_crc_atomic_check_head’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:114:28: error:
> parameter name omitted
>  nv50_crc_atomic_check_head(struct nv50_head *, struct nv50_head_atom *,
>                             ^~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:114:48: error:
> parameter name omitted
>  nv50_crc_atomic_check_head(struct nv50_head *, struct nv50_head_atom *,
>                                                 ^~~~~~~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:115:7: error:
> parameter name omitted
>        struct nv50_head_atom *) {}
>        ^~~~~~~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:115:14: warning: no
> return statement in function returning non-void [-Wreturn-type]
>        struct nv50_head_atom *) {}
>               ^~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_crc_atomic_stop_reporting’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:118:32: error:
> parameter name omitted
>  nv50_crc_atomic_stop_reporting(struct drm_atomic_state *) {}
>                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_crc_atomic_init_notifier_contexts’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:120:40: error:
> parameter name omitted
>  nv50_crc_atomic_init_notifier_contexts(struct drm_atomic_state *) {}
>                                         ^~~~~~~~~~~~~~~~~~~~~~~~~
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h: In function
> ‘nv50_crc_atomic_release_notifier_contexts’:
> /scratch/linux/drivers/gpu/drm/nouveau/dispnv50/crc.h:122:43: error:
> parameter name omitted
> 
> Signed-off-by: Peng Wu <wupeng58 at huawei.com>
> ---
>  drivers/gpu/drm/nouveau/dispnv50/crc.h | 44 +++++++++++++++++------------
> -----
>  1 file changed, 22 insertions(+), 22 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/dispnv50/crc.h
> b/drivers/gpu/drm/nouveau/dispnv50/crc.h
> index 4bc59e7..3da16cd 100644
> --- a/drivers/gpu/drm/nouveau/dispnv50/crc.h
> +++ b/drivers/gpu/drm/nouveau/dispnv50/crc.h
> @@ -76,22 +76,22 @@ struct nv50_crc {
>  };
>  
>  void nv50_crc_init(struct drm_device *dev);
> -int nv50_head_crc_late_register(struct nv50_head *);
> +int nv50_head_crc_late_register(struct nv50_head *head);
>  void nv50_crc_handle_vblank(struct nv50_head *head);
>  
> -int nv50_crc_verify_source(struct drm_crtc *, const char *, size_t *);
> -const char *const *nv50_crc_get_sources(struct drm_crtc *, size_t *);
> -int nv50_crc_set_source(struct drm_crtc *, const char *);
> +int nv50_crc_verify_source(struct drm_crtc *crtc, const char *source_name,
> size_t *values_cnt);
> +const char *const *nv50_crc_get_sources(struct drm_crtc *crtc, size_t
> *count);
> +int nv50_crc_set_source(struct drm_crtc *crtc, const char *source_str);
>  
> -int nv50_crc_atomic_check_head(struct nv50_head *, struct nv50_head_atom *,
> -			       struct nv50_head_atom *);
> +int nv50_crc_atomic_check_head(struct nv50_head *head, struct
> nv50_head_atom *asyh,
> +			       struct nv50_head_atom *armh);
>  void nv50_crc_atomic_check_outp(struct nv50_atom *atom);
> -void nv50_crc_atomic_stop_reporting(struct drm_atomic_state *);
> -void nv50_crc_atomic_init_notifier_contexts(struct drm_atomic_state *);
> -void nv50_crc_atomic_release_notifier_contexts(struct drm_atomic_state *);
> -void nv50_crc_atomic_start_reporting(struct drm_atomic_state *);
> -void nv50_crc_atomic_set(struct nv50_head *, struct nv50_head_atom *);
> -void nv50_crc_atomic_clr(struct nv50_head *);
> +void nv50_crc_atomic_stop_reporting(struct drm_atomic_state *state);
> +void nv50_crc_atomic_init_notifier_contexts(struct drm_atomic_state
> *state);
> +void nv50_crc_atomic_release_notifier_contexts(struct drm_atomic_state
> *state);
> +void nv50_crc_atomic_start_reporting(struct drm_atomic_state *state);
> +void nv50_crc_atomic_set(struct nv50_head *head, struct nv50_head_atom
> *asyh);
> +void nv50_crc_atomic_clr(struct nv50_head *head);
>  
>  extern const struct nv50_crc_func crc907d;
>  extern const struct nv50_crc_func crcc37d;
> @@ -106,26 +106,26 @@ struct nv50_crc_atom {};
>  #define nv50_crc_set_source NULL
>  
>  static inline void nv50_crc_init(struct drm_device *dev) {}
> -static inline int nv50_head_crc_late_register(struct nv50_head *) {}
> +static inline int nv50_head_crc_late_register(struct nv50_head *head) {
> return 0; }
>  static inline void
> -nv50_crc_handle_vblank(struct nv50_head *head) { return 0; }
> +nv50_crc_handle_vblank(struct nv50_head *head) {}
>  
>  static inline int
> -nv50_crc_atomic_check_head(struct nv50_head *, struct nv50_head_atom *,
> -			   struct nv50_head_atom *) {}
> +nv50_crc_atomic_check_head(struct nv50_head *head, struct nv50_head_atom
> *asyh,
> +			   struct nv50_head_atom *armh) { return 0; }
>  static inline void nv50_crc_atomic_check_outp(struct nv50_atom *atom) {}
>  static inline void
> -nv50_crc_atomic_stop_reporting(struct drm_atomic_state *) {}
> +nv50_crc_atomic_stop_reporting(struct drm_atomic_state *state) {}
>  static inline void
> -nv50_crc_atomic_init_notifier_contexts(struct drm_atomic_state *) {}
> +nv50_crc_atomic_init_notifier_contexts(struct drm_atomic_state *state) {}
>  static inline void
> -nv50_crc_atomic_release_notifier_contexts(struct drm_atomic_state *) {}
> +nv50_crc_atomic_release_notifier_contexts(struct drm_atomic_state *state)
> {}
>  static inline void
> -nv50_crc_atomic_start_reporting(struct drm_atomic_state *) {}
> +nv50_crc_atomic_start_reporting(struct drm_atomic_state *state) {}
>  static inline void
> -nv50_crc_atomic_set(struct nv50_head *, struct nv50_head_atom *) {}
> +nv50_crc_atomic_set(struct nv50_head *head, struct nv50_head_atom *asyh) {}
>  static inline void
> -nv50_crc_atomic_clr(struct nv50_head *) {}
> +nv50_crc_atomic_clr(struct nv50_head *head) {}
>  
>  #endif /* IS_ENABLED(CONFIG_DEBUG_FS) */
>  #endif /* !__NV50_CRC_H__ */
-- 
Cheers,
	Lyude Paul (she/her)
	Software Engineer at Red Hat



More information about the Nouveau mailing list