1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 #ifndef DRM_GEM_TTM_HELPER_H
4 #define DRM_GEM_TTM_HELPER_H
6 #include <linux/container_of.h>
8 #include <drm/drm_device.h>
9 #include <drm/drm_gem.h>
10 #include <drm/ttm/ttm_bo.h>
14 #define drm_gem_ttm_of_gem(gem_obj) \
15 container_of(gem_obj, struct ttm_buffer_object, base)
17 void drm_gem_ttm_print_info(struct drm_printer
*p
, unsigned int indent
,
18 const struct drm_gem_object
*gem
);
19 int drm_gem_ttm_vmap(struct drm_gem_object
*gem
,
20 struct iosys_map
*map
);
21 void drm_gem_ttm_vunmap(struct drm_gem_object
*gem
,
22 struct iosys_map
*map
);
23 int drm_gem_ttm_mmap(struct drm_gem_object
*gem
,
24 struct vm_area_struct
*vma
);
26 int drm_gem_ttm_dumb_map_offset(struct drm_file
*file
, struct drm_device
*dev
,
27 uint32_t handle
, uint64_t *offset
);