1 /* SPDX-License-Identifier: MIT */ 2 /* Copyright © 2024 Intel Corporation */ 3 4 #ifndef __INTEL_BO__ 5 #define __INTEL_BO__ 6 7 #include <linux/types.h> 8 9 struct drm_file; 10 struct drm_gem_object; 11 struct drm_mode_fb_cmd2; 12 struct drm_scanout_buffer; 13 struct intel_display; 14 struct intel_framebuffer; 15 struct seq_file; 16 struct vm_area_struct; 17 18 bool intel_bo_is_tiled(struct drm_gem_object *obj); 19 bool intel_bo_is_userptr(struct drm_gem_object *obj); 20 bool intel_bo_is_shmem(struct drm_gem_object *obj); 21 bool intel_bo_is_protected(struct drm_gem_object *obj); 22 int intel_bo_key_check(struct drm_gem_object *obj); 23 int intel_bo_fb_mmap(struct drm_gem_object *obj, struct vm_area_struct *vma); 24 int intel_bo_read_from_page(struct drm_gem_object *obj, u64 offset, void *dst, int size); 25 26 void intel_bo_describe(struct seq_file *m, struct drm_gem_object *obj); 27 28 void intel_bo_framebuffer_fini(struct drm_gem_object *obj); 29 int intel_bo_framebuffer_init(struct drm_gem_object *obj, struct drm_mode_fb_cmd2 *mode_cmd); 30 struct drm_gem_object *intel_bo_framebuffer_lookup(struct intel_display *display, 31 struct drm_file *filp, 32 const struct drm_mode_fb_cmd2 *user_mode_cmd); 33 34 #endif /* __INTEL_BO__ */ 35