All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: alexander.deucher@amd.com, christian.koenig@amd.com,
	airlied@linux.ie, daniel@ffwll.ch, linux@armlinux.org.uk,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	l.stach@pengutronix.de, christian.gmeiner@gmail.com,
	inki.dae@samsung.com, jy0922.shim@samsung.com,
	sw0312.kim@samsung.com, kyungmin.park@samsung.com,
	kgene@kernel.org, krzk@kernel.org, patrik.r.jakobsson@gmail.com,
	jani.nikula@linux.intel.com, joonas.lahtinen@linux.intel.com,
	rodrigo.vivi@intel.com, chunkuang.hu@kernel.org,
	p.zabel@pengutronix.de, matthias.bgg@gmail.com,
	robdclark@gmail.com, sean@poorly.run, bskeggs@redhat.com,
	tomi.valkeinen@ti.com, eric@anholt.net, hjc@rock-chips.com,
	heiko@sntech.de, thierry.reding@gmail.com, jonathanh@nvidia.com,
	rodrigosiqueiramelo@gmail.com, hamohammed.sa@gmail.com,
	oleksandr_andrushchenko@epam.com, hyun.kwon@xilinx.com,
	laurent.pinchart@ideasonboard.com, michal.simek@xilinx.com,
	sumit.semwal@linaro.org, evan.quan@amd.com,
	Hawking.Zhang@amd.com, tianci.yin@amd.com, marek.olsak@amd.com,
	hdegoede@redhat.com, andrey.grodzovsky@amd.com,
	Felix.Kuehling@amd.com, xinhui.pan@amd.com, aaron.liu@amd.com,
	nirmoy.das@amd.com, chris@chris-wilson.co.uk,
	matthew.auld@intel.com, tvrtko.ursulin@linux.intel.com,
	andi.shyti@intel.com, sam@ravnborg.org, miaoqinglang@huawei.com,
	emil.velikov@collabora.com, amd-gfx@lists.freedesktop.org,
	dri-devel@lists.freedesktop.org, etnaviv@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org,
	intel-gfx@lists.freedesktop.org,
	linux-mediatek@lists.infradead.org,
	linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org,
	nouveau@lists.freedesktop.org,
	linux-rockchip@lists.infradead.org, linux-tegra@vger.kernel.org,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel-/w4YWyX8dFk@public.gmane.org>
