Re: [PATCH] drm: rcar-du: Fix build error
Hi Laurent, On Fri, 22 May 2020 at 22:24, Laurent Pinchart wrote: > > Hi Daniel, > > Thank you for the patch. > > On Mon, May 18, 2020 at 10:16:46PM +0200, Daniel Gomez wrote: > > Select DRM_KMS_HELPER dependency. > > > > Build error when DRM_KMS_HELPER is not selected: > > > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to > > `drm_atomic_helper_bridge_duplicate_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to > > `drm_atomic_helper_bridge_destroy_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to > > `drm_atomic_helper_bridge_reset' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to > > `drm_atomic_helper_connector_reset' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to > > `drm_helper_probe_single_connector_modes' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to > > `drm_atomic_helper_connector_duplicate_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to > > `drm_atomic_helper_connector_destroy_state' > > Fixes: c6a27fa41fab ("drm: rcar-du: Convert LVDS encoder code to bridge driver") > > Signed-off-by: Daniel Gomez > > Reviewed-by: Laurent Pinchart > > and taken in my tree for v5.9. If you think it should get in v5.8 as a > fix, I can do so as well, could you then provide a Fixes: tag ? That would be fine. You can find above the fixes tag. Thanks! > > > --- > > drivers/gpu/drm/rcar-du/Kconfig | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/rcar-du/Kconfig > > b/drivers/gpu/drm/rcar-du/Kconfig > > index 0919f1f159a4..f65d1489dc50 100644 > > --- a/drivers/gpu/drm/rcar-du/Kconfig > > +++ b/drivers/gpu/drm/rcar-du/Kconfig > > @@ -31,6 +31,7 @@ config DRM_RCAR_DW_HDMI > > config DRM_RCAR_LVDS > > tristate "R-Car DU LVDS Encoder Support" > > depends on DRM && DRM_BRIDGE && OF > > + select DRM_KMS_HELPER > > select DRM_PANEL > > select OF_FLATTREE > > select OF_OVERLAY > > -- > Regards, > > Laurent Pinchart Daniel ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm: rcar-du: Fix build error
Hi Kieran and Emil, On Fri, 22 May 2020 at 11:43, Kieran Bingham wrote: > > Hi Daniel, > > On 18/05/2020 21:16, Daniel Gomez wrote: > > Select DRM_KMS_HELPER dependency. > > > > Build error when DRM_KMS_HELPER is not selected: > > > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to > > `drm_atomic_helper_bridge_duplicate_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to > > `drm_atomic_helper_bridge_destroy_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to > > `drm_atomic_helper_bridge_reset' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to > > `drm_atomic_helper_connector_reset' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to > > `drm_helper_probe_single_connector_modes' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to > > `drm_atomic_helper_connector_duplicate_state' > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to > > `drm_atomic_helper_connector_destroy_state' > > > > Looking at the files in rcar_du that utilise drm_atomic_helpers... > > git grep -l drm_atomic_helper_ drivers/gpu/drm/rcar-du/ > drivers/gpu/drm/rcar-du/rcar_du_crtc.c > drivers/gpu/drm/rcar-du/rcar_du_kms.c > drivers/gpu/drm/rcar-du/rcar_du_plane.c > drivers/gpu/drm/rcar-du/rcar_du_vsp.c > drivers/gpu/drm/rcar-du/rcar_du_writeback.c > drivers/gpu/drm/rcar-du/rcar_lvds.c > > of those, these are configurable: > > rcar_du_vsp.c # DRM_RCAR_VSP > rcar_du_writeback.c# DRM_RCAR_WRITEBACK > rcar_lvds.c# DRM_RCAR_LVDS > > But VSP and WRITEBACK are already implicitly dependant upon DRM_RCAR_DU > because they get built into the DU module. > > So indeed, only the RCAR_LVDS is a separate module, using those helpers, > so I think a select is a reasonable fix. > > I would also ask whether DRM_RCAR_LVDS should depend upon DRM_RCAR_DU > though as well. > > There is no linkage requirement, as it's a standalone bridge driver from > what I can see, but I don't think it serves much purpose without the DU? I have actually spotted when using arch/arm/configs/multi_v7_defconfig where DRM_RCAR_DU is built as module. But when I was reviewing it I was able to compile RCAR_LVDS=y with DRM_RCAR_DU=n. Also, according to https://patchwork.kernel.org/patch/10159063/, the LVDS encoders used to be described as part of the DU but not after the patch. So, I assume it can be used without the DU but not completely sure. > > Anyway, even if it's just for compile testing maybe, the select here > should be fine. > > Reviewed-by: Kieran Bingham > > > Signed-off-by: Daniel Gomez > > --- > > drivers/gpu/drm/rcar-du/Kconfig | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/rcar-du/Kconfig > > b/drivers/gpu/drm/rcar-du/Kconfig > > index 0919f1f159a4..f65d1489dc50 100644 > > --- a/drivers/gpu/drm/rcar-du/Kconfig > > +++ b/drivers/gpu/drm/rcar-du/Kconfig > > @@ -31,6 +31,7 @@ config DRM_RCAR_DW_HDMI > > config DRM_RCAR_LVDS > > tristate "R-Car DU LVDS Encoder Support" > > depends on DRM && DRM_BRIDGE && OF > > + select DRM_KMS_HELPER > > select DRM_PANEL > > select OF_FLATTREE > > select OF_OVERLAY > > > ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm: rcar-du: Fix build error
Hi Daniel, Thank you for the patch. On Mon, May 18, 2020 at 10:16:46PM +0200, Daniel Gomez wrote: > Select DRM_KMS_HELPER dependency. > > Build error when DRM_KMS_HELPER is not selected: > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to > `drm_atomic_helper_bridge_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to > `drm_atomic_helper_bridge_destroy_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to > `drm_atomic_helper_bridge_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to > `drm_atomic_helper_connector_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to > `drm_helper_probe_single_connector_modes' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to > `drm_atomic_helper_connector_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to > `drm_atomic_helper_connector_destroy_state' > > Signed-off-by: Daniel Gomez Reviewed-by: Laurent Pinchart and taken in my tree for v5.9. If you think it should get in v5.8 as a fix, I can do so as well, could you then provide a Fixes: tag ? > --- > drivers/gpu/drm/rcar-du/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/rcar-du/Kconfig b/drivers/gpu/drm/rcar-du/Kconfig > index 0919f1f159a4..f65d1489dc50 100644 > --- a/drivers/gpu/drm/rcar-du/Kconfig > +++ b/drivers/gpu/drm/rcar-du/Kconfig > @@ -31,6 +31,7 @@ config DRM_RCAR_DW_HDMI > config DRM_RCAR_LVDS > tristate "R-Car DU LVDS Encoder Support" > depends on DRM && DRM_BRIDGE && OF > + select DRM_KMS_HELPER > select DRM_PANEL > select OF_FLATTREE > select OF_OVERLAY -- Regards, Laurent Pinchart ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm: rcar-du: Fix build error
Hi Daniel, On 18/05/2020 21:16, Daniel Gomez wrote: > Select DRM_KMS_HELPER dependency. > > Build error when DRM_KMS_HELPER is not selected: > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to > `drm_atomic_helper_bridge_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to > `drm_atomic_helper_bridge_destroy_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to > `drm_atomic_helper_bridge_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to > `drm_atomic_helper_connector_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to > `drm_helper_probe_single_connector_modes' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to > `drm_atomic_helper_connector_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to > `drm_atomic_helper_connector_destroy_state' > Looking at the files in rcar_du that utilise drm_atomic_helpers... git grep -l drm_atomic_helper_ drivers/gpu/drm/rcar-du/ drivers/gpu/drm/rcar-du/rcar_du_crtc.c drivers/gpu/drm/rcar-du/rcar_du_kms.c drivers/gpu/drm/rcar-du/rcar_du_plane.c drivers/gpu/drm/rcar-du/rcar_du_vsp.c drivers/gpu/drm/rcar-du/rcar_du_writeback.c drivers/gpu/drm/rcar-du/rcar_lvds.c of those, these are configurable: rcar_du_vsp.c # DRM_RCAR_VSP rcar_du_writeback.c# DRM_RCAR_WRITEBACK rcar_lvds.c# DRM_RCAR_LVDS But VSP and WRITEBACK are already implicitly dependant upon DRM_RCAR_DU because they get built into the DU module. So indeed, only the RCAR_LVDS is a separate module, using those helpers, so I think a select is a reasonable fix. I would also ask whether DRM_RCAR_LVDS should depend upon DRM_RCAR_DU though as well. There is no linkage requirement, as it's a standalone bridge driver from what I can see, but I don't think it serves much purpose without the DU? Anyway, even if it's just for compile testing maybe, the select here should be fine. Reviewed-by: Kieran Bingham > Signed-off-by: Daniel Gomez > --- > drivers/gpu/drm/rcar-du/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/rcar-du/Kconfig b/drivers/gpu/drm/rcar-du/Kconfig > index 0919f1f159a4..f65d1489dc50 100644 > --- a/drivers/gpu/drm/rcar-du/Kconfig > +++ b/drivers/gpu/drm/rcar-du/Kconfig > @@ -31,6 +31,7 @@ config DRM_RCAR_DW_HDMI > config DRM_RCAR_LVDS > tristate "R-Car DU LVDS Encoder Support" > depends on DRM && DRM_BRIDGE && OF > + select DRM_KMS_HELPER > select DRM_PANEL > select OF_FLATTREE > select OF_OVERLAY > ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm: rcar-du: Fix build error
On Tue, 19 May 2020 at 08:01, Daniel Gomez wrote: > > Select DRM_KMS_HELPER dependency. > > Build error when DRM_KMS_HELPER is not selected: > > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to > `drm_atomic_helper_bridge_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to > `drm_atomic_helper_bridge_destroy_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to > `drm_atomic_helper_bridge_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to > `drm_atomic_helper_connector_reset' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to > `drm_helper_probe_single_connector_modes' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to > `drm_atomic_helper_connector_duplicate_state' > drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to > `drm_atomic_helper_connector_destroy_state' > > Signed-off-by: Daniel Gomez Nicely spotted. AFAICT the only way this ever worked is if people had DRM_FBDEV_EMULATION, which is unset in your case. Cc: Reviewed-by: Emil Velikov I suspect Laurent will pick this in due time. -Emil ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[PATCH] drm: rcar-du: Fix build error
Select DRM_KMS_HELPER dependency. Build error when DRM_KMS_HELPER is not selected: drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd48): undefined reference to `drm_atomic_helper_bridge_duplicate_state' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd50): undefined reference to `drm_atomic_helper_bridge_destroy_state' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xd70): undefined reference to `drm_atomic_helper_bridge_reset' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xdc8): undefined reference to `drm_atomic_helper_connector_reset' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xde0): undefined reference to `drm_helper_probe_single_connector_modes' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe08): undefined reference to `drm_atomic_helper_connector_duplicate_state' drivers/gpu/drm/rcar-du/rcar_lvds.o:(.rodata+0xe10): undefined reference to `drm_atomic_helper_connector_destroy_state' Signed-off-by: Daniel Gomez --- drivers/gpu/drm/rcar-du/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/rcar-du/Kconfig b/drivers/gpu/drm/rcar-du/Kconfig index 0919f1f159a4..f65d1489dc50 100644 --- a/drivers/gpu/drm/rcar-du/Kconfig +++ b/drivers/gpu/drm/rcar-du/Kconfig @@ -31,6 +31,7 @@ config DRM_RCAR_DW_HDMI config DRM_RCAR_LVDS tristate "R-Car DU LVDS Encoder Support" depends on DRM && DRM_BRIDGE && OF + select DRM_KMS_HELPER select DRM_PANEL select OF_FLATTREE select OF_OVERLAY -- 2.26.2 ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: [PATCH] drm: rcar-du: Fix build error
Hi Nathan, Thank you for the patch. On Fri, Jan 18, 2019 at 10:21:25AM -0700, Nathan Chancellor wrote: > On arm{32,64} allyesconfig builds: > > drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:40:1: error: incomplete result type > 'enum drm_mode_status' in function definition > drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:47:10: error: incomplete definition of > type 'struct drm_display_mode' > drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:48:10: error: use of undeclared > identifier 'MODE_CLOCK_HIGH' > drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:50:9: error: use of undeclared > identifier 'MODE_OK' > > After the removal of drmP.h from this file and its removal from > bridge/dw_hdmi.h, these types are not defined anymore, as they > were implicitly coming into that file through drm_crtc.h. > > Fixes: 428747ae5cca ("drm: remove include of drmP.h from bridge/dw_hdmi.h") > Fixes: 9a47db8e7a9d ("drm: rcar-du: Remove inclusion of drmP.h") > Signed-off-by: Nathan Chancellor This was included by Dave in merge commit f164a94c2c87 ("Merge tag 'drm-misc-next-2019-01-16' of git://anongit.freedesktop.org/drm/drm-misc into drm-next"). > --- > drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c > b/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c > index 0fb25113f19c..452461dc96f2 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c > +++ b/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c > @@ -12,6 +12,7 @@ > #include > > #include > +#include > > #define RCAR_HDMI_PHY_OPMODE_PLLCFG 0x06/* Mode of operation and PLL > dividers */ > #define RCAR_HDMI_PHY_PLLCURRGMPCTRL 0x10/* PLL current and Gmp > (conductance) */ -- Regards, Laurent Pinchart ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[PATCH] drm: rcar-du: Fix build error
On arm{32,64} allyesconfig builds: drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:40:1: error: incomplete result type 'enum drm_mode_status' in function definition drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:47:10: error: incomplete definition of type 'struct drm_display_mode' drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:48:10: error: use of undeclared identifier 'MODE_CLOCK_HIGH' drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c:50:9: error: use of undeclared identifier 'MODE_OK' After the removal of drmP.h from this file and its removal from bridge/dw_hdmi.h, these types are not defined anymore, as they were implicitly coming into that file through drm_crtc.h. Fixes: 428747ae5cca ("drm: remove include of drmP.h from bridge/dw_hdmi.h") Fixes: 9a47db8e7a9d ("drm: rcar-du: Remove inclusion of drmP.h") Signed-off-by: Nathan Chancellor --- drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c b/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c index 0fb25113f19c..452461dc96f2 100644 --- a/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c +++ b/drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c @@ -12,6 +12,7 @@ #include #include +#include #define RCAR_HDMI_PHY_OPMODE_PLLCFG0x06/* Mode of operation and PLL dividers */ #define RCAR_HDMI_PHY_PLLCURRGMPCTRL 0x10/* PLL current and Gmp (conductance) */ -- 2.20.1 ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel