mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-29 13:53:33 +00:00
media: hantro: Simplify postprocessor
[ Upstream commit 53a3e71095
]
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
5 changed files with 6 additions and 7 deletions
|
@ -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…
Reference in a new issue