1 | /* SPDX-License-Identifier: MIT |
---|---|
2 | * |
3 | * Copyright © 2019 Intel Corporation |
4 | */ |
5 | |
6 | #ifndef _INTEL_DSB_H |
7 | #define _INTEL_DSB_H |
8 | |
9 | #include <linux/types.h> |
10 | |
11 | #include "i915_reg_defs.h" |
12 | |
13 | struct intel_crtc; |
14 | struct intel_crtc_state; |
15 | struct intel_dsb; |
16 | |
17 | struct intel_dsb *intel_dsb_prepare(const struct intel_crtc_state *crtc_state, |
18 | unsigned int max_cmds); |
19 | void intel_dsb_finish(struct intel_dsb *dsb); |
20 | void intel_dsb_cleanup(struct intel_dsb *dsb); |
21 | void intel_dsb_reg_write(struct intel_dsb *dsb, |
22 | i915_reg_t reg, u32 val); |
23 | void intel_dsb_reg_write_masked(struct intel_dsb *dsb, |
24 | i915_reg_t reg, u32 mask, u32 val); |
25 | void intel_dsb_noop(struct intel_dsb *dsb, int count); |
26 | void intel_dsb_nonpost_start(struct intel_dsb *dsb); |
27 | void intel_dsb_nonpost_end(struct intel_dsb *dsb); |
28 | |
29 | void intel_dsb_commit(struct intel_dsb *dsb, |
30 | bool wait_for_vblank); |
31 | void intel_dsb_wait(struct intel_dsb *dsb); |
32 | |
33 | #endif |
34 |