| /* SPDX-License-Identifier: MIT |
| * |
| * Copyright © 2023 Intel Corporation |
| */ |
| |
| #ifndef _INTEL_DSB_BUFFER_H |
| #define _INTEL_DSB_BUFFER_H |
| |
| #include <linux/types.h> |
| |
| struct intel_crtc; |
| struct i915_vma; |
| |
| struct intel_dsb_buffer { |
| u32 *cmd_buf; |
| struct i915_vma *vma; |
| size_t buf_size; |
| }; |
| |
| u32 intel_dsb_buffer_ggtt_offset(struct intel_dsb_buffer *dsb_buf); |
| void intel_dsb_buffer_write(struct intel_dsb_buffer *dsb_buf, u32 idx, u32 val); |
| u32 intel_dsb_buffer_read(struct intel_dsb_buffer *dsb_buf, u32 idx); |
| void intel_dsb_buffer_memset(struct intel_dsb_buffer *dsb_buf, u32 idx, u32 val, size_t size); |
| bool intel_dsb_buffer_create(struct intel_crtc *crtc, struct intel_dsb_buffer *dsb_buf, |
| size_t size); |
| void intel_dsb_buffer_cleanup(struct intel_dsb_buffer *dsb_buf); |
| void intel_dsb_buffer_flush_map(struct intel_dsb_buffer *dsb_buf); |
| |
| #endif |