1/* SPDX-License-Identifier: MIT 2 * 3 * Copyright �� 2023 Intel Corporation 4 */ 5 6#ifndef _INTEL_DSB_BUFFER_H 7#define _INTEL_DSB_BUFFER_H 8 9#include <linux/types.h> 10 11struct intel_crtc; 12struct i915_vma; 13 14struct intel_dsb_buffer { 15 u32 *cmd_buf; 16 struct i915_vma *vma; 17 size_t buf_size; 18}; 19 20u32 intel_dsb_buffer_ggtt_offset(struct intel_dsb_buffer *dsb_buf); 21void intel_dsb_buffer_write(struct intel_dsb_buffer *dsb_buf, u32 idx, u32 val); 22u32 intel_dsb_buffer_read(struct intel_dsb_buffer *dsb_buf, u32 idx); 23void intel_dsb_buffer_memset(struct intel_dsb_buffer *dsb_buf, u32 idx, u32 val, size_t size); 24bool intel_dsb_buffer_create(struct intel_crtc *crtc, struct intel_dsb_buffer *dsb_buf, 25 size_t size); 26void intel_dsb_buffer_cleanup(struct intel_dsb_buffer *dsb_buf); 27void intel_dsb_buffer_flush_map(struct intel_dsb_buffer *dsb_buf); 28 29#endif 30