disp: msm: sde: enable support to get accurate vsync timestamp

From MDSS 8.x, vsync timestamp counter register is added in all the
interfaces. Add interface to get the vsync counter and use the global
qtmr reference counter to get the counter delta. This can be used
with reference to the curret ktime to deduce the accurate vsync
timestamp. This utility is intended to be used for setting the vblank
and retire fence timestamps which would be notified to user-mode.

Change-Id: I608a284c035cda50053eedbb311f1f54b3d3d557
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
此提交包含在:
Veera Sundaram Sankaran
2020-09-21 12:52:04 -07:00
父節點 9ad90a834d
當前提交 b554f01a10
共有 6 個檔案被更改,包括 113 行新增0 行删除

查看文件

@@ -50,6 +50,7 @@ struct intf_prog_fetch {
struct intf_status {
u8 is_en; /* interface timing engine is enabled or not */
bool is_prog_fetch_en; /* interface prog fetch counter is enabled or not */
u32 frame_count; /* frame count since timing engine enabled */
u32 line_count; /* current line count including blanking */
};
@@ -210,6 +211,11 @@ struct sde_hw_intf_ops {
*/
void (*reset_counter)(struct sde_hw_intf *intf);
/**
* Get the HW vsync timestamp counter
*/
u64 (*get_vsync_timestamp)(struct sde_hw_intf *intf);
/**
* Enable processing of 2 pixels per clock
*/