All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomasz Figa <tfiga@chromium.org>
To: Xia Jiang <xia.jiang@mediatek.com>
Cc: Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	Mauro Carvalho Chehab <mchehab+samsung@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Rick Chang <rick.chang@mediatek.com>,
	linux-media@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-mediatek@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	srv_heupstream@mediatek.com, senozhatsky@chromium.org,
	mojahsu@chromium.org, drinkcat@chromium.org,
	maoguang.meng@mediatek.com, sj.huang@mediatek.com
Subject: Re: [PATCH RESEND v9 05/18] media: platform: Improve power on and power off flow
Date: Thu, 11 Jun 2020 12:08:20 +0000	[thread overview]
Message-ID: <20200611120820.GC135826@chromium.org> (raw)
In-Reply-To: <20200604090553.10861-7-xia.jiang@mediatek.com>

Hi Xia,

On Thu, Jun 04, 2020 at 05:05:40PM +0800, Xia Jiang wrote:
> Call pm_runtime_get_sync() before starting a frame and then
> pm_runtime_put() after completing it. This can save power for the time
> between processing two frames.
> 
> Signed-off-by: Xia Jiang <xia.jiang@mediatek.com>
> ---
> v9: use pm_runtime_put() to replace pm_runtime_put_sync()
> ---
>  .../media/platform/mtk-jpeg/mtk_jpeg_core.c   | 27 +++++--------------
>  1 file changed, 6 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> index 12609ca46fd9..fb624385969e 100644
> --- a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> +++ b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> @@ -710,23 +710,6 @@ static struct vb2_v4l2_buffer *mtk_jpeg_buf_remove(struct mtk_jpeg_ctx *ctx,
>  		return v4l2_m2m_dst_buf_remove(ctx->fh.m2m_ctx);
>  }
>  
> -static int mtk_jpeg_start_streaming(struct vb2_queue *q, unsigned int count)
> -{
> -	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> -	struct vb2_v4l2_buffer *vb;
> -	int ret = 0;
> -
> -	ret = pm_runtime_get_sync(ctx->jpeg->dev);
> -	if (ret < 0)
> -		goto err;
> -
> -	return 0;
> -err:
> -	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
> -		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_QUEUED);
> -	return ret;
> -}
> -
>  static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  {
>  	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> @@ -751,8 +734,6 @@ static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  
>  	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
>  		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_ERROR);
> -
> -	pm_runtime_put_sync(ctx->jpeg->dev);
>  }
>  
>  static const struct vb2_ops mtk_jpeg_qops = {
> @@ -761,7 +742,6 @@ static const struct vb2_ops mtk_jpeg_qops = {
>  	.buf_queue          = mtk_jpeg_buf_queue,
>  	.wait_prepare       = vb2_ops_wait_prepare,
>  	.wait_finish        = vb2_ops_wait_finish,
> -	.start_streaming    = mtk_jpeg_start_streaming,
>  	.stop_streaming     = mtk_jpeg_stop_streaming,
>  };
>  
> @@ -812,7 +792,7 @@ static void mtk_jpeg_device_run(void *priv)
>  	struct mtk_jpeg_src_buf *jpeg_src_buf;
>  	struct mtk_jpeg_bs bs;
>  	struct mtk_jpeg_fb fb;
> -	int i;
> +	int i, ret;
>  
>  	src_buf = v4l2_m2m_next_src_buf(ctx->fh.m2m_ctx);
>  	dst_buf = v4l2_m2m_next_dst_buf(ctx->fh.m2m_ctx);
> @@ -832,6 +812,10 @@ static void mtk_jpeg_device_run(void *priv)
>  		return;
>  	}
>  
> +	ret = pm_runtime_get_sync(jpeg->dev);
> +	if (ret < 0)
> +		goto dec_end;
> +
>  	mtk_jpeg_set_dec_src(ctx, &src_buf->vb2_buf, &bs);
>  	if (mtk_jpeg_set_dec_dst(ctx, &jpeg_src_buf->dec_param, &dst_buf->vb2_buf, &fb))
>  		goto dec_end;
> @@ -957,6 +941,7 @@ static irqreturn_t mtk_jpeg_dec_irq(int irq, void *priv)
>  	v4l2_m2m_buf_done(src_buf, buf_state);
>  	v4l2_m2m_buf_done(dst_buf, buf_state);
>  	v4l2_m2m_job_finish(jpeg->m2m_dev, ctx->fh.m2m_ctx);
> +	pm_runtime_put(ctx->jpeg->dev);

