Lines Matching full:dsc

54 #include "dsc.h"
740 static void dsc_optc_config_log(struct display_stream_compressor *dsc, in dsc_optc_config_log() argument
747 DC_LOGGER_INIT(dsc->ctx->logger); in dsc_optc_config_log()
749 /* 7 fractional digits decimal precision for bytes per pixel is enough because DSC in dsc_optc_config_log()
775 /* The stream with these settings can be sent (unblanked) only after DSC was enabled on RX first,
783 struct display_stream_compressor *dsc = pipe_ctx->stream_res.dsc; in link_set_dsc_on_stream() local
793 * with DSC such as 480p60Hz, the dispclk could be low enough to trigger in link_set_dsc_on_stream()
800 DC_LOGGER_INIT(dsc->ctx->logger); in link_set_dsc_on_stream()
810 /* Enable DSC hw block */ in link_set_dsc_on_stream()
821 dccg->funcs->set_dto_dscclk(dccg, dsc->inst); in link_set_dsc_on_stream()
822 dsc->funcs->dsc_set_config(dsc, &dsc_cfg, &dsc_optc_cfg); in link_set_dsc_on_stream()
823 dsc->funcs->dsc_enable(dsc, pipe_ctx->stream_res.opp->inst); in link_set_dsc_on_stream()
825 struct display_stream_compressor *odm_dsc = odm_pipe->stream_res.dsc; in link_set_dsc_on_stream()
837 /* Enable DSC in encoder */ in link_set_dsc_on_stream()
839 …DC_LOG_DSC("Setting stream encoder DSC config for engine %d:", (int)pipe_ctx->stream_res.stream_en… in link_set_dsc_on_stream()
840 dsc_optc_config_log(dsc, &dsc_optc_cfg); in link_set_dsc_on_stream()
850 /* Enable DSC in OPTC */ in link_set_dsc_on_stream()
851 DC_LOG_DSC("Setting optc DSC config for tg instance %d:", pipe_ctx->stream_res.tg->inst); in link_set_dsc_on_stream()
852 dsc_optc_config_log(dsc, &dsc_optc_cfg); in link_set_dsc_on_stream()
858 /* disable DSC in OPTC */ in link_set_dsc_on_stream()
863 /* disable DSC in stream encoder */ in link_set_dsc_on_stream()
881 /* disable DSC block */ in link_set_dsc_on_stream()
883 odm_pipe->stream_res.dsc->funcs->dsc_disconnect(odm_pipe->stream_res.dsc); in link_set_dsc_on_stream()
886 * by the time we call dsc_disable, dsc may still remain in link_set_dsc_on_stream()
895 * acquired. DSC is a front end hw block it should be in link_set_dsc_on_stream()
899 * we are programming dsc as part of back end link in link_set_dsc_on_stream()
902 * agnostic to front end lock. DSC programming shouldn't in link_set_dsc_on_stream()
905 odm_pipe->stream_res.dsc->funcs->dsc_disable(odm_pipe->stream_res.dsc); in link_set_dsc_on_stream()
907 dccg->funcs->set_ref_dscclk(dccg, odm_pipe->stream_res.dsc->inst); in link_set_dsc_on_stream()
913 * For dynamic bpp change case, dsc is programmed with MASTER_UPDATE_LOCK enabled;
919 * immediate_update is only applicable when DSC is enabled.
923 struct display_stream_compressor *dsc = pipe_ctx->stream_res.dsc; in link_set_dsc_pps_packet() local
926 if (!pipe_ctx->stream->timing.flags.DSC) in link_set_dsc_pps_packet()
929 if (!dsc) in link_set_dsc_pps_packet()
932 DC_LOGGER_INIT(dsc->ctx->logger); in link_set_dsc_pps_packet()
941 /* Enable DSC hw block */ in link_set_dsc_pps_packet()
949 dsc->funcs->dsc_get_packed_pps(dsc, &dsc_cfg, &dsc_packed_pps[0]); in link_set_dsc_pps_packet()
952 …DC_LOG_DSC("Setting stream encoder DSC PPS SDP for engine %d\n", (int)pipe_ctx->stream_res.stream_… in link_set_dsc_pps_packet()
967 /* disable DSC PPS in stream encoder */ in link_set_dsc_pps_packet()
987 struct display_stream_compressor *dsc = pipe_ctx->stream_res.dsc; in link_set_dsc_enable() local
990 if (!pipe_ctx->stream->timing.flags.DSC) in link_set_dsc_enable()
992 if (!dsc) in link_set_dsc_enable()
1011 struct display_stream_compressor *dsc = pipe_ctx->stream_res.dsc; in link_update_dsc_config() local
1013 if (!pipe_ctx->stream->timing.flags.DSC) in link_update_dsc_config()
1015 if (!dsc) in link_update_dsc_config()
2408 if (pipe_ctx->stream->timing.flags.DSC) { in link_set_dpms_off()
2514 !pipe_ctx->stream->timing.flags.DSC && in link_set_dpms_on()
2524 /* Have to setup DSC before DIG FE and BE are connected (which happens before the in link_set_dpms_on()
2530 if (pipe_ctx->stream->timing.flags.DSC) { in link_set_dpms_on()
2581 if (pipe_ctx->stream->timing.flags.DSC) { in link_set_dpms_on()