Merge "disp: msm: sde: log intf framecount in event logs"

This commit is contained in:
qctecmdr 2019-07-02 02:26:16 -07:00 • committed by Gerrit - the friendly Code Review server
commit 40e4d191d3
4 changed files with 16 additions and 3 deletions

View file

@ -243,8 +243,10 @@ static void sde_encoder_phys_cmd_te_rd_ptr_irq(void *arg, int irq_idx)
sde_encoder_helper_get_pp_line_count(phys_enc->parent, info);
SDE_EVT32_IRQ(DRMID(phys_enc->parent),
info[0].pp_idx, info[0].intf_idx, info[0].wr_ptr_line_count,
info[1].pp_idx, info[1].intf_idx, info[1].wr_ptr_line_count,
info[0].pp_idx, info[0].intf_idx,
info[0].wr_ptr_line_count, info[0].intf_frame_count,
info[1].pp_idx, info[1].intf_idx,
info[1].wr_ptr_line_count, info[1].intf_frame_count,
scheduler_status);
if (phys_enc->parent_ops.handle_vblank_virt)

View file

@ -474,6 +474,7 @@ static void sde_encoder_phys_vid_vblank_irq(void *arg, int irq_idx)
{
struct sde_encoder_phys *phys_enc = arg;
struct sde_hw_ctl *hw_ctl;
struct intf_status intf_status = {0};
unsigned long lock_flags;
u32 flush_register = ~0;
u32 reset_status = 0;
@ -530,11 +531,16 @@ not_flushed:
phys_enc->parent_ops.handle_vblank_virt(phys_enc->parent,
phys_enc);
if (phys_enc->hw_intf->ops.get_status)
phys_enc->hw_intf->ops.get_status(phys_enc->hw_intf,
&intf_status);
SDE_EVT32_IRQ(DRMID(phys_enc->parent), phys_enc->hw_intf->idx - INTF_0,
old_cnt, atomic_read(&phys_enc->pending_kickoff_cnt),
reset_status ? SDE_EVTLOG_ERROR : 0,
flush_register, event,
atomic_read(&phys_enc->pending_retire_fence_cnt));
atomic_read(&phys_enc->pending_retire_fence_cnt),
intf_status.frame_count);
/* Signal any waiting atomic commit thread */
wake_up_all(&phys_enc->pending_kickoff_wq);

View file

@ -628,6 +628,9 @@ static int sde_hw_intf_get_vsync_info(struct sde_hw_intf *intf,
val = SDE_REG_READ(c, INTF_TEAR_LINE_COUNT);
info->wr_ptr_line_count = val & 0xffff;
val = SDE_REG_READ(c, INTF_FRAME_COUNT);
info->intf_frame_count = val;
return 0;
}

View file

@ -680,6 +680,7 @@ struct sde_hw_autorefresh {
* @rd_ptr_frame_count: num frames sent since enabling interface
* @rd_ptr_line_count: current line on panel (rd ptr)
* @wr_ptr_line_count: current line within pp fifo (wr ptr)
* @intf_frame_count: num frames read from intf
*/
struct sde_hw_pp_vsync_info {
u32 pp_idx;
@ -688,6 +689,7 @@ struct sde_hw_pp_vsync_info {
u32 rd_ptr_frame_count;
u32 rd_ptr_line_count;
u32 wr_ptr_line_count;
u32 intf_frame_count;
};
#endif /* _SDE_HW_MDSS_H */