Hi

Am 22.02.24 um 12:26 schrieb Biju Das:
CONFIG_DRM_RCAR_VSP is related to R-Car and not related to RZ/G2L
specific. This caused the below build issue. Fix this errors by replacing
CONFIG_DRM_RCAR_VSP->CONFIG_VIDEO_RENESAS_VSP1. While at it, use
IS_ENABLED() macro.

drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:47:6: error: redefinition of 
'rzg2l_du_vsp_enable'
    47 | void rzg2l_du_vsp_enable(struct rzg2l_du_crtc *crtc)
       |      ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/renesas/rz-du/rzg2l_du_drv.h:18,
                  from drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:30:
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h:72:20: note: previous definition 
of 'rzg2l_du_vsp_enable' with type 'void(struct rzg2l_du_crtc *)'
    72 | static inline void rzg2l_du_vsp_enable(struct rzg2l_du_crtc *crtc) { };
       |                    ^~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:61:6: error: redefinition of 
'rzg2l_du_vsp_disable'
    61 | void rzg2l_du_vsp_disable(struct rzg2l_du_crtc *crtc)
       |      ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h:73:20: note: previous definition 
of 'rzg2l_du_vsp_disable' with type 'void(struct rzg2l_du_crtc *)'
    73 | static inline void rzg2l_du_vsp_disable(struct rzg2l_du_crtc *crtc) { 
};
       |                    ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:66:6: error: redefinition of 
'rzg2l_du_vsp_atomic_flush'
    66 | void rzg2l_du_vsp_atomic_flush(struct rzg2l_du_crtc *crtc)
       |      ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h:74:20: note: previous definition 
of 'rzg2l_du_vsp_atomic_flush' with type 'void(struct rzg2l_du_crtc *)'
    74 | static inline void rzg2l_du_vsp_atomic_flush(struct rzg2l_du_crtc 
*crtc) { };
       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:76:19: error: redefinition of 
'rzg2l_du_vsp_get_drm_plane'
    76 | struct drm_plane *rzg2l_du_vsp_get_drm_plane(struct rzg2l_du_crtc 
*crtc,
       |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h:75:33: note: previous definition 
of 'rzg2l_du_vsp_get_drm_plane' with type 'struct drm_plane *(struct 
rzg2l_du_crtc *, unsigned int)'
    75 | static inline struct drm_plane *rzg2l_du_vsp_get_drm_plane(struct 
rzg2l_du_crtc *crtc,
       |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.c:302:5: error: redefinition of 
'rzg2l_du_vsp_init'
   302 | int rzg2l_du_vsp_init(struct rzg2l_du_vsp *vsp, struct device_node *np,
       |     ^~~~~~~~~~~~~~~~~
drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h:66:19: note: previous definition 
of 'rzg2l_du_vsp_init' with type 'int(struct rzg2l_du_vsp *, struct device_node 
*, unsigned int)'
    66 | static inline int rzg2l_du_vsp_init(struct rzg2l_du_vsp *vsp, struct 
device_node *np,
       |                   ^~~~~~~~~~~~~~~~~

Reported-by: Stephen Rothwell <[email protected]>
Closes: 
https://lore.kernel.org/linux-next/[email protected]/T/#u
Signed-off-by: Biju Das <[email protected]>

Acked-by: Thomas Zimmermann <[email protected]>

I'm going to add

Fixes: 768e9e61b3b9 ("drm: renesas: Add RZ/G2L DU Support")

as well before merging the patch.

Best regards
Thomas

---
v1->v2:
  * Dropped EXPORT symbol as both *_crtc.o and *_vsp.o are within the single 
module.
  * Updated the commit description.
---
  drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h 
b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h
index 12d98f04bf89..322eb80dcbaf 100644
--- a/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h
+++ b/drivers/gpu/drm/renesas/rz-du/rzg2l_du_vsp.h
@@ -54,7 +54,7 @@ to_rzg2l_vsp_plane_state(struct drm_plane_state *state)
        return container_of(state, struct rzg2l_du_vsp_plane_state, state);
  }
-#ifdef CONFIG_DRM_RCAR_VSP
+#if IS_ENABLED(CONFIG_VIDEO_RENESAS_VSP1)
  int rzg2l_du_vsp_init(struct rzg2l_du_vsp *vsp, struct device_node *np,
                      unsigned int crtcs);
  void rzg2l_du_vsp_enable(struct rzg2l_du_crtc *crtc);

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)

Reply via email to