This patch itself is correct and feel free to add my

Reviewed-by: Tomasz Figa <tfiga@chromium.org>

However, it looks like there might be one more problem with this driver.
What happens if the hardware locks up? The driver doesn't seem to take
any measures to detect that and recover the system.

If you take a look at other drivers, e.g. the MTK FD driver, there is a
delayed work scheduled before starting the hardware and canceled in the
interrupt handler. If the delayed work is executed, it resets the
hardware and reports the failure to V4L2, so that the execution can
continue from next frames.

This should be fixed in a separate patch, could be outside of this
series.

Best regards,
Tomasz

WARNING: multiple messages have this Message-ID (diff)
From: Tomasz Figa <tfiga@chromium.org>
To: Xia Jiang <xia.jiang@mediatek.com>
Cc: drinkcat@chromium.org, devicetree@vger.kernel.org,
	mojahsu@chromium.org, srv_heupstream@mediatek.com,
	Rick Chang <rick.chang@mediatek.com>,
	senozhatsky@chromium.org, linux-kernel@vger.kernel.org,
	maoguang.meng@mediatek.com,
	Mauro Carvalho Chehab <mchehab+samsung@kernel.org>,
	sj.huang@mediatek.com, Rob Herring <robh+dt@kernel.org>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	linux-mediatek@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-media@vger.kernel.org
Subject: Re: [PATCH RESEND v9 05/18] media: platform: Improve power on and power off flow
Date: Thu, 11 Jun 2020 12:08:20 +0000	[thread overview]
Message-ID: <20200611120820.GC135826@chromium.org> (raw)
In-Reply-To: <20200604090553.10861-7-xia.jiang@mediatek.com>

Hi Xia,

On Thu, Jun 04, 2020 at 05:05:40PM +0800, Xia Jiang wrote:
> Call pm_runtime_get_sync() before starting a frame and then
> pm_runtime_put() after completing it. This can save power for the time
> between processing two frames.
> 
> Signed-off-by: Xia Jiang <xia.jiang@mediatek.com>
> ---
> v9: use pm_runtime_put() to replace pm_runtime_put_sync()
> ---
>  .../media/platform/mtk-jpeg/mtk_jpeg_core.c   | 27 +++++--------------
>  1 file changed, 6 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> index 12609ca46fd9..fb624385969e 100644
> --- a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> +++ b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> @@ -710,23 +710,6 @@ static struct vb2_v4l2_buffer *mtk_jpeg_buf_remove(struct mtk_jpeg_ctx *ctx,
>  		return v4l2_m2m_dst_buf_remove(ctx->fh.m2m_ctx);
>  }
>  
> -static int mtk_jpeg_start_streaming(struct vb2_queue *q, unsigned int count)
> -{
> -	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> -	struct vb2_v4l2_buffer *vb;
> -	int ret = 0;
> -
> -	ret = pm_runtime_get_sync(ctx->jpeg->dev);
> -	if (ret < 0)
> -		goto err;
> -
> -	return 0;
> -err:
> -	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
> -		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_QUEUED);
> -	return ret;
> -}
> -
>  static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  {
>  	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> @@ -751,8 +734,6 @@ static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  
>  	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
>  		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_ERROR);
> -
> -	pm_runtime_put_sync(ctx->jpeg->dev);
>  }
>  
>  static const struct vb2_ops mtk_jpeg_qops = {
> @@ -761,7 +742,6 @@ static const struct vb2_ops mtk_jpeg_qops = {
>  	.buf_queue          = mtk_jpeg_buf_queue,
>  	.wait_prepare       = vb2_ops_wait_prepare,
>  	.wait_finish        = vb2_ops_wait_finish,
> -	.start_streaming    = mtk_jpeg_start_streaming,
>  	.stop_streaming     = mtk_jpeg_stop_streaming,
>  };
>  
> @@ -812,7 +792,7 @@ static void mtk_jpeg_device_run(void *priv)
>  	struct mtk_jpeg_src_buf *jpeg_src_buf;
>  	struct mtk_jpeg_bs bs;
>  	struct mtk_jpeg_fb fb;
> -	int i;
> +	int i, ret;
>  
>  	src_buf = v4l2_m2m_next_src_buf(ctx->fh.m2m_ctx);
>  	dst_buf = v4l2_m2m_next_dst_buf(ctx->fh.m2m_ctx);
> @@ -832,6 +812,10 @@ static void mtk_jpeg_device_run(void *priv)
>  		return;
>  	}
>  
> +	ret = pm_runtime_get_sync(jpeg->dev);
> +	if (ret < 0)
> +		goto dec_end;
> +
>  	mtk_jpeg_set_dec_src(ctx, &src_buf->vb2_buf, &bs);
>  	if (mtk_jpeg_set_dec_dst(ctx, &jpeg_src_buf->dec_param, &dst_buf->vb2_buf, &fb))
>  		goto dec_end;
> @@ -957,6 +941,7 @@ static irqreturn_t mtk_jpeg_dec_irq(int irq, void *priv)
>  	v4l2_m2m_buf_done(src_buf, buf_state);
>  	v4l2_m2m_buf_done(dst_buf, buf_state);
>  	v4l2_m2m_job_finish(jpeg->m2m_dev, ctx->fh.m2m_ctx);
> +	pm_runtime_put(ctx->jpeg->dev);

