Re: [PATCH] drm/xlnx/zynqmp-dpsub: Fix dependencies for COMPILE_TEST
From: Tomi Valkeinen
Date: Fri Apr 10 2026 - 06:50:06 EST
Hi,
On 10/04/2026 12:08, Chen-Yu Tsai wrote:
On Fri, Apr 10, 2026 at 4:49 PM Tomi Valkeinen
<tomi.valkeinen@xxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxx>
---
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 embeddedOk, 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).
devices than SoC specific drivers.
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.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?
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