[Intel-gfx] [PATCH 1/4] drm/exynos: explicit store base gem object in dma_buf->priv

Inki Dae inki.dae at samsung.com
Thu Aug 8 06:56:28 CEST 2013


Hi, Daniel. You can repost your patch set including the below my patch. And
my patch numbering is wrong. Sorry about that.

[PATCH 1/4] -> [PATCH 4/4]


Thanks,
Inki Dae

> -----Original Message-----
> From: Inki Dae [mailto:inki.dae at samsung.com]
> Sent: Thursday, August 08, 2013 1:40 PM
> To: daniel at ffwll.ch
> Cc: dri-devel at lists.freedesktop.org; intel-gfx at lists.freedesktop.org; Inki
> Dae; Kyungmin Park
> Subject: [PATCH 1/4] drm/exynos: explicit store base gem object in
> dma_buf->priv
> 
> Signed-off-by: Inki Dae <inki.dae at samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.park at samsung.com>
> ---
>  drivers/gpu/drm/exynos/exynos_drm_dmabuf.c |   12 ++++++++----
>  1 files changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> b/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> index 3cd56e1..fd76449 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> @@ -22,6 +22,11 @@ struct exynos_drm_dmabuf_attachment {
>  	bool is_mapped;
>  };
> 
> +static struct exynos_drm_gem_obj *dma_buf_to_obj(struct dma_buf *buf)
> +{
> +	return to_exynos_gem_obj(buf->priv);
> +}
> +
>  static int exynos_gem_attach_dma_buf(struct dma_buf *dmabuf,
>  					struct device *dev,
>  					struct dma_buf_attachment *attach)
> @@ -63,7 +68,7 @@ static struct sg_table *
>  					enum dma_data_direction dir)
>  {
>  	struct exynos_drm_dmabuf_attachment *exynos_attach = attach->priv;
> -	struct exynos_drm_gem_obj *gem_obj = attach->dmabuf->priv;
> +	struct exynos_drm_gem_obj *gem_obj = dma_buf_to_obj(attach->dmabuf);
>  	struct drm_device *dev = gem_obj->base.dev;
>  	struct exynos_drm_gem_buf *buf;
>  	struct scatterlist *rd, *wr;
> @@ -180,7 +185,7 @@ struct dma_buf *exynos_dmabuf_prime_export(struct
> drm_device *drm_dev,
>  {
>  	struct exynos_drm_gem_obj *exynos_gem_obj = to_exynos_gem_obj(obj);
> 
> -	return dma_buf_export(exynos_gem_obj, &exynos_dmabuf_ops,
> +	return dma_buf_export(obj, &exynos_dmabuf_ops,
>  				exynos_gem_obj->base.size, flags);
>  }
> 
> @@ -198,8 +203,7 @@ struct drm_gem_object
> *exynos_dmabuf_prime_import(struct drm_device *drm_dev,
>  	if (dma_buf->ops == &exynos_dmabuf_ops) {
>  		struct drm_gem_object *obj;
> 
> -		exynos_gem_obj = dma_buf->priv;
> -		obj = &exynos_gem_obj->base;
> +		obj = dma_buf->priv;
> 
>  		/* is it from our device? */
>  		if (obj->dev == drm_dev) {
> --
> 1.7.5.4




More information about the Intel-gfx mailing list