This patch itself is correct and feel free to add my

Reviewed-by: Tomasz Figa <tfiga@chromium.org>

However, it looks like there might be one more problem with this driver.
What happens if the hardware locks up? The driver doesn't seem to take
any measures to detect that and recover the system.

If you take a look at other drivers, e.g. the MTK FD driver, there is a
delayed work scheduled before starting the hardware and canceled in the
interrupt handler. If the delayed work is executed, it resets the
hardware and reports the failure to V4L2, so that the execution can
continue from next frames.

This should be fixed in a separate patch, could be outside of this
series.

Best regards,
Tomasz

_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek

WARNING: multiple messages have this Message-ID (diff)
From: Tomasz Figa <tfiga@chromium.org>
To: Xia Jiang <xia.jiang@mediatek.com>
Cc: drinkcat@chromium.org, devicetree@vger.kernel.org,
	mojahsu@chromium.org, srv_heupstream@mediatek.com,
	Rick Chang <rick.chang@mediatek.com>,
	senozhatsky@chromium.org, linux-kernel@vger.kernel.org,
	maoguang.meng@mediatek.com,
	Mauro Carvalho Chehab <mchehab+samsung@kernel.org>,
	sj.huang@mediatek.com, Rob Herring <robh+dt@kernel.org>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	linux-mediatek@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-media@vger.kernel.org
Subject: Re: [PATCH RESEND v9 05/18] media: platform: Improve power on and power off flow
Date: Thu, 11 Jun 2020 12:08:20 +0000	[thread overview]
Message-ID: <20200611120820.GC135826@chromium.org> (raw)
In-Reply-To: <20200604090553.10861-7-xia.jiang@mediatek.com>

Hi Xia,

