#include "dc_bios_types.h"
#include "dcn30_dio_stream_encoder.h"
#include "reg_helper.h"
#include "hw_shared.h"
#include "dc.h"
#define DC_LOGGER …
#define REG(reg) …
#undef FN
#define FN(reg_name, field_name) …
#define VBI_LINE_0 …
#define HDMI_CLOCK_CHANNEL_RATE_MORE_340M …
#define CTX …
static void enc3_update_hdmi_info_packet(
struct dcn10_stream_encoder *enc1,
uint32_t packet_index,
const struct dc_info_packet *info_packet)
{ … }
void enc3_stream_encoder_update_hdmi_info_packets(
struct stream_encoder *enc,
const struct encoder_info_frame *info_frame)
{ … }
void enc3_stream_encoder_stop_hdmi_info_packets(
struct stream_encoder *enc)
{ … }
static void enc3_dp_set_dsc_config(struct stream_encoder *enc,
enum optc_dsc_mode dsc_mode,
uint32_t dsc_bytes_per_pixel,
uint32_t dsc_slice_width)
{ … }
void enc3_dp_set_dsc_pps_info_packet(struct stream_encoder *enc,
bool enable,
uint8_t *dsc_packed_pps,
bool immediate_update)
{ … }
static void enc3_read_state(struct stream_encoder *enc, struct enc_state *s)
{ … }
void enc3_stream_encoder_update_dp_info_packets_sdp_line_num(
struct stream_encoder *enc,
struct encoder_info_frame *info_frame)
{ … }
void enc3_stream_encoder_update_dp_info_packets(
struct stream_encoder *enc,
const struct encoder_info_frame *info_frame)
{ … }
static void enc3_dp_set_odm_combine(
struct stream_encoder *enc,
bool odm_combine)
{ … }
static void enc3_stream_encoder_dvi_set_stream_attribute(
struct stream_encoder *enc,
struct dc_crtc_timing *crtc_timing,
bool is_dual_link)
{ … }
static void enc3_stream_encoder_hdmi_set_stream_attribute(
struct stream_encoder *enc,
struct dc_crtc_timing *crtc_timing,
int actual_pix_clk_khz,
bool enable_audio)
{ … }
void enc3_audio_mute_control(
struct stream_encoder *enc,
bool mute)
{ … }
void enc3_se_dp_audio_setup(
struct stream_encoder *enc,
unsigned int az_inst,
struct audio_info *info)
{ … }
#define DP_SEC_AUD_N__DP_SEC_AUD_N__DEFAULT …
#define DP_SEC_TIMESTAMP__DP_SEC_TIMESTAMP_MODE__AUTO_CALC …
static void enc3_se_setup_dp_audio(
struct stream_encoder *enc)
{ … }
void enc3_se_dp_audio_enable(
struct stream_encoder *enc)
{ … }
static void enc3_se_setup_hdmi_audio(
struct stream_encoder *enc,
const struct audio_crtc_info *crtc_info)
{ … }
void enc3_se_hdmi_audio_setup(
struct stream_encoder *enc,
unsigned int az_inst,
struct audio_info *info,
struct audio_crtc_info *audio_crtc_info)
{ … }
static const struct stream_encoder_funcs dcn30_str_enc_funcs = …;
void dcn30_dio_stream_encoder_construct(
struct dcn10_stream_encoder *enc1,
struct dc_context *ctx,
struct dc_bios *bp,
enum engine_id eng_id,
struct vpg *vpg,
struct afmt *afmt,
const struct dcn10_stream_enc_registers *regs,
const struct dcn10_stream_encoder_shift *se_shift,
const struct dcn10_stream_encoder_mask *se_mask)
{ … }