* Re: [PATCH] drm/xlnx/zynqmp-dpsub: Fix dependencies for COMPILE_TEST
2026-04-10 9:08 ` Chen-Yu Tsai
@ 2026-04-10 9:27 ` Ville Syrjälä
2026-04-10 10:43 ` Tomi Valkeinen
1 sibling, 0 replies; 5+ messages in thread
From: Ville Syrjälä @ 2026-04-10 9:27 UTC (permalink / raw)
To: Chen-Yu Tsai
Cc: Tomi Valkeinen, Laurent Pinchart, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, dri-devel, linux-kernel
On Fri, Apr 10, 2026 at 05:08:00PM +0800, Chen-Yu Tsai wrote:
> On Fri, Apr 10, 2026 at 4:49 PM Tomi Valkeinen
> <tomi.valkeinen@ideasonboard.com> wrote:
> >
> > Hi,
> >
> > On 08/04/2026 11:14, Chen-Yu Tsai wrote:
> > > The zynqmp-dpsub driver does not have build time dependencies on the PHY
> > > or DMA drivers. These are runtime hardware restrictions.
> > >
> > > Group the two dependencies with ARCH_ZYNQMP so that the driver can be
> > > compile tested without them.
> > >
> > > Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> > > ---
> > > IMO the two driver dependencies could be removed altogether, but that
> > > would be up to the driver and platform maintainers.
> > > ---
> > > drivers/gpu/drm/xlnx/Kconfig | 4 +---
> > > 1 file changed, 1 insertion(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/xlnx/Kconfig b/drivers/gpu/drm/xlnx/Kconfig
> > > index cfabf5e2a0bb..4c6729459f40 100644
> > > --- a/drivers/gpu/drm/xlnx/Kconfig
> > > +++ b/drivers/gpu/drm/xlnx/Kconfig
> > > @@ -1,10 +1,8 @@
> > > config DRM_ZYNQMP_DPSUB
> > > tristate "ZynqMP DisplayPort Controller Driver"
> > > - depends on ARCH_ZYNQMP || COMPILE_TEST
> > > + depends on (ARCH_ZYNQMP && PHY_XILINX_ZYNQMP && XILINX_ZYNQMP_DPDMA) || COMPILE_TEST
> > > depends on COMMON_CLK && DRM && OF
> > > depends on DMADEVICES
> > > - depends on PHY_XILINX_ZYNQMP
> > > - depends on XILINX_ZYNQMP_DPDMA
> > > select DMA_ENGINE
> > > select DRM_CLIENT_SELECTION
> > > select DRM_DISPLAY_DP_HELPER
> >
> > I think the above looks more difficult to understand than the current
> > version. We should perhaps rather drop the dependencies. But if we go
> > that way, then... we can also drop DMADEVICES, DMA_ENGINE, GENERIC_PHY
> > at least.
>
> Perhaps. All the APIs for these are properly stubbed, so I guess
> they also count as runtime dependencies.
>
> > What problem does this solve? Why are these two dependencies bad for
> > compile testing, but the other dependencies/selects are ok?
>
> I was build testing changes across multiple DRM drivers in addition to
> the main platform I work on. Having to find and select each dependency
> was annoying.
I've had the same experience. It's really hard to do drm subsystem
wide changes, and be sure that all the code being touched is actually
getting compiled.
>
> I would say DMADEVICES and GENERIC_PHY are much more common to embedded
> devices than SoC specific drivers.
>
> > I personally don't mind hard runtime dependencies expressed in the
> > Kconfig, as searching for the correct dependency-drivers when your
> > driver doesn't probe is always a PITA.
>
> I don't mind it either. But the way they are described means that compile
> testing is overly dependent on having some other platform specific
> driver enabled.
If only "select" worked in a sane way :/ Although that would still
force you to actually compile all the runtime dependencies, making
the build slower.
>
>
> I suppose another way to write this would be:
>
> depends on ARCH_ZYNQMP if !COMPILE_TEST
> depends on PHY_XILINX_ZYNQMP if !COMPILE_TEST
> depends on XILINX_ZYNQMP_DPDMA if !COMPILE_TEST
I believe the ||COMPILE_TEST pattern is much more common.
> ...
>
> Does that work for you?
>
>
> Thanks
> ChenYu
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/xlnx/zynqmp-dpsub: Fix dependencies for COMPILE_TEST
2026-04-10 9:08 ` Chen-Yu Tsai
2026-04-10 9:27 ` Ville Syrjälä
@ 2026-04-10 10:43 ` Tomi Valkeinen
1 sibling, 0 replies; 5+ messages in thread
From: Tomi Valkeinen @ 2026-04-10 10:43 UTC (permalink / raw)
To: Chen-Yu Tsai
Cc: Laurent Pinchart, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, dri-devel, linux-kernel,
Ville Syrjälä
Hi,
On 10/04/2026 12:08, Chen-Yu Tsai wrote:
> On Fri, Apr 10, 2026 at 4:49 PM Tomi Valkeinen
> <tomi.valkeinen@ideasonboard.com> wrote:
>>
>> Hi,
>>
>> On 08/04/2026 11:14, Chen-Yu Tsai wrote:
>>> The zynqmp-dpsub driver does not have build time dependencies on the PHY
>>> or DMA drivers. These are runtime hardware restrictions.
>>>
>>> Group the two dependencies with ARCH_ZYNQMP so that the driver can be
>>> compile tested without them.
>>>
>>> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
>>> ---
>>> IMO the two driver dependencies could be removed altogether, but that
>>> would be up to the driver and platform maintainers.
>>> ---
>>> drivers/gpu/drm/xlnx/Kconfig | 4 +---
>>> 1 file changed, 1 insertion(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/xlnx/Kconfig b/drivers/gpu/drm/xlnx/Kconfig
>>> index cfabf5e2a0bb..4c6729459f40 100644
>>> --- a/drivers/gpu/drm/xlnx/Kconfig
>>> +++ b/drivers/gpu/drm/xlnx/Kconfig
>>> @@ -1,10 +1,8 @@
>>> config DRM_ZYNQMP_DPSUB
>>> tristate "ZynqMP DisplayPort Controller Driver"
>>> - depends on ARCH_ZYNQMP || COMPILE_TEST
>>> + depends on (ARCH_ZYNQMP && PHY_XILINX_ZYNQMP && XILINX_ZYNQMP_DPDMA) || COMPILE_TEST
>>> depends on COMMON_CLK && DRM && OF
>>> depends on DMADEVICES
>>> - depends on PHY_XILINX_ZYNQMP
>>> - depends on XILINX_ZYNQMP_DPDMA
>>> select DMA_ENGINE
>>> select DRM_CLIENT_SELECTION
>>> select DRM_DISPLAY_DP_HELPER
>>
>> I think the above looks more difficult to understand than the current
>> version. We should perhaps rather drop the dependencies. But if we go
>> that way, then... we can also drop DMADEVICES, DMA_ENGINE, GENERIC_PHY
>> at least.
>
> Perhaps. All the APIs for these are properly stubbed, so I guess
> they also count as runtime dependencies.
>
>> What problem does this solve? Why are these two dependencies bad for
>> compile testing, but the other dependencies/selects are ok?
>
> I was build testing changes across multiple DRM drivers in addition to
> the main platform I work on. Having to find and select each dependency
> was annoying.
Ok, makes sense.
> I would say DMADEVICES and GENERIC_PHY are much more common to embedded
> devices than SoC specific drivers.
Ok, so it was just that you already happened to have them, no searching
needed. And I think COMMON_CLOCK and OF fall into the same category (if
I recall right, those headers are also stubbed).
>> I personally don't mind hard runtime dependencies expressed in the
>> Kconfig, as searching for the correct dependency-drivers when your
>> driver doesn't probe is always a PITA.
>
> I don't mind it either. But the way they are described means that compile
> testing is overly dependent on having some other platform specific
> driver enabled.
>
>
> I suppose another way to write this would be:
>
> depends on ARCH_ZYNQMP if !COMPILE_TEST
> depends on PHY_XILINX_ZYNQMP if !COMPILE_TEST
> depends on XILINX_ZYNQMP_DPDMA if !COMPILE_TEST
> ...
>
> Does that work for you?
Yes, I think having them on separate lines makes it easier to read. As
Ville mentioned, the || COMPILE_TEST seems to be more common, so we can
use that.
Can/should we also add the check to the select lines (DMADEVICES,
DMA_ENGINE, GENERIC_PHY)? Does that help any? Hmm, but that requires "if
!COMPILE_TEST", so if we do that, should we also use the same syntax for
"depends on".
Well, in any case, I'm fine with just dealing with the two xilinx
specific dependencies, as those have the most impact. This patch is not
too bad, so I can pick this one. But if we were to add a couple more
configs to the same line, then I think it makes sense to split it up...
Tomi
^ permalink raw reply [flat|nested] 5+ messages in thread