On Thu, Jun 04, 2020 at 05:05:40PM +0800, Xia Jiang wrote:
> Call pm_runtime_get_sync() before starting a frame and then
> pm_runtime_put() after completing it. This can save power for the time
> between processing two frames.
> 
> Signed-off-by: Xia Jiang <xia.jiang@mediatek.com>
> ---
> v9: use pm_runtime_put() to replace pm_runtime_put_sync()
> ---
>  .../media/platform/mtk-jpeg/mtk_jpeg_core.c   | 27 +++++--------------
>  1 file changed, 6 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> index 12609ca46fd9..fb624385969e 100644
> --- a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> +++ b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
> @@ -710,23 +710,6 @@ static struct vb2_v4l2_buffer *mtk_jpeg_buf_remove(struct mtk_jpeg_ctx *ctx,
>  		return v4l2_m2m_dst_buf_remove(ctx->fh.m2m_ctx);
>  }
>  
> -static int mtk_jpeg_start_streaming(struct vb2_queue *q, unsigned int count)
> -{
> -	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> -	struct vb2_v4l2_buffer *vb;
> -	int ret = 0;
> -
> -	ret = pm_runtime_get_sync(ctx->jpeg->dev);
> -	if (ret < 0)
> -		goto err;
> -
> -	return 0;
> -err:
> -	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
> -		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_QUEUED);
> -	return ret;
> -}
> -
>  static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  {
>  	struct mtk_jpeg_ctx *ctx = vb2_get_drv_priv(q);
> @@ -751,8 +734,6 @@ static void mtk_jpeg_stop_streaming(struct vb2_queue *q)
>  
>  	while ((vb = mtk_jpeg_buf_remove(ctx, q->type)))
>  		v4l2_m2m_buf_done(vb, VB2_BUF_STATE_ERROR);
> -
> -	pm_runtime_put_sync(ctx->jpeg->dev);
>  }
>  
>  static const struct vb2_ops mtk_jpeg_qops = {
> @@ -761,7 +742,6 @@ static const struct vb2_ops mtk_jpeg_qops = {
>  	.buf_queue          = mtk_jpeg_buf_queue,
>  	.wait_prepare       = vb2_ops_wait_prepare,
>  	.wait_finish        = vb2_ops_wait_finish,
> -	.start_streaming    = mtk_jpeg_start_streaming,
>  	.stop_streaming     = mtk_jpeg_stop_streaming,
>  };
>  
> @@ -812,7 +792,7 @@ static void mtk_jpeg_device_run(void *priv)
>  	struct mtk_jpeg_src_buf *jpeg_src_buf;
>  	struct mtk_jpeg_bs bs;
>  	struct mtk_jpeg_fb fb;
> -	int i;
> +	int i, ret;
>  
>  	src_buf = v4l2_m2m_next_src_buf(ctx->fh.m2m_ctx);
>  	dst_buf = v4l2_m2m_next_dst_buf(ctx->fh.m2m_ctx);
> @@ -832,6 +812,10 @@ static void mtk_jpeg_device_run(void *priv)
>  		return;
>  	}
>  
> +	ret = pm_runtime_get_sync(jpeg->dev);
> +	if (ret < 0)
> +		goto dec_end;
> +
>  	mtk_jpeg_set_dec_src(ctx, &src_buf->vb2_buf, &bs);
>  	if (mtk_jpeg_set_dec_dst(ctx, &jpeg_src_buf->dec_param, &dst_buf->vb2_buf, &fb))
>  		goto dec_end;
> @@ -957,6 +941,7 @@ static irqreturn_t mtk_jpeg_dec_irq(int irq, void *priv)
>  	v4l2_m2m_buf_done(src_buf, buf_state);
>  	v4l2_m2m_buf_done(dst_buf, buf_state);
>  	v4l2_m2m_job_finish(jpeg->m2m_dev, ctx->fh.m2m_ctx);
> +	pm_runtime_put(ctx->jpeg->dev);

This patch itself is correct and feel free to add my

Reviewed-by: Tomasz Figa <tfiga@chromium.org>

However, it looks like there might be one more problem with this driver.
What happens if the hardware locks up? The driver doesn't seem to take
any measures to detect that and recover the system.

If you take a look at other drivers, e.g. the MTK FD driver, there is a
delayed work scheduled before starting the hardware and canceled in the
interrupt handler. If the delayed work is executed, it resets the
hardware and reports the failure to V4L2, so that the execution can
continue from next frames.

This should be fixed in a separate patch, could be outside of this
series.

Best regards,
Tomasz

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-06-11 12:08 UTC|newest]