To: Thomas Zimmermann <tzimmermann-l3A5Bk7waGM@public.gmane.org>
Cc: hamohammed.sa-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org,
	andrey.grodzovsky-5C7GfCeVMHo@public.gmane.org,
	airlied-cv59FeDIM0c@public.gmane.org,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	joonas.lahtinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	michal.simek-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org,
	eric-WhKQ6XTQaPysTnJN9+BGXg@public.gmane.org,
	thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	krzk-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org,
	sumit.semwal-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	emil.velikov-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	jy0922.shim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org,
	oleksandr_andrushchenko-uRwfk40T5oI@public.gmane.org,
	tomi.valkeinen-l0cyMroinI0@public.gmane.org,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org,
	patrik.r.jakobsson-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org,
	linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	kgene-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	xen-devel-GuqFBffKawtpuQazS67q72D2FQJk+8+b@public.gmane.org,
	miaoqinglang-hv44wF8Li93QT0dZR+AlfA@public.gmane.org,
	intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	matthew.auld-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	chunkuang.hu-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	andi.shyti-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	daniel-/w4YWyX8dFk@public.gmane.org,
	linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	marek.olsak@amd.c
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann-l3A5Bk7waGM@public.gmane.org>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann-l3A5Bk7waGM@public.gmane.org>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter-/w4YWyX8dFk@public.gmane.org>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: hamohammed.sa@gmail.com, heiko@sntech.de,
	andrey.grodzovsky@amd.com, airlied@linux.ie,
	nouveau@lists.freedesktop.org, joonas.lahtinen@linux.intel.com,
	dri-devel@lists.freedesktop.org, michal.simek@xilinx.com,
	eric@anholt.net, thierry.reding@gmail.com, robdclark@gmail.com,
	krzk@kernel.org, sam@ravnborg.org, sumit.semwal@linaro.org,
	emil.velikov@collabora.com, linux-samsung-soc@vger.kernel.org,
	jy0922.shim@samsung.com, oleksandr_andrushchenko@epam.com,
	tomi.valkeinen@ti.com, linux-tegra@vger.kernel.org,
	linux@armlinux.org.uk, patrik.r.jakobsson@gmail.com,
	jonathanh@nvidia.com, linux-rockchip@lists.infradead.org,
	kgene@kernel.org, bskeggs@redhat.com,
	xen-devel@lists.xenproject.org, miaoqinglang@huawei.com,
	intel-gfx@lists.freedesktop.org, matthew.auld@intel.com,
	chunkuang.hu@kernel.org, andi.shyti@intel.com, daniel@ffwll.ch,
	linux-arm-msm@vger.kernel.org, marek.olsak@amd.com,
	tianci.yin@amd.com, maarten.lankhorst@linux.intel.com,
	etnaviv@lists.freedesktop.org, jani.nikula@linux.intel.com,
	inki.dae@samsung.com, hdegoede@redhat.com,
	christian.gmeiner@gmail.com, linux-mediatek@lists.infradead.org,
	mripard@kernel.org, rodrigo.vivi@intel.com,
	matthias.bgg@gmail.com, evan.quan@amd.com, sean@poorly.run,
	linux-arm-kernel@lists.infradead.org,
	tvrtko.ursulin@linux.intel.com, amd-gfx@lists.freedesktop.org,
	laurent.pinchart@ideasonboard.com, hyun.kwon@xilinx.com,
	rodrigosiqueiramelo@gmail.com, aaron.liu@amd.com,
	Felix.Kuehling@amd.com, xinhui.pan@amd.com,
	sw0312.kim@samsung.com, hjc@rock-chips.com,
	chris@chris-wilson.co.uk, kyungmin.park@samsung.com,
	nirmoy.das@amd.com, p.zabel@pengutronix.de,
	alexander.deucher@amd.com, Hawking.Zhang@amd.com,
	freedreno@lists.freedesktop.org, christian.koenig@amd.com,
	l.stach@pengutronix.de
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: hamohammed.sa@gmail.com, heiko@sntech.de,
	andrey.grodzovsky@amd.com, airlied@linux.ie,
	nouveau@lists.freedesktop.org, joonas.lahtinen@linux.intel.com,
	dri-devel@lists.freedesktop.org, michal.simek@xilinx.com,
	eric@anholt.net, thierry.reding@gmail.com, robdclark@gmail.com,
	krzk@kernel.org, sam@ravnborg.org, sumit.semwal@linaro.org,
	emil.velikov@collabora.com, linux-samsung-soc@vger.kernel.org,
	jy0922.shim@samsung.com, oleksandr_andrushchenko@epam.com,
	tomi.valkeinen@ti.com, linux-tegra@vger.kernel.org,
	linux@armlinux.org.uk, patrik.r.jakobsson@gmail.com,
	jonathanh@nvidia.com, linux-rockchip@lists.infradead.org,
	kgene@kernel.org, bskeggs@redhat.com,
	xen-devel@lists.xenproject.org, miaoqinglang@huawei.com,
	intel-gfx@lists.freedesktop.org, matthew.auld@intel.com,
	chunkuang.hu@kernel.org, andi.shyti@intel.com, daniel@ffwll.ch,
	linux-arm-msm@vger.kernel.org, marek.olsak@amd.com,
	tianci.yin@amd.com, maarten.lankhorst@linux.intel.com,
	etnaviv@lists.freedesktop.org, jani.nikula@linux.intel.com,
	inki.dae@samsung.com, hdegoede@redhat.com,
	christian.gmeiner@gmail.com, linux-mediatek@lists.infradead.org,
	mripard@kernel.org, rodrigo.vivi@intel.com,
	matthias.bgg@gmail.com, evan.quan@amd.com, sean@poorly.run,
	linux-arm-kernel@lists.infradead.org,
	tvrtko.ursulin@linux.intel.com, amd-gfx@lists.freedesktop.org,
	laurent.pinchart@ideasonboard.com, hyun.kwon@xilinx.com,
	rodrigosiqueiramelo@gmail.com, aaron.liu@amd.com,
	Felix.Kuehling@amd.com, xinhui.pan@amd.com,
	sw0312.kim@samsung.com, hjc@rock-chips.com,
	chris@chris-wilson.co.uk, kyungmin.park@samsung.com,
	nirmoy.das@amd.com, p.zabel@pengutronix.de,
	alexander.deucher@amd.com, Hawking.Zhang@amd.com,
	freedreno@lists.freedesktop.org, christian.koenig@amd.com,
	l.stach@pengutronix.de
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: hamohammed.sa@gmail.com, airlied@linux.ie,
	nouveau@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	michal.simek@xilinx.com, thierry.reding@gmail.com,
	krzk@kernel.org, sam@ravnborg.org, emil.velikov@collabora.com,
	linux-samsung-soc@vger.kernel.org, jy0922.shim@samsung.com,
	oleksandr_andrushchenko@epam.com, tomi.valkeinen@ti.com,
	linux-tegra@vger.kernel.org, linux@armlinux.org.uk,
	jonathanh@nvidia.com, linux-rockchip@lists.infradead.org,
	kgene@kernel.org, bskeggs@redhat.com,
	xen-devel@lists.xenproject.org, miaoqinglang@huawei.com,
	intel-gfx@lists.freedesktop.org, matthew.auld@intel.com,
	chunkuang.hu@kernel.org, andi.shyti@intel.com,
	linux-arm-msm@vger.kernel.org, marek.olsak@amd.com,
	tianci.yin@amd.com, etnaviv@lists.freedesktop.org,
	hdegoede@redhat.com, linux-mediatek@lists.infradead.org,
	rodrigo.vivi@intel.com, matthias.bgg@gmail.com,
	evan.quan@amd.com, sean@poorly.run,
	linux-arm-kernel@lists.infradead.org,
	tvrtko.ursulin@linux.intel.com, amd-gfx@lists.freedesktop.org,
	laurent.pinchart@ideasonboard.com, hyun.kwon@xilinx.com,
	rodrigosiqueiramelo@gmail.com, aaron.liu@amd.com,
	Felix.Kuehling@amd.com, xinhui.pan@amd.com,
	sw0312.kim@samsung.com, hjc@rock-chips.com,
	chris@chris-wilson.co.uk, kyungmin.park@samsung.com,
	nirmoy.das@amd.com, alexander.deucher@amd.com,
	Hawking.Zhang@amd.com, freedreno@lists.freedesktop.org,
	christian.koenig@amd.com
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: hamohammed.sa@gmail.com, heiko@sntech.de,
	andrey.grodzovsky@amd.com, airlied@linux.ie,
	nouveau@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
	michal.simek@xilinx.com, eric@anholt.net, krzk@kernel.org,
	sam@ravnborg.org, sumit.semwal@linaro.org,
	emil.velikov@collabora.com, linux-samsung-soc@vger.kernel.org,
	jy0922.shim@samsung.com, oleksandr_andrushchenko@epam.com,
	tomi.valkeinen@ti.com, linux-tegra@vger.kernel.org,
	linux@armlinux.org.uk, jonathanh@nvidia.com,
	linux-rockchip@lists.infradead.org, kgene@kernel.org,
	bskeggs@redhat.com, xen-devel@lists.xenproject.org,
	miaoqinglang@huawei.com, intel-gfx@lists.freedesktop.org,
	matthew.auld@intel.com, chunkuang.hu@kernel.org,
	linux-arm-msm@vger.kernel.org, marek.olsak@amd.com,
	tianci.yin@amd.com, etnaviv@lists.freedesktop.org,
	inki.dae@samsung.com, christian.gmeiner@gmail.com,
	linux-mediatek@lists.infradead.org, mripard@kernel.org,
	matthias.bgg@gmail.com, evan.quan@amd.com,
	linux-arm-kernel@lists.infradead.org,
	amd-gfx@lists.freedesktop.org, laurent.pinchart@ideasonboard.com,
	hyun.kwon@xilinx.com, rodrigosiqueiramelo@gmail.com,
	aaron.liu@amd.com, Felix.Kuehling@amd.com, xinhui.pan@amd.com,
	sw0312.kim@samsung.com, hjc@rock-chips.com,
	chris@chris-wilson.co.uk, kyungmin.park@samsung.com,
	nirmoy.das@amd.com, p.zabel@pengutronix.de,
	alexander.deucher@amd.com, Hawking.Zhang@amd.com,
	freedreno@lists.freedesktop.org, christian.koenig@amd.com,
	l.stach@pengutronix.de
