1 | /* SPDX-License-Identifier: MIT |
2 | * Copyright (C) 2018 Intel Corp. |
3 | * |
4 | * Authors: |
5 | * Manasi Navare <manasi.d.navare@intel.com> |
6 | */ |
7 | |
8 | #ifndef DRM_DSC_HELPER_H_ |
9 | #define DRM_DSC_HELPER_H_ |
10 | |
11 | #include <drm/display/drm_dsc.h> |
12 | |
13 | enum drm_dsc_params_type { |
14 | DRM_DSC_1_2_444, |
15 | DRM_DSC_1_1_PRE_SCR, /* legacy params from DSC 1.1 */ |
16 | DRM_DSC_1_2_422, |
17 | DRM_DSC_1_2_420, |
18 | }; |
19 | |
20 | void (struct dp_sdp_header *); |
21 | int drm_dsc_dp_rc_buffer_size(u8 rc_buffer_block_size, u8 rc_buffer_size); |
22 | void drm_dsc_pps_payload_pack(struct drm_dsc_picture_parameter_set *pps_sdp, |
23 | const struct drm_dsc_config *dsc_cfg); |
24 | void drm_dsc_set_const_params(struct drm_dsc_config *vdsc_cfg); |
25 | void drm_dsc_set_rc_buf_thresh(struct drm_dsc_config *vdsc_cfg); |
26 | int drm_dsc_setup_rc_params(struct drm_dsc_config *vdsc_cfg, enum drm_dsc_params_type type); |
27 | int drm_dsc_compute_rc_parameters(struct drm_dsc_config *vdsc_cfg); |
28 | u8 drm_dsc_initial_scale_value(const struct drm_dsc_config *dsc); |
29 | u32 drm_dsc_flatness_det_thresh(const struct drm_dsc_config *dsc); |
30 | u32 drm_dsc_get_bpp_int(const struct drm_dsc_config *vdsc_cfg); |
31 | |
32 | #endif /* _DRM_DSC_HELPER_H_ */ |
33 | |
34 | |