Thread overview: 136+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-04  9:05 [PATCH RESEND v9 00/18] Add support for mt2701 JPEG ENC support Xia Jiang
2020-06-04  9:05 ` Xia Jiang
2020-06-04  9:05 ` Xia Jiang
2020-06-04  9:05 ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 01/18] media: platform: Improve subscribe event flow for bug fixing Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 02/18] media: platform: Improve queue set up " Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 03/18] media: platform: Improve getting and requesting irq " Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 04/18] media: platform: Change the fixed device node number to unfixed value Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 11:58   ` Tomasz Figa
2020-06-11 11:58     ` Tomasz Figa
2020-06-11 11:58     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 05/18] media: platform: Improve power on and power off flow Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 12:08   ` Tomasz Figa [this message]
2020-06-11 12:08     ` Tomasz Figa
2020-06-11 12:08     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 06/18] media: platform: Delete the resetting hardware flow in the system PM ops Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 11:59   ` Tomasz Figa
2020-06-11 11:59     ` Tomasz Figa
2020-06-11 11:59     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 07/18] media: platform: Improve the implementation of " Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 14:17   ` Tomasz Figa
2020-06-11 14:17     ` Tomasz Figa
2020-06-11 14:17     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 08/18] media: platform: Cancel the last frame handling flow Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 14:25   ` Tomasz Figa
2020-06-11 14:25     ` Tomasz Figa
2020-06-11 14:25     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 09/18] media: platform: Delete zeroing the reserved fields Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 14:27   ` Tomasz Figa
2020-06-11 14:27     ` Tomasz Figa
2020-06-11 14:27     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 10/18] media: platform: Stylistic changes for improving code quality Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 14:28   ` Tomasz Figa
2020-06-11 14:28     ` Tomasz Figa
2020-06-11 14:28     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 11/18] media: platform: Use generic rounding helpers Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 12/18] media: platform: Change MTK_JPEG_COMP_MAX macro definition location Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 13/18] media: platform: Delete redundant code and add annotation for an enum Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-11 16:50   ` Tomasz Figa
2020-06-11 16:50     ` Tomasz Figa
2020-06-11 16:50     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 14/18] media: dt-bindings: Add jpeg enc device tree node document Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 15/18] arm: dts: mt2701: Add jpeg enc device tree node Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 16/18] media: platform: Rename jpeg dec file name Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05 ` [PATCH RESEND v9 17/18] media: platform: Rename existing functions/defines/variables Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-08 10:59   ` Hans Verkuil
2020-06-08 10:59     ` Hans Verkuil
2020-06-08 10:59     ` Hans Verkuil
2020-06-11 16:48   ` Tomasz Figa
2020-06-11 16:48     ` Tomasz Figa
2020-06-11 16:48     ` Tomasz Figa
2020-06-04  9:05 ` [PATCH RESEND v9 18/18] media: platform: Add jpeg enc feature Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-04  9:05   ` Xia Jiang
2020-06-07 23:36   ` Chun-Kuang Hu
2020-06-07 23:36     ` Chun-Kuang Hu
2020-06-07 23:36     ` Chun-Kuang Hu
2020-07-24  9:06     ` Xia Jiang
2020-07-24  9:06       ` Xia Jiang
2020-07-24  9:06       ` Xia Jiang
2020-06-08 10:54   ` Hans Verkuil
2020-06-08 10:54     ` Hans Verkuil
2020-06-08 10:54     ` Hans Verkuil
2020-07-24  9:17     ` Xia Jiang
2020-07-24  9:17       ` Xia Jiang
2020-07-24  9:17       ` Xia Jiang
2020-06-11 18:46   ` Tomasz Figa
2020-06-11 18:46     ` Tomasz Figa
2020-06-11 18:46     ` Tomasz Figa
2020-06-30  2:56     ` Xia Jiang
2020-06-30  2:56       ` Xia Jiang
2020-06-30  2:56       ` Xia Jiang
2020-06-30 16:53       ` Tomasz Figa
2020-06-30 16:53         ` Tomasz Figa
2020-06-30 16:53         ` Tomasz Figa
2020-07-01  8:28         ` Xia Jiang
2020-07-01  8:28           ` Xia Jiang
2020-07-01  8:28           ` Xia Jiang
2020-07-01 11:07           ` Tomasz Figa
2020-07-01 11:07             ` Tomasz Figa
2020-07-01 11:07             ` Tomasz Figa
2020-07-07  6:45         ` Xia Jiang
2020-07-07  6:45           ` Xia Jiang
2020-07-07  6:45           ` Xia Jiang
2020-07-07 13:35           ` Tomasz Figa
2020-07-07 13:35             ` Tomasz Figa
2020-07-07 13:35             ` Tomasz Figa
2020-07-08  7:13             ` Xia Jiang
2020-07-08  7:13               ` Xia Jiang
2020-07-08  7:13               ` Xia Jiang
2020-07-08 11:16               ` Tomasz Figa
2020-07-08 11:16                 ` Tomasz Figa
2020-07-08 11:16                 ` Tomasz Figa
2020-07-16 11:18                 ` Hans Verkuil
2020-07-16 11:18                   ` Hans Verkuil
2020-07-16 11:18                   ` Hans Verkuil
2020-07-16 11:18                   ` Hans Verkuil
2020-07-24  9:54     ` Xia Jiang
2020-07-24  9:54       ` Xia Jiang
2020-07-24  9:54       ` Xia Jiang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200611120820.GC135826@chromium.org \
    --to=tfiga@chromium.org \
    --cc=devicetree@vger.kernel.org \
    --cc=drinkcat@chromium.org \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=m.szyprowski@samsung.com \
    --cc=maoguang.meng@mediatek.com \
    --cc=matthias.bgg@gmail.com \
    --cc=mchehab+samsung@kernel.org \
    --cc=mojahsu@chromium.org \
    --cc=rick.chang@mediatek.com \
    --cc=robh+dt@kernel.org \
    --cc=senozhatsky@chromium.org \
    --cc=sj.huang@mediatek.com \
    --cc=srv_heupstream@mediatek.com \
    --cc=xia.jiang@mediatek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.