[Nouveau] [PATCH drm-misc-next v3 2/7] drm/gpuvm: allow building as module

Christian König christian.koenig at amd.com
Mon Sep 11 13:09:28 UTC 2023


Am 09.09.23 um 17:31 schrieb Danilo Krummrich:
> Currently, the DRM GPUVM does not have any core dependencies preventing
> a module build.
>
> Also, new features from subsequent patches require helpers (namely
> drm_exec) which can be built as module.
>
> Signed-off-by: Danilo Krummrich <dakr at redhat.com>

Reviewed-by: Christian König <christian.koenig at amd.com> for this one here.

I hope that I can get somebody to work on the remaining patches with the 
end goal of using this in amdgpu as well.

Regards,
Christian.

> ---
>   drivers/gpu/drm/Kconfig         | 7 +++++++
>   drivers/gpu/drm/Makefile        | 2 +-
>   drivers/gpu/drm/drm_gpuvm.c     | 3 +++
>   drivers/gpu/drm/nouveau/Kconfig | 1 +
>   4 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
> index ab9ef1c20349..0f78a03e4e84 100644
> --- a/drivers/gpu/drm/Kconfig
> +++ b/drivers/gpu/drm/Kconfig
> @@ -216,6 +216,13 @@ config DRM_EXEC
>   	help
>   	  Execution context for command submissions
>   
> +config DRM_GPUVM
> +	tristate
> +	depends on DRM && DRM_EXEC
> +	help
> +	  GPU-VM representation providing helpers to manage a GPUs virtual
> +	  address space
> +
>   config DRM_BUDDY
>   	tristate
>   	depends on DRM
> diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
> index 7a84b3cddeab..8e1bde059170 100644
> --- a/drivers/gpu/drm/Makefile
> +++ b/drivers/gpu/drm/Makefile
> @@ -45,7 +45,6 @@ drm-y := \
>   	drm_vblank.o \
>   	drm_vblank_work.o \
>   	drm_vma_manager.o \
> -	drm_gpuvm.o \
>   	drm_writeback.o
>   drm-$(CONFIG_DRM_LEGACY) += \
>   	drm_agpsupport.o \
> @@ -81,6 +80,7 @@ obj-$(CONFIG_DRM_PANEL_ORIENTATION_QUIRKS) += drm_panel_orientation_quirks.o
>   #
>   #
>   obj-$(CONFIG_DRM_EXEC) += drm_exec.o
> +obj-$(CONFIG_DRM_GPUVM) += drm_gpuvm.o
>   
>   obj-$(CONFIG_DRM_BUDDY) += drm_buddy.o
>   
> diff --git a/drivers/gpu/drm/drm_gpuvm.c b/drivers/gpu/drm/drm_gpuvm.c
> index de1a69bc4a44..aae086deaa2b 100644
> --- a/drivers/gpu/drm/drm_gpuvm.c
> +++ b/drivers/gpu/drm/drm_gpuvm.c
> @@ -1723,3 +1723,6 @@ drm_gpuva_ops_free(struct drm_gpuvm *gpuvm,
>   	kfree(ops);
>   }
>   EXPORT_SYMBOL_GPL(drm_gpuva_ops_free);
> +
> +MODULE_DESCRIPTION("DRM GPUVM");
> +MODULE_LICENSE("GPL");
> diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
> index c52e8096cca4..1e6aaf95ff7c 100644
> --- a/drivers/gpu/drm/nouveau/Kconfig
> +++ b/drivers/gpu/drm/nouveau/Kconfig
> @@ -11,6 +11,7 @@ config DRM_NOUVEAU
>   	select DRM_TTM
>   	select DRM_TTM_HELPER
>   	select DRM_EXEC
> +	select DRM_GPUVM
>   	select DRM_SCHED
>   	select I2C
>   	select I2C_ALGOBIT



More information about the Nouveau mailing list