mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-06 02:24:14 +08:00
7e542ff8b4
Fixes a build failure with mediatek. This change was supposed to be part of commit49a3f51dfe
("drm/gem: Use struct dma_buf_map in GEM vmap ops and convert GEM backends"), but mediatek was forgotten. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Fixes:49a3f51dfe
("drm/gem: Use struct dma_buf_map in GEM vmap ops and convert GEM backends") Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: Christian König <christian.koenig@amd.com> Cc: David Airlie <airlied@linux.ie> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Maxime Ripard <mripard@kernel.org> Cc: Dave Airlie <airlied@redhat.com> Cc: Lucas Stach <l.stach@pengutronix.de> Cc: Russell King <linux+etnaviv@armlinux.org.uk> Cc: Christian Gmeiner <christian.gmeiner@gmail.com> Cc: Qiang Yu <yuq825@gmail.com> Cc: Ben Skeggs <bskeggs@redhat.com> Cc: Rob Herring <robh@kernel.org> Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com> Cc: Steven Price <steven.price@arm.com> Cc: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Alex Deucher <alexander.deucher@amd.com> Cc: "Christian König" <christian.koenig@amd.com> Cc: Sandy Huang <hjc@rock-chips.com> Cc: "Heiko Stübner" <heiko@sntech.de> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Sean Paul <sean@poorly.run> Cc: Eric Anholt <eric@anholt.net> Cc: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Cc: Melissa Wen <melissa.srw@gmail.com> Cc: Haneen Mohammed <hamohammed.sa@gmail.com> Cc: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: Emil Velikov <emil.velikov@collabora.com> Cc: Marek Szyprowski <m.szyprowski@samsung.com> Cc: Arunpravin <apaneers@amd.com> Cc: Huang Rui <ray.huang@amd.com> Cc: Luben Tuikov <luben.tuikov@amd.com> Cc: Madhav Chauhan <madhav.chauhan@amd.com> Cc: Nirmoy Das <Nirmoy.Das@amd.com> Cc: Jason Gunthorpe <jgg@ziepe.ca> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: dri-devel@lists.freedesktop.org Cc: etnaviv@lists.freedesktop.org Cc: lima@lists.freedesktop.org Cc: nouveau@lists.freedesktop.org Cc: virtualization@lists.linux-foundation.org Cc: spice-devel@lists.freedesktop.org Cc: amd-gfx@lists.freedesktop.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-rockchip@lists.infradead.org Cc: xen-devel@lists.xenproject.org Link: https://patchwork.freedesktop.org/patch/msgid/20201109103242.19544-3-tzimmermann@suse.de
52 lines
1.7 KiB
C
52 lines
1.7 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (c) 2015 MediaTek Inc.
|
|
*/
|
|
|
|
#ifndef _MTK_DRM_GEM_H_
|
|
#define _MTK_DRM_GEM_H_
|
|
|
|
#include <drm/drm_gem.h>
|
|
|
|
/*
|
|
* mtk drm buffer structure.
|
|
*
|
|
* @base: a gem object.
|
|
* - a new handle to this gem object would be created
|
|
* by drm_gem_handle_create().
|
|
* @cookie: the return value of dma_alloc_attrs(), keep it for dma_free_attrs()
|
|
* @kvaddr: kernel virtual address of gem buffer.
|
|
* @dma_addr: dma address of gem buffer.
|
|
* @dma_attrs: dma attributes of gem buffer.
|
|
*
|
|
* P.S. this object would be transferred to user as kms_bo.handle so
|
|
* user can access the buffer through kms_bo.handle.
|
|
*/
|
|
struct mtk_drm_gem_obj {
|
|
struct drm_gem_object base;
|
|
void *cookie;
|
|
void *kvaddr;
|
|
dma_addr_t dma_addr;
|
|
unsigned long dma_attrs;
|
|
struct sg_table *sg;
|
|
struct page **pages;
|
|
};
|
|
|
|
#define to_mtk_gem_obj(x) container_of(x, struct mtk_drm_gem_obj, base)
|
|
|
|
void mtk_drm_gem_free_object(struct drm_gem_object *gem);
|
|
struct mtk_drm_gem_obj *mtk_drm_gem_create(struct drm_device *dev, size_t size,
|
|
bool alloc_kmap);
|
|
int mtk_drm_gem_dumb_create(struct drm_file *file_priv, struct drm_device *dev,
|
|
struct drm_mode_create_dumb *args);
|
|
int mtk_drm_gem_mmap(struct file *filp, struct vm_area_struct *vma);
|
|
int mtk_drm_gem_mmap_buf(struct drm_gem_object *obj,
|
|
struct vm_area_struct *vma);
|
|
struct sg_table *mtk_gem_prime_get_sg_table(struct drm_gem_object *obj);
|
|
struct drm_gem_object *mtk_gem_prime_import_sg_table(struct drm_device *dev,
|
|
struct dma_buf_attachment *attach, struct sg_table *sg);
|
|
int mtk_drm_gem_prime_vmap(struct drm_gem_object *obj, struct dma_buf_map *map);
|
|
void mtk_drm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map *map);
|
|
|
|
#endif
|