Re: [PATCH v4 02/20] drm/tyr: select required dependencies in Kconfig
From: Boris Brezillon
Date: Mon Apr 27 2026 - 03:24:46 EST
On Fri, 24 Apr 2026 16:38:56 -0700
Deborah Brouwer <deborah.brouwer@xxxxxxxxxxxxx> wrote:
> From: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx>
>
> Tyr depends on DRM_GPUVM, RUST_DRM_GEM_SHMEM_HELPER, MMU, IOMMU_SUPPORT,
> and IOMMU_IO_PGTABLE_LPAE. Select or depend on these symbols in Kconfig so
> the required infrastructure is enabled when Tyr is built.
>
> Introduce DRM_TYR_STATIC_DEPS to keep the built-in DRM dependencies
> selected even when Tyr is built as a module.
>
> Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx>
> Signed-off-by: Deborah Brouwer <deborah.brouwer@xxxxxxxxxxxxx>
> ---
> drivers/gpu/drm/tyr/Kconfig | 14 +++++++++++++-
> 1 file changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/tyr/Kconfig b/drivers/gpu/drm/tyr/Kconfig
> index e933e6478027..443ce988b570 100644
> --- a/drivers/gpu/drm/tyr/Kconfig
> +++ b/drivers/gpu/drm/tyr/Kconfig
> @@ -1,5 +1,12 @@
> # SPDX-License-Identifier: GPL-2.0 or MIT
>
> +config DRM_TYR_STATIC_DEPS
> + bool
> + select DRM_GPUVM
IIRC, Danilo said we should have some boolean RUST_DRM_GPUVM option
selecting DRM_GPUVM for us, just like RUST_DRM_GEM_SHMEM_HELPER does.
> + help
> + Ensure required DRM infrastructure is built-in when enabling Tyr
> + even if Tyr is =m
> +
> config DRM_TYR
> tristate "Tyr (Rust DRM support for ARM Mali CSF-based GPUs)"
> depends on DRM=y
> @@ -7,6 +14,11 @@ config DRM_TYR
> depends on ARM || ARM64 || COMPILE_TEST
> depends on !GENERIC_ATOMIC64 # for IOMMU_IO_PGTABLE_LPAE
> depends on COMMON_CLK
> + depends on MMU
> + select DRM_TYR_STATIC_DEPS
> + select IOMMU_IO_PGTABLE_LPAE
> + select RUST_DRM_GEM_SHMEM_HELPER
> + depends on IOMMU_SUPPORT
> default n
> help
> Rust DRM driver for ARM Mali CSF-based GPUs.
> @@ -16,5 +28,5 @@ config DRM_TYR
> Note that the Mali-G68 and Mali-G78, while Valhall architecture, will
> be supported with the panfrost driver as they are not CSF GPUs.
>
> - if M is selected, the module will be called tyr. This driver is work
> + If M is selected, the module will be called tyr. This driver is work
> in progress and may not be functional.
>