From a2bcfddd6e354deda48ff40b3d5fffd00f5891c9 Mon Sep 17 00:00:00 2001 From: Cai YiWei Date: Tue, 3 Aug 2021 16:37:09 +0800 Subject: [PATCH] media: rockchip: isp: add v-blank to procfs Change-Id: Ic62bf4b3fe26712ce4382025b1a234a55453c631 Signed-off-by: Cai YiWei --- drivers/media/platform/rockchip/isp/procfs.c | 5 +++-- drivers/media/platform/rockchip/isp/rkisp.c | 8 +++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/media/platform/rockchip/isp/procfs.c b/drivers/media/platform/rockchip/isp/procfs.c index 0ce3eb390fe6..467e46dd3079 100644 --- a/drivers/media/platform/rockchip/isp/procfs.c +++ b/drivers/media/platform/rockchip/isp/procfs.c @@ -257,11 +257,12 @@ static int isp_show(struct seq_file *p, void *v) dev->rdbk_cnt_x2, dev->rdbk_cnt_x3); else - seq_printf(p, "%-10s frame:%d %s time:%dms\n", + seq_printf(p, "%-10s frame:%d %s time:%dms v-blank:%dus\n", "Isp online", sdev->dbg.id, (dev->isp_state & ISP_FRAME_END) ? "idle" : "working", - sdev->dbg.interval / 1000 / 1000); + sdev->dbg.interval / 1000 / 1000, + sdev->dbg.delay / 1000); if (dev->br_dev.en) seq_printf(p, "%-10s rkispp%d Format:%s%s Size:%dx%d (frame:%d rate:%dms)\n", diff --git a/drivers/media/platform/rockchip/isp/rkisp.c b/drivers/media/platform/rockchip/isp/rkisp.c index ba77e7886816..c4f1385cd21e 100644 --- a/drivers/media/platform/rockchip/isp/rkisp.c +++ b/drivers/media/platform/rockchip/isp/rkisp.c @@ -2922,8 +2922,14 @@ void rkisp_isp_isr(unsigned int isp_mis, dev->isp_isr_cnt++; /* start edge of v_sync */ if (isp_mis & CIF_ISP_V_START) { - if (dev->isp_state & ISP_FRAME_END) + if (dev->isp_state & ISP_FRAME_END) { + u64 tmp = dev->isp_sdev.dbg.interval + + dev->isp_sdev.dbg.timestamp; + dev->isp_sdev.dbg.timestamp = ktime_get_ns(); + /* v-blank: frame_end - frame_start */ + dev->isp_sdev.dbg.delay = dev->isp_sdev.dbg.timestamp - tmp; + } rkisp_set_state(&dev->isp_state, ISP_FRAME_VS); if (dev->hw_dev->monitor.is_en) { rkisp_set_state(&dev->hw_dev->monitor.state, ISP_FRAME_VS);