/Linux-v6.1/drivers/gpu/drm/amd/display/dmub/ |
D | dmub_srv.h | 74 struct dmub_srv; 306 void (*init)(struct dmub_srv *dmub); 308 void (*reset)(struct dmub_srv *dmub); 310 void (*reset_release)(struct dmub_srv *dmub); 312 void (*backdoor_load)(struct dmub_srv *dmub, 316 void (*backdoor_load_zfb_mode)(struct dmub_srv *dmub, 319 void (*setup_windows)(struct dmub_srv *dmub, 326 void (*setup_mailbox)(struct dmub_srv *dmub, 329 uint32_t (*get_inbox1_rptr)(struct dmub_srv *dmub); 331 void (*set_inbox1_wptr)(struct dmub_srv *dmub, uint32_t wptr_offset); [all …]
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dmub/src/ |
D | dmub_dcn32.h | 31 struct dmub_srv; 187 void dmub_dcn32_reset(struct dmub_srv *dmub); 189 void dmub_dcn32_reset_release(struct dmub_srv *dmub); 191 void dmub_dcn32_backdoor_load(struct dmub_srv *dmub, 195 void dmub_dcn32_backdoor_load_zfb_mode(struct dmub_srv *dmub, 199 void dmub_dcn32_setup_windows(struct dmub_srv *dmub, 206 void dmub_dcn32_setup_mailbox(struct dmub_srv *dmub, 209 uint32_t dmub_dcn32_get_inbox1_rptr(struct dmub_srv *dmub); 211 void dmub_dcn32_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset); 213 void dmub_dcn32_setup_out_mailbox(struct dmub_srv *dmub, [all …]
|
D | dmub_dcn20.h | 31 struct dmub_srv; 185 void dmub_dcn20_init(struct dmub_srv *dmub); 187 void dmub_dcn20_reset(struct dmub_srv *dmub); 189 void dmub_dcn20_reset_release(struct dmub_srv *dmub); 191 void dmub_dcn20_backdoor_load(struct dmub_srv *dmub, 195 void dmub_dcn20_setup_windows(struct dmub_srv *dmub, 202 void dmub_dcn20_setup_mailbox(struct dmub_srv *dmub, 205 uint32_t dmub_dcn20_get_inbox1_rptr(struct dmub_srv *dmub); 207 void dmub_dcn20_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset); 209 void dmub_dcn20_setup_out_mailbox(struct dmub_srv *dmub, [all …]
|
D | dmub_dcn31.h | 31 struct dmub_srv; 187 void dmub_dcn31_init(struct dmub_srv *dmub); 189 void dmub_dcn31_reset(struct dmub_srv *dmub); 191 void dmub_dcn31_reset_release(struct dmub_srv *dmub); 193 void dmub_dcn31_backdoor_load(struct dmub_srv *dmub, 197 void dmub_dcn31_setup_windows(struct dmub_srv *dmub, 204 void dmub_dcn31_setup_mailbox(struct dmub_srv *dmub, 207 uint32_t dmub_dcn31_get_inbox1_rptr(struct dmub_srv *dmub); 209 void dmub_dcn31_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset); 211 void dmub_dcn31_setup_out_mailbox(struct dmub_srv *dmub, [all …]
|
D | dmub_dcn32.c | 57 static void dmub_dcn32_get_fb_base_offset(struct dmub_srv *dmub, in dmub_dcn32_get_fb_base_offset() 84 void dmub_dcn32_reset(struct dmub_srv *dmub) in dmub_dcn32_reset() 136 void dmub_dcn32_reset_release(struct dmub_srv *dmub) in dmub_dcn32_reset_release() 145 void dmub_dcn32_backdoor_load(struct dmub_srv *dmub, in dmub_dcn32_backdoor_load() 178 void dmub_dcn32_backdoor_load_zfb_mode(struct dmub_srv *dmub, in dmub_dcn32_backdoor_load_zfb_mode() 208 void dmub_dcn32_setup_windows(struct dmub_srv *dmub, in dmub_dcn32_setup_windows() 261 void dmub_dcn32_setup_mailbox(struct dmub_srv *dmub, in dmub_dcn32_setup_mailbox() 268 uint32_t dmub_dcn32_get_inbox1_rptr(struct dmub_srv *dmub) in dmub_dcn32_get_inbox1_rptr() 273 void dmub_dcn32_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset) in dmub_dcn32_set_inbox1_wptr() 278 void dmub_dcn32_setup_out_mailbox(struct dmub_srv *dmub, in dmub_dcn32_setup_out_mailbox() [all …]
|
D | dmub_dcn31.c | 56 static void dmub_dcn31_get_fb_base_offset(struct dmub_srv *dmub, in dmub_dcn31_get_fb_base_offset() 83 void dmub_dcn31_reset(struct dmub_srv *dmub) in dmub_dcn31_reset() 144 void dmub_dcn31_reset_release(struct dmub_srv *dmub) in dmub_dcn31_reset_release() 152 void dmub_dcn31_backdoor_load(struct dmub_srv *dmub, in dmub_dcn31_backdoor_load() 185 void dmub_dcn31_setup_windows(struct dmub_srv *dmub, in dmub_dcn31_setup_windows() 238 void dmub_dcn31_setup_mailbox(struct dmub_srv *dmub, in dmub_dcn31_setup_mailbox() 245 uint32_t dmub_dcn31_get_inbox1_rptr(struct dmub_srv *dmub) in dmub_dcn31_get_inbox1_rptr() 250 void dmub_dcn31_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset) in dmub_dcn31_set_inbox1_wptr() 255 void dmub_dcn31_setup_out_mailbox(struct dmub_srv *dmub, in dmub_dcn31_setup_out_mailbox() 262 uint32_t dmub_dcn31_get_outbox1_wptr(struct dmub_srv *dmub) in dmub_dcn31_get_outbox1_wptr() [all …]
|
D | dmub_dcn20.c | 60 static void dmub_dcn20_get_fb_base_offset(struct dmub_srv *dmub, in dmub_dcn20_get_fb_base_offset() 87 bool dmub_dcn20_use_cached_inbox(struct dmub_srv *dmub) in dmub_dcn20_use_cached_inbox() 94 void dmub_dcn20_reset(struct dmub_srv *dmub) in dmub_dcn20_reset() 146 void dmub_dcn20_reset_release(struct dmub_srv *dmub) in dmub_dcn20_reset_release() 154 void dmub_dcn20_backdoor_load(struct dmub_srv *dmub, in dmub_dcn20_backdoor_load() 189 void dmub_dcn20_setup_windows(struct dmub_srv *dmub, in dmub_dcn20_setup_windows() 273 void dmub_dcn20_setup_mailbox(struct dmub_srv *dmub, in dmub_dcn20_setup_mailbox() 285 uint32_t dmub_dcn20_get_inbox1_rptr(struct dmub_srv *dmub) in dmub_dcn20_get_inbox1_rptr() 290 void dmub_dcn20_set_inbox1_wptr(struct dmub_srv *dmub, uint32_t wptr_offset) in dmub_dcn20_set_inbox1_wptr() 295 void dmub_dcn20_setup_out_mailbox(struct dmub_srv *dmub, in dmub_dcn20_setup_out_mailbox() [all …]
|
D | dmub_srv.c | 151 static bool dmub_srv_hw_setup(struct dmub_srv *dmub, enum dmub_asic asic) in dmub_srv_hw_setup() 309 enum dmub_status dmub_srv_create(struct dmub_srv *dmub, in dmub_srv_create() 359 void dmub_srv_destroy(struct dmub_srv *dmub) in dmub_srv_destroy() 365 dmub_srv_calc_region_info(struct dmub_srv *dmub, in dmub_srv_calc_region_info() 440 enum dmub_status dmub_srv_calc_fb_info(struct dmub_srv *dmub, in dmub_srv_calc_fb_info() 473 enum dmub_status dmub_srv_has_hw_support(struct dmub_srv *dmub, in dmub_srv_has_hw_support() 487 enum dmub_status dmub_srv_is_hw_init(struct dmub_srv *dmub, bool *is_hw_init) in dmub_srv_is_hw_init() 503 enum dmub_status dmub_srv_hw_init(struct dmub_srv *dmub, in dmub_srv_hw_init() 644 enum dmub_status dmub_srv_hw_reset(struct dmub_srv *dmub) in dmub_srv_hw_reset() 657 enum dmub_status dmub_srv_cmd_queue(struct dmub_srv *dmub, in dmub_srv_cmd_queue() [all …]
|
D | dmub_dcn30.h | 37 void dmub_dcn30_backdoor_load(struct dmub_srv *dmub, 41 void dmub_dcn30_setup_windows(struct dmub_srv *dmub,
|
D | dmub_reg.h | 31 struct dmub_srv; 115 void dmub_reg_set(struct dmub_srv *srv, uint32_t addr, uint32_t reg_val, int n, 118 void dmub_reg_update(struct dmub_srv *srv, uint32_t addr, int n, uint8_t shift1, 121 void dmub_reg_get(struct dmub_srv *srv, uint32_t addr, uint8_t shift,
|
D | dmub_reg.c | 72 void dmub_reg_update(struct dmub_srv *srv, uint32_t addr, int n, uint8_t shift1, in dmub_reg_update() 89 void dmub_reg_set(struct dmub_srv *srv, uint32_t addr, uint32_t reg_val, int n, in dmub_reg_set() 104 void dmub_reg_get(struct dmub_srv *srv, uint32_t addr, uint8_t shift, in dmub_reg_get()
|
D | dmub_dcn30.c | 60 static void dmub_dcn30_get_fb_base_offset(struct dmub_srv *dmub, in dmub_dcn30_get_fb_base_offset() 87 void dmub_dcn30_backdoor_load(struct dmub_srv *dmub, in dmub_dcn30_backdoor_load() 122 void dmub_dcn30_setup_windows(struct dmub_srv *dmub, in dmub_dcn30_setup_windows()
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/dce/ |
D | dmub_hw_lock_mgr.c | 31 void dmub_hw_lock_mgr_cmd(struct dc_dmub_srv *dmub_srv, in dmub_hw_lock_mgr_cmd() argument 50 dc_dmub_srv_cmd_queue(dmub_srv, &cmd); in dmub_hw_lock_mgr_cmd() 51 dc_dmub_srv_cmd_execute(dmub_srv); in dmub_hw_lock_mgr_cmd() 52 dc_dmub_srv_wait_idle(dmub_srv); in dmub_hw_lock_mgr_cmd() 55 void dmub_hw_lock_mgr_inbox0_cmd(struct dc_dmub_srv *dmub_srv, in dmub_hw_lock_mgr_inbox0_cmd() argument 61 dc_dmub_srv_clear_inbox0_ack(dmub_srv); in dmub_hw_lock_mgr_inbox0_cmd() 62 dc_dmub_srv_send_inbox0_cmd(dmub_srv, data); in dmub_hw_lock_mgr_inbox0_cmd() 63 dc_dmub_srv_wait_for_inbox0_ack(dmub_srv); in dmub_hw_lock_mgr_inbox0_cmd()
|
D | dmub_psr.c | 102 struct dmub_srv *srv = dmub->ctx->dmub_srv->dmub; in dmub_psr_get_state() 168 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_psr_set_version() 169 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_psr_set_version() 170 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_psr_set_version() 198 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_psr_enable() 199 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_psr_enable() 200 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_psr_enable() 248 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_psr_set_level() 249 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_psr_set_level() 250 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_psr_set_level() [all …]
|
D | dmub_abm.c | 74 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_abm_enable_fractional_pwm() 75 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_abm_enable_fractional_pwm() 76 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_abm_enable_fractional_pwm() 166 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_abm_set_level() 167 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_abm_set_level() 168 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_abm_set_level() 183 dmub_flush_buffer_mem(&dc->dmub_srv->dmub->scratch_mem_fb); in dmub_abm_init_config() 186 memcpy(dc->dmub_srv->dmub->scratch_mem_fb.cpu_addr, (void *)src, bytes); in dmub_abm_init_config() 192 …cmd.abm_init_config.abm_init_config_data.src.quad_part = dc->dmub_srv->dmub->scratch_mem_fb.gpu_ad… in dmub_abm_init_config() 199 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_abm_init_config() [all …]
|
D | dmub_outbox.c | 39 void dmub_enable_outbox_notification(struct dc_dmub_srv *dmub_srv) in dmub_enable_outbox_notification() argument 51 dc_dmub_srv_cmd_queue(dmub_srv, &cmd); in dmub_enable_outbox_notification() 52 dc_dmub_srv_cmd_execute(dmub_srv); in dmub_enable_outbox_notification() 53 dc_dmub_srv_wait_idle(dmub_srv); in dmub_enable_outbox_notification()
|
D | dmub_hw_lock_mgr.h | 32 void dmub_hw_lock_mgr_cmd(struct dc_dmub_srv *dmub_srv, 37 void dmub_hw_lock_mgr_inbox0_cmd(struct dc_dmub_srv *dmub_srv,
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/ |
D | dc_dmub_srv.c | 39 struct dmub_srv *dmub) in dc_dmub_srv_construct() 45 struct dc_dmub_srv *dc_dmub_srv_create(struct dc *dc, struct dmub_srv *dmub) in dc_dmub_srv_create() 60 void dc_dmub_srv_destroy(struct dc_dmub_srv **dmub_srv) in dc_dmub_srv_destroy() argument 62 if (*dmub_srv) { in dc_dmub_srv_destroy() 63 kfree(*dmub_srv); in dc_dmub_srv_destroy() 64 *dmub_srv = NULL; in dc_dmub_srv_destroy() 71 struct dmub_srv *dmub = dc_dmub_srv->dmub; in dc_dmub_srv_cmd_queue() 98 struct dmub_srv *dmub = dc_dmub_srv->dmub; in dc_dmub_srv_cmd_execute() 111 struct dmub_srv *dmub = dc_dmub_srv->dmub; in dc_dmub_srv_wait_idle() 122 void dc_dmub_srv_clear_inbox0_ack(struct dc_dmub_srv *dmub_srv) in dc_dmub_srv_clear_inbox0_ack() argument [all …]
|
D | dc_helper.c | 51 gather = ctx->dmub_srv->reg_helper_offload.gather_in_progress; in submit_dmub_read_modify_write() 52 ctx->dmub_srv->reg_helper_offload.gather_in_progress = false; in submit_dmub_read_modify_write() 54 dc_dmub_srv_cmd_queue(ctx->dmub_srv, &offload->cmd_data); in submit_dmub_read_modify_write() 56 ctx->dmub_srv->reg_helper_offload.gather_in_progress = gather; in submit_dmub_read_modify_write() 74 gather = ctx->dmub_srv->reg_helper_offload.gather_in_progress; in submit_dmub_burst_write() 75 ctx->dmub_srv->reg_helper_offload.gather_in_progress = false; in submit_dmub_burst_write() 77 dc_dmub_srv_cmd_queue(ctx->dmub_srv, &offload->cmd_data); in submit_dmub_burst_write() 79 ctx->dmub_srv->reg_helper_offload.gather_in_progress = gather; in submit_dmub_burst_write() 93 gather = ctx->dmub_srv->reg_helper_offload.gather_in_progress; in submit_dmub_reg_wait() 94 ctx->dmub_srv->reg_helper_offload.gather_in_progress = false; in submit_dmub_reg_wait() [all …]
|
D | dc_dmub_srv.h | 32 struct dmub_srv; 48 struct dmub_srv *dmub; 80 void dc_dmub_srv_query_caps_cmd(struct dmub_srv *dmub); 82 void dc_dmub_srv_clear_inbox0_ack(struct dc_dmub_srv *dmub_srv); 83 void dc_dmub_srv_wait_for_inbox0_ack(struct dc_dmub_srv *dmub_srv); 84 void dc_dmub_srv_send_inbox0_cmd(struct dc_dmub_srv *dmub_srv, union dmub_inbox0_data_register data…
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/core/ |
D | dc_stat.c | 59 struct dmub_srv *dmub = dc->ctx->dmub_srv->dmub; in dc_stat_get_dmub_notification() 91 struct dmub_srv *dmub = dc->ctx->dmub_srv->dmub; in dc_stat_get_dmub_dataout()
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/bios/ |
D | command_table2.c | 183 if (bp->base.ctx->dc->ctx->dmub_srv && in encoder_control_digx_v1_5() 185 encoder_control_dmcub(bp->base.ctx->dmub_srv, ¶ms); in encoder_control_digx_v1_5() 199 if (bp->base.ctx->dc->ctx->dmub_srv && in encoder_control_fallback() 300 if (bp->base.ctx->dc->ctx->dmub_srv && in transmitter_control_v1_6() 302 transmitter_control_dmcub(bp->base.ctx->dmub_srv, &ps.param); in transmitter_control_v1_6() 369 if (bp->base.ctx->dc->ctx->dmub_srv && in transmitter_control_v1_7() 371 transmitter_control_dmcub_v1_7(bp->base.ctx->dmub_srv, &dig_v1_7); in transmitter_control_v1_7() 385 if (bp->base.ctx->dc->ctx->dmub_srv && in transmitter_control_fallback() 517 if (bp->base.ctx->dc->ctx->dmub_srv && in set_pixel_clock_v7() 519 set_pixel_clock_dmcub(bp->base.ctx->dmub_srv, &clk); in set_pixel_clock_v7() [all …]
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/dcn21/ |
D | dcn21_hwseq.c | 155 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dmub_abm_set_pipe() 156 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dmub_abm_set_pipe() 157 dc_dmub_srv_wait_idle(dc->dmub_srv); in dmub_abm_set_pipe() 225 dc_dmub_srv_cmd_queue(dc->dmub_srv, &cmd); in dcn21_set_backlight_level() 226 dc_dmub_srv_cmd_execute(dc->dmub_srv); in dcn21_set_backlight_level() 227 dc_dmub_srv_wait_idle(dc->dmub_srv); in dcn21_set_backlight_level()
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/dcn30/ |
D | dcn30_hwseq.c | 642 dc_dmub_srv_query_caps_cmd(dc->ctx->dmub_srv->dmub); in dcn30_init_hw() 643 dc->caps.dmub_caps.psr = dc->ctx->dmub_srv->dmub->feature_caps.psr; in dcn30_init_hw() 644 dc->caps.dmub_caps.mclk_sw = dc->ctx->dmub_srv->dmub->feature_caps.fw_assisted_mclk_switch; in dcn30_init_hw() 719 if (!dc->ctx->dmub_srv) in dcn30_apply_idle_power_optimizations() 740 dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd); in dcn30_apply_idle_power_optimizations() 741 dc_dmub_srv_cmd_execute(dc->ctx->dmub_srv); in dcn30_apply_idle_power_optimizations() 863 dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd); in dcn30_apply_idle_power_optimizations() 864 dc_dmub_srv_cmd_execute(dc->ctx->dmub_srv); in dcn30_apply_idle_power_optimizations() 865 dc_dmub_srv_wait_idle(dc->ctx->dmub_srv); in dcn30_apply_idle_power_optimizations() 881 dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd); in dcn30_apply_idle_power_optimizations() [all …]
|
/Linux-v6.1/drivers/gpu/drm/amd/display/dc/dcn31/ |
D | dcn31_hwseq.c | 201 dmub_enable_outbox_notification(dc->ctx->dmub_srv); in dcn31_init_hw() 430 dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd); in dcn31_z10_save_init() 431 dc_dmub_srv_cmd_execute(dc->ctx->dmub_srv); in dcn31_z10_save_init() 432 dc_dmub_srv_wait_idle(dc->ctx->dmub_srv); in dcn31_z10_save_init() 443 if (!dc_dmub_srv_is_restore_required(dc->ctx->dmub_srv)) in dcn31_z10_restore() 450 dc_dmub_srv_cmd_queue(dc->ctx->dmub_srv, &cmd); in dcn31_z10_restore() 451 dc_dmub_srv_cmd_execute(dc->ctx->dmub_srv); in dcn31_z10_restore() 452 dc_dmub_srv_wait_idle(dc->ctx->dmub_srv); in dcn31_z10_restore()
|