xref: /linux/drivers/gpu/drm/i915/display/intel_bo.h (revision ff992dbfbe34360e3cdfb9ff19166a27478c6e51)
117cd58a8SJani Nikula /* SPDX-License-Identifier: MIT */
217cd58a8SJani Nikula /* Copyright © 2024 Intel Corporation */
317cd58a8SJani Nikula 
417cd58a8SJani Nikula #ifndef __INTEL_BO__
517cd58a8SJani Nikula #define __INTEL_BO__
617cd58a8SJani Nikula 
717cd58a8SJani Nikula #include <linux/types.h>
817cd58a8SJani Nikula 
917cd58a8SJani Nikula struct drm_gem_object;
10baa46d1bSJani Nikula struct vm_area_struct;
1117cd58a8SJani Nikula 
1217cd58a8SJani Nikula bool intel_bo_is_tiled(struct drm_gem_object *obj);
1333fd02e4SJani Nikula bool intel_bo_is_userptr(struct drm_gem_object *obj);
14baa46d1bSJani Nikula bool intel_bo_is_shmem(struct drm_gem_object *obj);
15ad36a322SJani Nikula bool intel_bo_is_protected(struct drm_gem_object *obj);
1633fd02e4SJani Nikula void intel_bo_flush_if_display(struct drm_gem_object *obj);
17baa46d1bSJani Nikula int intel_bo_fb_mmap(struct drm_gem_object *obj, struct vm_area_struct *vma);
1863db15feSJani Nikula int intel_bo_read_from_page(struct drm_gem_object *obj, u64 offset, void *dst, int size);
1917cd58a8SJani Nikula 
20*ff992dbfSJani Nikula struct intel_frontbuffer *intel_bo_get_frontbuffer(struct drm_gem_object *obj);
21*ff992dbfSJani Nikula struct intel_frontbuffer *intel_bo_set_frontbuffer(struct drm_gem_object *obj,
22*ff992dbfSJani Nikula 						   struct intel_frontbuffer *front);
23*ff992dbfSJani Nikula 
2417cd58a8SJani Nikula #endif /* __INTEL_BO__ */
25