Lines Matching full:phys
401 struct dpu_encoder_phys *phys; in dpu_encoder_get_frame_count() local
405 phys = dpu_enc ? dpu_enc->cur_master : NULL; in dpu_encoder_get_frame_count()
407 if (phys && phys->ops.get_frame_count) in dpu_encoder_get_frame_count()
408 framecount = phys->ops.get_frame_count(phys); in dpu_encoder_get_frame_count()
416 struct dpu_encoder_phys *phys; in dpu_encoder_get_linecount() local
420 phys = dpu_enc ? dpu_enc->cur_master : NULL; in dpu_encoder_get_linecount()
422 if (phys && phys->ops.get_line_count) in dpu_encoder_get_linecount()
423 linecount = phys->ops.get_line_count(phys); in dpu_encoder_get_linecount()
437 /* Query resources used by phys encs, expected to be without overlap */ in dpu_encoder_get_hw_resources()
441 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_get_hw_resources() local
443 if (phys->ops.get_hw_resources) in dpu_encoder_get_hw_resources()
444 phys->ops.get_hw_resources(phys, hw_res); in dpu_encoder_get_hw_resources()
464 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_destroy() local
466 if (phys->ops.destroy) { in dpu_encoder_destroy()
467 phys->ops.destroy(phys); in dpu_encoder_destroy()
610 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_virt_atomic_check() local
612 if (phys->ops.atomic_check) in dpu_encoder_virt_atomic_check()
613 ret = phys->ops.atomic_check(phys, crtc_state, in dpu_encoder_virt_atomic_check()
615 else if (phys->ops.mode_fixup) in dpu_encoder_virt_atomic_check()
616 if (!phys->ops.mode_fixup(phys, mode, adj_mode)) in dpu_encoder_virt_atomic_check()
621 "mode unsupported, phys idx %d\n", i); in dpu_encoder_virt_atomic_check()
663 DPU_ERROR("invalid num phys enc %d/%d\n", in _dpu_encoder_update_vsync_source()
709 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in _dpu_encoder_irq_control() local
711 if (phys->ops.irq_control) in _dpu_encoder_irq_control()
712 phys->ops.irq_control(phys, enable); in _dpu_encoder_irq_control()
1053 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_virt_mode_set() local
1067 phys->hw_pp = dpu_enc->hw_pp[i]; in dpu_encoder_virt_mode_set()
1068 phys->hw_ctl = to_dpu_hw_ctl(hw_ctl[i]); in dpu_encoder_virt_mode_set()
1077 if (hw_intf->idx == phys->intf_idx) in dpu_encoder_virt_mode_set()
1078 phys->hw_intf = hw_intf; in dpu_encoder_virt_mode_set()
1081 if (!phys->hw_intf) { in dpu_encoder_virt_mode_set()
1087 phys->connector = conn->state->connector; in dpu_encoder_virt_mode_set()
1088 if (phys->ops.mode_set) in dpu_encoder_virt_mode_set()
1089 phys->ops.mode_set(phys, mode, adj_mode); in dpu_encoder_virt_mode_set()
1235 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_virt_disable() local
1237 if (phys->ops.disable) in dpu_encoder_virt_disable()
1238 phys->ops.disable(phys); in dpu_encoder_virt_disable()
1242 /* after phys waits for frame-done, should be no more frames pending */ in dpu_encoder_virt_disable()
1347 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_toggle_vblank_for_crtc() local
1349 if (phys->ops.control_vblank_irq) in dpu_encoder_toggle_vblank_for_crtc()
1350 phys->ops.control_vblank_irq(phys, enable); in dpu_encoder_toggle_vblank_for_crtc()
1440 * @phys: Pointer to physical encoder structure
1444 struct dpu_encoder_phys *phys, uint32_t extra_flush_bits) in _dpu_encoder_trigger_flush() argument
1450 if (!phys->hw_pp) { in _dpu_encoder_trigger_flush()
1455 ctl = phys->hw_ctl; in _dpu_encoder_trigger_flush()
1461 pending_kickoff_cnt = dpu_encoder_phys_inc_pending(phys); in _dpu_encoder_trigger_flush()
1471 trace_dpu_enc_trigger_flush(DRMID(drm_enc), phys->intf_idx, in _dpu_encoder_trigger_flush()
1478 * @phys: Pointer to physical encoder structure
1480 static void _dpu_encoder_trigger_start(struct dpu_encoder_phys *phys) in _dpu_encoder_trigger_start() argument
1482 if (!phys) { in _dpu_encoder_trigger_start()
1487 if (!phys->hw_pp) { in _dpu_encoder_trigger_start()
1492 if (phys->ops.trigger_start && phys->enable_state != DPU_ENC_DISABLED) in _dpu_encoder_trigger_start()
1493 phys->ops.trigger_start(phys); in _dpu_encoder_trigger_start()
1580 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in _dpu_encoder_kickoff_phys() local
1582 if (phys->enable_state == DPU_ENC_DISABLED) in _dpu_encoder_kickoff_phys()
1585 ctl = phys->hw_ctl; in _dpu_encoder_kickoff_phys()
1592 if (phys->split_role != ENC_ROLE_SLAVE) in _dpu_encoder_kickoff_phys()
1595 if (!phys->ops.needs_single_flush || in _dpu_encoder_kickoff_phys()
1596 !phys->ops.needs_single_flush(phys)) in _dpu_encoder_kickoff_phys()
1597 _dpu_encoder_trigger_flush(&dpu_enc->base, phys, 0x0); in _dpu_encoder_kickoff_phys()
1618 struct dpu_encoder_phys *phys; in dpu_encoder_trigger_kickoff_pending() local
1631 phys = dpu_enc->phys_encs[i]; in dpu_encoder_trigger_kickoff_pending()
1633 ctl = phys->hw_ctl; in dpu_encoder_trigger_kickoff_pending()
1638 if ((phys == dpu_enc->cur_master) && in dpu_encoder_trigger_kickoff_pending()
1784 struct dpu_encoder_phys *phys; in dpu_encoder_prepare_for_kickoff() local
1795 phys = dpu_enc->phys_encs[i]; in dpu_encoder_prepare_for_kickoff()
1796 if (phys->ops.prepare_for_kickoff) in dpu_encoder_prepare_for_kickoff()
1797 phys->ops.prepare_for_kickoff(phys); in dpu_encoder_prepare_for_kickoff()
1798 if (phys->enable_state == DPU_ENC_ERR_NEEDS_HW_RESET) in dpu_encoder_prepare_for_kickoff()
1805 /* if any phys needs reset, reset all phys, in-order */ in dpu_encoder_prepare_for_kickoff()
1817 struct dpu_encoder_phys *phys; in dpu_encoder_kickoff() local
1834 /* All phys encs are ready to go, trigger the kickoff */ in dpu_encoder_kickoff()
1837 /* allow phys encs to handle any post-kickoff business */ in dpu_encoder_kickoff()
1839 phys = dpu_enc->phys_encs[i]; in dpu_encoder_kickoff()
1840 if (phys->ops.handle_post_kickoff) in dpu_encoder_kickoff()
1841 phys->ops.handle_post_kickoff(phys); in dpu_encoder_kickoff()
1858 struct dpu_encoder_phys *phys; in dpu_encoder_prepare_commit() local
1868 phys = dpu_enc->phys_encs[i]; in dpu_encoder_prepare_commit()
1869 if (phys->ops.prepare_commit) in dpu_encoder_prepare_commit()
1870 phys->ops.prepare_commit(phys); in dpu_encoder_prepare_commit()
1882 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in _dpu_encoder_status_show() local
1885 phys->intf_idx - INTF_0, in _dpu_encoder_status_show()
1886 atomic_read(&phys->vsync_cnt), in _dpu_encoder_status_show()
1887 atomic_read(&phys->underrun_cnt)); in _dpu_encoder_status_show()
1889 switch (phys->intf_mode) { in _dpu_encoder_status_show()
2092 DPU_ERROR_ENC(dpu_enc, "failed to add phys encs\n"); in dpu_encoder_setup_display()
2097 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_setup_display() local
2098 atomic_set(&phys->vsync_cnt, 0); in dpu_encoder_setup_display()
2099 atomic_set(&phys->underrun_cnt, 0); in dpu_encoder_setup_display()
2240 struct dpu_encoder_phys *phys = dpu_enc->phys_encs[i]; in dpu_encoder_wait_for_event() local
2244 fn_wait = phys->ops.wait_for_commit_done; in dpu_encoder_wait_for_event()
2247 fn_wait = phys->ops.wait_for_tx_complete; in dpu_encoder_wait_for_event()
2250 fn_wait = phys->ops.wait_for_vblank; in dpu_encoder_wait_for_event()
2260 ret = fn_wait(phys); in dpu_encoder_wait_for_event()