#include <drm/display/drm_dsc_helper.h>
#include "reg_helper.h"
#include "dcn20_dsc.h"
#include "dsc/dscc_types.h"
#include "dsc/rc_calc.h"
static void dsc_write_to_registers(struct display_stream_compressor *dsc, const struct dsc_reg_values *reg_vals);
static const struct dsc_funcs dcn20_dsc_funcs = …;
#define CTX …
#define REG(reg) …
#undef FN
#define FN(reg_name, field_name) …
#define DC_LOGGER …
enum dsc_bits_per_comp { … };
void dsc2_construct(struct dcn20_dsc *dsc,
struct dc_context *ctx,
int inst,
const struct dcn20_dsc_registers *dsc_regs,
const struct dcn20_dsc_shift *dsc_shift,
const struct dcn20_dsc_mask *dsc_mask)
{ … }
#define DCN20_MAX_PIXEL_CLOCK_Mhz …
#define DCN20_MAX_DISPLAY_CLOCK_Mhz …
void dsc2_get_enc_caps(struct dsc_enc_caps *dsc_enc_caps, int pixel_clock_100Hz)
{ … }
void dsc2_read_state(struct display_stream_compressor *dsc, struct dcn_dsc_state *s)
{ … }
bool dsc2_validate_stream(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg)
{ … }
void dsc_config_log(struct display_stream_compressor *dsc, const struct dsc_config *config)
{ … }
void dsc2_set_config(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg,
struct dsc_optc_config *dsc_optc_cfg)
{ … }
bool dsc2_get_packed_pps(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg, uint8_t *dsc_packed_pps)
{ … }
void dsc2_enable(struct display_stream_compressor *dsc, int opp_pipe)
{ … }
void dsc2_disable(struct display_stream_compressor *dsc)
{ … }
void dsc2_wait_disconnect_pending_clear(struct display_stream_compressor *dsc)
{ … }
void dsc2_disconnect(struct display_stream_compressor *dsc)
{ … }
void dsc_log_pps(struct display_stream_compressor *dsc, struct drm_dsc_config *pps)
{ … }
void dsc_override_rc_params(struct rc_params *rc, const struct dc_dsc_rc_params_override *override)
{ … }
bool dsc_prepare_config(const struct dsc_config *dsc_cfg, struct dsc_reg_values *dsc_reg_vals,
struct dsc_optc_config *dsc_optc_cfg)
{ … }
enum dsc_pixel_format dsc_dc_pixel_encoding_to_dsc_pixel_format(enum dc_pixel_encoding dc_pix_enc, bool is_ycbcr422_simple)
{ … }
enum dsc_bits_per_comp dsc_dc_color_depth_to_dsc_bits_per_comp(enum dc_color_depth dc_color_depth)
{ … }
void dsc_init_reg_values(struct dsc_reg_values *reg_vals)
{ … }
void dsc_update_from_dsc_parameters(struct dsc_reg_values *reg_vals, const struct dsc_parameters *dsc_params)
{ … }
static void dsc_write_to_registers(struct display_stream_compressor *dsc, const struct dsc_reg_values *reg_vals)
{ … }