Subject: Re: [Intel-gfx] [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Thomas Zimmermann <tzimmermann@suse.de>
Cc: hamohammed.sa@gmail.com, heiko@sntech.de,
	andrey.grodzovsky@amd.com, airlied@linux.ie,
	nouveau@lists.freedesktop.org, joonas.lahtinen@linux.intel.com,
	dri-devel@lists.freedesktop.org, michal.simek@xilinx.com,
	eric@anholt.net, thierry.reding@gmail.com, robdclark@gmail.com,
	krzk@kernel.org, sam@ravnborg.org, sumit.semwal@linaro.org,
	emil.velikov@collabora.com, linux-samsung-soc@vger.kernel.org,
	jy0922.shim@samsung.com, oleksandr_andrushchenko@epam.com,
	tomi.valkeinen@ti.com, linux-tegra@vger.kernel.org,
	linux@armlinux.org.uk, patrik.r.jakobsson@gmail.com,
	jonathanh@nvidia.com, linux-rockchip@lists.infradead.org,
	kgene@kernel.org, bskeggs@redhat.com,
	xen-devel@lists.xenproject.org, miaoqinglang@huawei.com,
	intel-gfx@lists.freedesktop.org, matthew.auld@intel.com,
	chunkuang.hu@kernel.org, andi.shyti@intel.com, daniel@ffwll.ch,
	linux-arm-msm@vger.kernel.org, marek.olsak@amd.com,
	tianci.yin@amd.com, maarten.lankhorst@linux.intel.com,
	etnaviv@lists.freedesktop.org, jani.nikula@linux.intel.com,
	inki.dae@samsung.com, hdegoede@redhat.com,
	christian.gmeiner@gmail.com, linux-mediatek@lists.infradead.org,
	mripard@kernel.org, rodrigo.vivi@intel.com,
	matthias.bgg@gmail.com, evan.quan@amd.com, sean@poorly.run,
	linux-arm-kernel@lists.infradead.org,
	tvrtko.ursulin@linux.intel.com, amd-gfx@lists.freedesktop.org,
	laurent.pinchart@ideasonboard.com, hyun.kwon@xilinx.com,
	rodrigosiqueiramelo@gmail.com, aaron.liu@amd.com,
	Felix.Kuehling@amd.com, xinhui.pan@amd.com,
	sw0312.kim@samsung.com, hjc@rock-chips.com,
	chris@chris-wilson.co.uk, kyungmin.park@samsung.com,
	nirmoy.das@amd.com, p.zabel@pengutronix.de,
	alexander.deucher@amd.com, Hawking.Zhang@amd.com,
	freedreno@lists.freedesktop.org, christian.koenig@amd.com,
	l.stach@pengutronix.de
Subject: Re: [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions
Date: Wed, 16 Sep 2020 14:04:24 +0200	[thread overview]
Message-ID: <20200916120424.GM438822@phenom.ffwll.local> (raw)
In-Reply-To: <20200915145958.19993-10-tzimmermann@suse.de>

On Tue, Sep 15, 2020 at 04:59:46PM +0200, Thomas Zimmermann wrote:
> GEM object functions deprecate several similar callback interfaces in
> struct drm_driver. This patch replaces the per-driver callbacks with
> per-instance callbacks in nouveau.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>

Hm ttm and gem mmap world still quite disjoint ... Anyway that's an
entirely different thing.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/nouveau/nouveau_drm.c   |  9 ---------
>  drivers/gpu/drm/nouveau/nouveau_gem.c   | 13 +++++++++++++
>  drivers/gpu/drm/nouveau/nouveau_gem.h   |  2 ++
>  drivers/gpu/drm/nouveau/nouveau_prime.c |  2 ++
>  4 files changed, 17 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 42fc5c813a9b..72640bca1617 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -1207,16 +1207,7 @@ driver_stub = {
>  
>  	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
>  	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_pin = nouveau_gem_prime_pin,
> -	.gem_prime_unpin = nouveau_gem_prime_unpin,
> -	.gem_prime_get_sg_table = nouveau_gem_prime_get_sg_table,
>  	.gem_prime_import_sg_table = nouveau_gem_prime_import_sg_table,
> -	.gem_prime_vmap = nouveau_gem_prime_vmap,
> -	.gem_prime_vunmap = nouveau_gem_prime_vunmap,
> -
> -	.gem_free_object_unlocked = nouveau_gem_object_del,
> -	.gem_open_object = nouveau_gem_object_open,
> -	.gem_close_object = nouveau_gem_object_close,
>  
>  	.dumb_create = nouveau_display_dumb_create,
>  	.dumb_map_offset = nouveau_display_dumb_map_offset,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c
> index 89adadf4706b..28e0cbb00876 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c
> @@ -169,6 +169,17 @@ nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv)
>  	ttm_bo_unreserve(&nvbo->bo);
>  }
>  
> +const struct drm_gem_object_funcs nouveau_gem_object_funcs = {
> +	.free = nouveau_gem_object_del,
> +	.open = nouveau_gem_object_open,
> +	.close = nouveau_gem_object_close,
> +	.pin = nouveau_gem_prime_pin,
> +	.unpin = nouveau_gem_prime_unpin,
> +	.get_sg_table = nouveau_gem_prime_get_sg_table,
> +	.vmap = nouveau_gem_prime_vmap,
> +	.vunmap = nouveau_gem_prime_vunmap,
> +};
> +
>  int
>  nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  		uint32_t tile_mode, uint32_t tile_flags,
> @@ -186,6 +197,8 @@ nouveau_gem_new(struct nouveau_cli *cli, u64 size, int align, uint32_t domain,
>  	if (IS_ERR(nvbo))
>  		return PTR_ERR(nvbo);
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(drm->dev, &nvbo->bo.base, size);
> diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.h b/drivers/gpu/drm/nouveau/nouveau_gem.h
> index 978e07591990..b35c180322e2 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_gem.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_gem.h
> @@ -5,6 +5,8 @@
>  #include "nouveau_drv.h"
>  #include "nouveau_bo.h"
>  
> +extern const struct drm_gem_object_funcs nouveau_gem_object_funcs;
> +
>  static inline struct nouveau_bo *
>  nouveau_gem_object(struct drm_gem_object *gem)
>  {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c b/drivers/gpu/drm/nouveau/nouveau_prime.c
> index b2ecb91f8ddc..a8264aebf3d4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_prime.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
> @@ -77,6 +77,8 @@ struct drm_gem_object *nouveau_gem_prime_import_sg_table(struct drm_device *dev,
>  
>  	nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
>  
> +	nvbo->bo.base.funcs = &nouveau_gem_object_funcs;
> +
>  	/* Initialize the embedded gem-object. We return a single gem-reference
>  	 * to the caller, instead of a normal nouveau_bo ttm reference. */
>  	ret = drm_gem_object_init(dev, &nvbo->bo.base, size);
> -- 
> 2.28.0
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  reply	other threads:[~2020-09-16 21:08 UTC|newest]

Thread overview: 332+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-15 14:59 [PATCH v2 00/21] Convert all remaining drivers to GEM object functions Thomas Zimmermann
2020-09-15 14:59 ` Thomas Zimmermann
2020-09-15 14:59 ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59 ` Thomas Zimmermann
2020-09-15 14:59 ` Thomas Zimmermann
2020-09-15 14:59 ` Thomas Zimmermann
2020-09-15 14:59 ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 01/21] drm/amdgpu: Introduce " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 15:05   ` Christian König
2020-09-15 15:05     ` Christian König
2020-09-15 15:05     ` [Intel-gfx] " Christian König
2020-09-15 15:05     ` Christian König
2020-09-15 15:05     ` Christian König
2020-09-15 15:05     ` Christian König
2020-09-15 15:05     ` Christian König
2020-09-17  7:40     ` Thomas Zimmermann
2020-09-17  7:40       ` Thomas Zimmermann
2020-09-17  7:40       ` [Intel-gfx] " Thomas Zimmermann
2020-09-17  7:40       ` Thomas Zimmermann
2020-09-17  7:40       ` Thomas Zimmermann
2020-09-17  7:40       ` Thomas Zimmermann
2020-09-17  7:40       ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 02/21] drm/armada: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 15:07   ` Russell King - ARM Linux admin
2020-09-15 15:07     ` Russell King - ARM Linux admin
2020-09-15 15:07     ` [Intel-gfx] " Russell King - ARM Linux admin
2020-09-15 15:07     ` Russell King - ARM Linux admin
2020-09-15 15:07     ` Russell King - ARM Linux admin
2020-09-15 15:07     ` Russell King - ARM Linux admin
2020-09-15 15:07     ` Russell King - ARM Linux admin
2020-09-15 14:59 ` [PATCH v2 03/21] drm/etnaviv: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 11:21   ` Daniel Vetter
2020-09-16 11:21     ` Daniel Vetter
2020-09-16 11:21     ` [Intel-gfx] " Daniel Vetter
2020-09-16 11:21     ` Daniel Vetter
2020-09-16 11:21     ` Daniel Vetter
2020-09-16 11:21     ` Daniel Vetter
2020-09-16 11:21     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 04/21] drm/exynos: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 10:03   ` Daniel Vetter
2020-09-16 10:03     ` Daniel Vetter
2020-09-16 10:03     ` [Intel-gfx] " Daniel Vetter
2020-09-16 10:03     ` Daniel Vetter
2020-09-16 10:03     ` Daniel Vetter
2020-09-16 10:03     ` Daniel Vetter
2020-09-16 10:03     ` Daniel Vetter
2020-09-16 10:36     ` Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 10:36       ` [Intel-gfx] " Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 10:36       ` Thomas Zimmermann
2020-09-16 11:24       ` Daniel Vetter
2020-09-16 11:24         ` Daniel Vetter
2020-09-16 11:24         ` [Intel-gfx] " Daniel Vetter
2020-09-16 11:24         ` Daniel Vetter
2020-09-16 11:24         ` Daniel Vetter
2020-09-16 11:24         ` Daniel Vetter
2020-09-16 11:24         ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 05/21] drm/gma500: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 11:31   ` Daniel Vetter
2020-09-16 11:31     ` Daniel Vetter
2020-09-16 11:31     ` [Intel-gfx] " Daniel Vetter
2020-09-16 11:31     ` Daniel Vetter
2020-09-16 11:31     ` Daniel Vetter
2020-09-16 11:31     ` Daniel Vetter
2020-09-16 11:31     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 06/21] drm/i915: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 16:14   ` Tvrtko Ursulin
2020-09-15 16:14     ` Tvrtko Ursulin
2020-09-15 16:14     ` [Intel-gfx] " Tvrtko Ursulin
2020-09-15 16:14     ` Tvrtko Ursulin
2020-09-15 16:14     ` Tvrtko Ursulin
2020-09-15 16:14     ` Tvrtko Ursulin
2020-09-15 16:14     ` Tvrtko Ursulin
2020-09-15 14:59 ` [PATCH v2 07/21] drm/mediatek: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 11:35   ` Daniel Vetter
2020-09-16 11:35     ` Daniel Vetter
2020-09-16 11:35     ` [Intel-gfx] " Daniel Vetter
2020-09-16 11:35     ` Daniel Vetter
2020-09-16 11:35     ` Daniel Vetter
2020-09-16 11:35     ` Daniel Vetter
2020-09-16 11:35     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 08/21] drm/msm: Introduce GEM object funcs Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 12:01   ` Daniel Vetter
2020-09-16 12:01     ` Daniel Vetter
2020-09-16 12:01     ` [Intel-gfx] " Daniel Vetter
2020-09-16 12:01     ` Daniel Vetter
2020-09-16 12:01     ` Daniel Vetter
2020-09-16 12:01     ` Daniel Vetter
2020-09-16 12:01     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 09/21] drm/nouveau: Introduce GEM object functions Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 12:04   ` Daniel Vetter [this message]
2020-09-16 12:04     ` Daniel Vetter
2020-09-16 12:04     ` [Intel-gfx] " Daniel Vetter
2020-09-16 12:04     ` Daniel Vetter
2020-09-16 12:04     ` Daniel Vetter
2020-09-16 12:04     ` Daniel Vetter
2020-09-16 12:04     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 10/21] drm/omapdrm: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 11/21] drm/pl111: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 12/21] drm/radeon: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 15:08   ` Christian König
2020-09-15 15:08     ` Christian König
2020-09-15 15:08     ` [Intel-gfx] " Christian König
2020-09-15 15:08     ` Christian König
2020-09-15 15:08     ` Christian König
2020-09-15 15:08     ` Christian König
2020-09-15 15:08     ` Christian König
2020-09-15 14:59 ` [PATCH v2 13/21] drm/rockchip: Convert to drm_gem_object_funcs Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16  4:19   ` kernel test robot
2020-09-16 12:07   ` Daniel Vetter
2020-09-16 12:07     ` Daniel Vetter
2020-09-16 12:07     ` [Intel-gfx] " Daniel Vetter
2020-09-16 12:07     ` Daniel Vetter
2020-09-16 12:07     ` Daniel Vetter
2020-09-16 12:07     ` Daniel Vetter
2020-09-16 12:07     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 14/21] drm/tegra: Introduce GEM object functions Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-17 10:56   ` Thierry Reding
2020-09-17 10:56     ` Thierry Reding
2020-09-17 10:56     ` [Intel-gfx] " Thierry Reding
2020-09-17 10:56     ` Thierry Reding
2020-09-17 10:56     ` Thierry Reding
2020-09-17 10:56     ` Thierry Reding
2020-09-17 10:56     ` Thierry Reding
2020-09-15 14:59 ` [PATCH v2 15/21] drm/vc4: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 16/21] drm/vgem: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-17 14:01   ` Melissa Wen
2020-09-17 14:01     ` Melissa Wen
2020-09-17 14:01     ` [Intel-gfx] " Melissa Wen
2020-09-17 14:01     ` Melissa Wen
2020-09-17 14:01     ` Melissa Wen
2020-09-17 14:01     ` Melissa Wen
2020-09-17 14:01     ` Melissa Wen
2020-09-15 14:59 ` [PATCH v2 17/21] drm/virtgpu: Set PRIME export function in struct drm_gem_object_funcs Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16 12:09   ` Daniel Vetter
2020-09-16 12:09     ` Daniel Vetter
2020-09-16 12:09     ` [Intel-gfx] " Daniel Vetter
2020-09-16 12:09     ` Daniel Vetter
2020-09-16 12:09     ` Daniel Vetter
2020-09-16 12:09     ` Daniel Vetter
2020-09-16 12:09     ` Daniel Vetter
2020-09-15 14:59 ` [PATCH v2 18/21] drm/vkms: Introduce GEM object functions Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-17 11:31   ` Melissa Wen
2020-09-17 11:31     ` Melissa Wen
2020-09-17 11:31     ` [Intel-gfx] " Melissa Wen
2020-09-17 11:31     ` Melissa Wen
2020-09-17 11:31     ` Melissa Wen
2020-09-17 11:31     ` Melissa Wen
2020-09-17 11:31     ` Melissa Wen
2020-09-15 14:59 ` [PATCH v2 19/21] drm/xen: " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59 ` [PATCH v2 20/21] drm/xlnx: Initialize DRM driver instance with CMA helper macro Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 15:53   ` Laurent Pinchart
2020-09-15 15:53     ` Laurent Pinchart
2020-09-15 15:53     ` [Intel-gfx] " Laurent Pinchart
2020-09-15 15:53     ` Laurent Pinchart
2020-09-15 15:53     ` Laurent Pinchart
2020-09-15 15:53     ` Laurent Pinchart
2020-09-15 15:53     ` Laurent Pinchart
2020-09-15 18:39     ` Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 18:39       ` [Intel-gfx] " Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 18:39       ` Hyun Kwon
2020-09-15 14:59 ` [PATCH v2 21/21] drm: Remove obsolete GEM and PRIME callbacks from struct drm_driver Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` [Intel-gfx] " Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-15 14:59   ` Thomas Zimmermann
2020-09-16  8:01   ` kernel test robot
2020-09-16 10:16   ` kernel test robot
2020-09-16 12:12   ` Daniel Vetter
2020-09-16 12:12     ` Daniel Vetter
2020-09-16 12:12     ` [Intel-gfx] " Daniel Vetter
2020-09-16 12:12     ` Daniel Vetter
2020-09-16 12:12     ` Daniel Vetter
2020-09-16 12:12     ` Daniel Vetter
2020-09-16 12:12     ` Daniel Vetter
2020-09-16 17:55   ` Thomas Zimmermann
2020-09-16 17:55     ` Thomas Zimmermann
2020-09-16 17:55     ` [Intel-gfx] " Thomas Zimmermann
2020-09-16 17:55     ` Thomas Zimmermann
2020-09-16 17:55     ` Thomas Zimmermann
2020-09-16 17:55     ` Thomas Zimmermann
2020-09-16 17:55     ` Thomas Zimmermann
2020-09-21  8:11   ` Dan Carpenter
2020-09-21  8:11     ` Dan Carpenter
2020-09-15 15:25 ` [PATCH v2 00/21] Convert all remaining drivers to GEM object functions Christian König
2020-09-15 15:25   ` Christian König
2020-09-15 15:25   ` [Intel-gfx] " Christian König
2020-09-15 15:25   ` Christian König
2020-09-15 15:25   ` Christian König
2020-09-15 15:25   ` Christian König
2020-09-15 15:25   ` Christian König
2020-09-17  7:05   ` Thomas Zimmermann
2020-09-17  7:05     ` Thomas Zimmermann
2020-09-17  7:05     ` [Intel-gfx] " Thomas Zimmermann
2020-09-17  7:05     ` Thomas Zimmermann
2020-09-17  7:05     ` Thomas Zimmermann
2020-09-17  7:05     ` Thomas Zimmermann
2020-09-17  7:05     ` Thomas Zimmermann
2020-09-15 16:22 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Convert all remaining drivers to GEM object functions (rev2) Patchwork
2020-09-15 16:24 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-09-15 16:39 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200916120424.GM438822@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=Felix.Kuehling@amd.com \
    --cc=Hawking.Zhang@amd.com \
    --cc=aaron.liu@amd.com \
    --cc=airlied@linux.ie \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=andi.shyti@intel.com \
    --cc=andrey.grodzovsky@amd.com \
    --cc=bskeggs@redhat.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=christian.gmeiner@gmail.com \
    --cc=christian.koenig@amd.com \
    --cc=chunkuang.hu@kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=emil.velikov@collabora.com \
    --cc=eric@anholt.net \
    --cc=etnaviv@lists.freedesktop.org \
    --cc=evan.quan@amd.com \
    --cc=freedreno@lists.freedesktop.org \
    --cc=hamohammed.sa@gmail.com \
    --cc=hdegoede@redhat.com \
    --cc=heiko@sntech.de \
    --cc=hjc@rock-chips.com \
    --cc=hyun.kwon@xilinx.com \
    --cc=inki.dae@samsung.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@linux.intel.com \
    --cc=jonathanh@nvidia.com \
    --cc=joonas.lahtinen@linux.intel.com \
    --cc=jy0922.shim@samsung.com \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=kyungmin.park@samsung.com \
    --cc=l.stach@pengutronix.de \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=marek.olsak@amd.com \
    --cc=matthew.auld@intel.com \
    --cc=matthias.bgg@gmail.com \
    --cc=miaoqinglang@huawei.com \
    --cc=michal.simek@xilinx.com \
    --cc=mripard@kernel.org \
    --cc=nirmoy.das@amd.com \
    --cc=nouveau@lists.freedesktop.org \
    --cc=oleksandr_andrushchenko@epam.com \
    --cc=p.zabel@pengutronix.de \
    --cc=patrik.r.jakobsson@gmail.com \
    --cc=robdclark@gmail.com \
    --cc=rodrigo.vivi@intel.com \
    --cc=rodrigosiqueiramelo@gmail.com \
    --cc=sam@ravnborg.org \
    --cc=sean@poorly.run \
    --cc=sumit.semwal@linaro.org \
    --cc=sw0312.kim@samsung.com \
    --cc=thierry.reding@gmail.com \
    --cc=tianci.yin@amd.com \
    --cc=tomi.valkeinen@ti.com \
    --cc=tvrtko.ursulin@linux.intel.com \
    --cc=tzimmermann@suse.de \
    --cc=xen-devel@lists.xenproject.org \
    --cc=xinhui.pan@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.