7938f42181
Rename struct dma_buf_map to struct iosys_map and corresponding APIs. Over time dma-buf-map grew up to more functionality than the one used by dma-buf: in fact it's just a shim layer to abstract system memory, that can be accessed via regular load and store, from IO memory that needs to be acessed via arch helpers. The idea is to extend this API so it can fulfill other needs, internal to a single driver. Example: in the i915 driver it's desired to share the implementation for integrated graphics, which uses mostly system memory, with discrete graphics, which may need to access IO memory. The conversion was mostly done with the following semantic patch: @r1@ @@ - struct dma_buf_map + struct iosys_map @r2@ @@ ( - DMA_BUF_MAP_INIT_VADDR + IOSYS_MAP_INIT_VADDR | - dma_buf_map_set_vaddr + iosys_map_set_vaddr | - dma_buf_map_set_vaddr_iomem + iosys_map_set_vaddr_iomem | - dma_buf_map_is_equal + iosys_map_is_equal | - dma_buf_map_is_null + iosys_map_is_null | - dma_buf_map_is_set + iosys_map_is_set | - dma_buf_map_clear + iosys_map_clear | - dma_buf_map_memcpy_to + iosys_map_memcpy_to | - dma_buf_map_incr + iosys_map_incr ) @@ @@ - #include <linux/dma-buf-map.h> + #include <linux/iosys-map.h> Then some files had their includes adjusted and some comments were update to remove mentions to dma-buf-map. Since this is not specific to dma-buf anymore, move the documentation to the "Bus-Independent Device Accesses" section. v2: - Squash patches v3: - Fix wrong removal of dma-buf.h from MAINTAINERS - Move documentation from dma-buf.rst to device-io.rst v4: - Change documentation title and level Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Acked-by: Christian König <christian.koenig@amd.com> Acked-by: Sumit Semwal <sumit.semwal@linaro.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Link: https://patchwork.freedesktop.org/patch/msgid/20220204170541.829227-1-lucas.demarchi@intel.com
41 lines
1.1 KiB
C
41 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0 OR MIT */
|
|
|
|
/*
|
|
* Xen para-virtual DRM device
|
|
*
|
|
* Copyright (C) 2016-2018 EPAM Systems Inc.
|
|
*
|
|
* Author: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
|
|
*/
|
|
|
|
#ifndef __XEN_DRM_FRONT_GEM_H
|
|
#define __XEN_DRM_FRONT_GEM_H
|
|
|
|
struct dma_buf_attachment;
|
|
struct iosys_map;
|
|
struct drm_device;
|
|
struct drm_gem_object;
|
|
struct sg_table;
|
|
|
|
struct drm_gem_object *xen_drm_front_gem_create(struct drm_device *dev,
|
|
size_t size);
|
|
|
|
struct drm_gem_object *
|
|
xen_drm_front_gem_import_sg_table(struct drm_device *dev,
|
|
struct dma_buf_attachment *attach,
|
|
struct sg_table *sgt);
|
|
|
|
struct sg_table *xen_drm_front_gem_get_sg_table(struct drm_gem_object *gem_obj);
|
|
|
|
struct page **xen_drm_front_gem_get_pages(struct drm_gem_object *obj);
|
|
|
|
void xen_drm_front_gem_free_object_unlocked(struct drm_gem_object *gem_obj);
|
|
|
|
int xen_drm_front_gem_prime_vmap(struct drm_gem_object *gem_obj,
|
|
struct iosys_map *map);
|
|
|
|
void xen_drm_front_gem_prime_vunmap(struct drm_gem_object *gem_obj,
|
|
struct iosys_map *map);
|
|
|
|
#endif /* __XEN_DRM_FRONT_GEM_H */
|