media: hantro: Simplify postprocessor
[ Upstream commit 53a3e71095c572333ceea30762565dbedec951ca ] Add a 'postprocessed' boolean property to struct hantro_fmt to signal that a format is produced by the post-processor. This will allow to introduce the G2 post-processor in a simple way. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
9d36596b5f
commit
223b977c1c
@ -262,6 +262,7 @@ struct hantro_ctx {
|
||||
* @max_depth: Maximum depth, for bitstream formats
|
||||
* @enc_fmt: Format identifier for encoder registers.
|
||||
* @frmsize: Supported range of frame sizes (only for bitstream formats).
|
||||
* @postprocessed: Indicates if this format needs the post-processor.
|
||||
*/
|
||||
struct hantro_fmt {
|
||||
char *name;
|
||||
@ -271,6 +272,7 @@ struct hantro_fmt {
|
||||
int max_depth;
|
||||
enum hantro_enc_fmt enc_fmt;
|
||||
struct v4l2_frmsize_stepwise frmsize;
|
||||
bool postprocessed;
|
||||
};
|
||||
|
||||
struct hantro_reg {
|
||||
|
@ -53,15 +53,9 @@ const struct hantro_postproc_regs hantro_g1_postproc_regs = {
|
||||
bool hantro_needs_postproc(const struct hantro_ctx *ctx,
|
||||
const struct hantro_fmt *fmt)
|
||||
{
|
||||
struct hantro_dev *vpu = ctx->dev;
|
||||
|
||||
if (ctx->is_encoder)
|
||||
return false;
|
||||
|
||||
if (!vpu->variant->postproc_fmts)
|
||||
return false;
|
||||
|
||||
return fmt->fourcc != V4L2_PIX_FMT_NV12;
|
||||
return fmt->postprocessed;
|
||||
}
|
||||
|
||||
void hantro_postproc_enable(struct hantro_ctx *ctx)
|
||||
|
@ -82,6 +82,7 @@ static const struct hantro_fmt imx8m_vpu_postproc_fmts[] = {
|
||||
{
|
||||
.fourcc = V4L2_PIX_FMT_YUYV,
|
||||
.codec_mode = HANTRO_MODE_NONE,
|
||||
.postprocessed = true,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -62,6 +62,7 @@ static const struct hantro_fmt rockchip_vpu1_postproc_fmts[] = {
|
||||
{
|
||||
.fourcc = V4L2_PIX_FMT_YUYV,
|
||||
.codec_mode = HANTRO_MODE_NONE,
|
||||
.postprocessed = true,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -15,6 +15,7 @@ static const struct hantro_fmt sama5d4_vdec_postproc_fmts[] = {
|
||||
{
|
||||
.fourcc = V4L2_PIX_FMT_YUYV,
|
||||
.codec_mode = HANTRO_MODE_NONE,
|
||||
.postprocessed = true,
|
||||
},
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user