mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 07:03:09 -04:00
Merge "disp: msm: sde: log intf framecount in event logs"
This commit is contained in:
commit
40e4d191d3
4 changed files with 16 additions and 3 deletions
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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 */
|
||||
|
|
|
|||
Loading…
Reference in a new issue