Message ID | 20250410-rk3588-hdmirx-sequence-v1-2-aad3f216d351@collabora.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | media: synopsys: hdmirx: Report frame drops | expand |
10.04.2025 23:43, Nicolas Dufresne пишет: > The sequence number communicate the lost frames to userspace. For this > reason, it must be incremented even when a frame is skipped. This allows > userspace such as GStreamer to report the loss. > > Fixes: 7b59b132ad439 ("media: platform: synopsys: Add support for HDMI input driver") > Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> > --- > drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c > index f5b3f5010ede55bde28756da326a434cc9245492..7af6765532e33239f4260b29ea82b31494b66213 100644 > --- a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c > +++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c > @@ -1956,10 +1956,6 @@ static void dma_idle_int_handler(struct snps_hdmirx_dev *hdmirx_dev, > vb_done->field = V4L2_FIELD_NONE; > > hdmirx_vb_done(stream, vb_done); > - stream->sequence++; > - if (stream->sequence == 30) > - v4l2_dbg(1, debug, v4l2_dev, > - "rcv frames\n"); > } > > stream->curr_buf = NULL; > @@ -1971,6 +1967,10 @@ static void dma_idle_int_handler(struct snps_hdmirx_dev *hdmirx_dev, > v4l2_dbg(3, debug, v4l2_dev, > "%s: next_buf NULL, skip vb_done\n", __func__); > } > + > + stream->sequence++; > + if (stream->sequence == 30) > + v4l2_dbg(1, debug, v4l2_dev, "rcv frames\n"); > } > > DMA_IDLE_OUT: > Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
diff --git a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c index f5b3f5010ede55bde28756da326a434cc9245492..7af6765532e33239f4260b29ea82b31494b66213 100644 --- a/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c +++ b/drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c @@ -1956,10 +1956,6 @@ static void dma_idle_int_handler(struct snps_hdmirx_dev *hdmirx_dev, vb_done->field = V4L2_FIELD_NONE; hdmirx_vb_done(stream, vb_done); - stream->sequence++; - if (stream->sequence == 30) - v4l2_dbg(1, debug, v4l2_dev, - "rcv frames\n"); } stream->curr_buf = NULL; @@ -1971,6 +1967,10 @@ static void dma_idle_int_handler(struct snps_hdmirx_dev *hdmirx_dev, v4l2_dbg(3, debug, v4l2_dev, "%s: next_buf NULL, skip vb_done\n", __func__); } + + stream->sequence++; + if (stream->sequence == 30) + v4l2_dbg(1, debug, v4l2_dev, "rcv frames\n"); } DMA_IDLE_OUT:
The sequence number communicate the lost frames to userspace. For this reason, it must be incremented even when a frame is skipped. This allows userspace such as GStreamer to report the loss. Fixes: 7b59b132ad439 ("media: platform: synopsys: Add support for HDMI input driver") Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> --- drivers/media/platform/synopsys/hdmirx/snps_hdmirx.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)