#ifndef __DC_DWBC_DCN20_H__
#define __DC_DWBC_DCN20_H__
#define TO_DCN20_DWBC(dwbc_base) …
#define DWBC_COMMON_REG_LIST_DCN2_0(inst) …
#define DWBC_COMMON_MASK_SH_LIST_DCN2_0(mask_sh) …
#define DWBC_REG_FIELD_LIST_DCN2_0(type) … \
struct dcn20_dwbc_registers { … };
struct dcn20_dwbc_mask { … };
struct dcn20_dwbc_shift { … };
struct dcn20_dwbc { … };
void dcn20_dwbc_construct(struct dcn20_dwbc *dwbc20,
struct dc_context *ctx,
const struct dcn20_dwbc_registers *dwbc_regs,
const struct dcn20_dwbc_shift *dwbc_shift,
const struct dcn20_dwbc_mask *dwbc_mask,
int inst);
bool dwb2_disable(struct dwbc *dwbc);
bool dwb2_is_enabled(struct dwbc *dwbc);
void dwb2_set_stereo(struct dwbc *dwbc,
struct dwb_stereo_params *stereo_params);
void dwb2_set_new_content(struct dwbc *dwbc,
bool is_new_content);
void dwb2_config_dwb_cnv(struct dwbc *dwbc,
struct dc_dwb_params *params);
void dwb2_set_scaler(struct dwbc *dwbc, struct dc_dwb_params *params);
bool dwb_program_vert_scalar(struct dcn20_dwbc *dwbc20,
uint32_t src_height,
uint32_t dest_height,
struct scaling_taps num_taps,
enum dwb_subsample_position subsample_position);
bool dwb_program_horz_scalar(struct dcn20_dwbc *dwbc20,
uint32_t src_width,
uint32_t dest_width,
struct scaling_taps num_taps);
#endif