media: coda: remove mask from decoder h.264 level control
Since levels are specified in terms of maximum values, there is no reason to filter out lower levels than the supported maximum. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
parent
75480ebf49
commit
be9dd094e8
|
@ -2027,7 +2027,6 @@ static void coda_jpeg_encode_ctrls(struct coda_ctx *ctx)
|
||||||
|
|
||||||
static void coda_decode_ctrls(struct coda_ctx *ctx)
|
static void coda_decode_ctrls(struct coda_ctx *ctx)
|
||||||
{
|
{
|
||||||
u64 mask;
|
|
||||||
u8 max;
|
u8 max;
|
||||||
|
|
||||||
ctx->h264_profile_ctrl = v4l2_ctrl_new_std_menu(&ctx->ctrls,
|
ctx->h264_profile_ctrl = v4l2_ctrl_new_std_menu(&ctx->ctrls,
|
||||||
|
@ -2041,27 +2040,14 @@ static void coda_decode_ctrls(struct coda_ctx *ctx)
|
||||||
ctx->h264_profile_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY;
|
ctx->h264_profile_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY;
|
||||||
|
|
||||||
if (ctx->dev->devtype->product == CODA_HX4 ||
|
if (ctx->dev->devtype->product == CODA_HX4 ||
|
||||||
ctx->dev->devtype->product == CODA_7541) {
|
ctx->dev->devtype->product == CODA_7541)
|
||||||
max = V4L2_MPEG_VIDEO_H264_LEVEL_4_0;
|
max = V4L2_MPEG_VIDEO_H264_LEVEL_4_0;
|
||||||
mask = ~((1 << V4L2_MPEG_VIDEO_H264_LEVEL_2_0) |
|
else if (ctx->dev->devtype->product == CODA_960)
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_0) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_1) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_2) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_4_0));
|
|
||||||
} else if (ctx->dev->devtype->product == CODA_960) {
|
|
||||||
max = V4L2_MPEG_VIDEO_H264_LEVEL_4_1;
|
max = V4L2_MPEG_VIDEO_H264_LEVEL_4_1;
|
||||||
mask = ~((1 << V4L2_MPEG_VIDEO_H264_LEVEL_2_0) |
|
else
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_0) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_1) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_3_2) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_4_0) |
|
|
||||||
(1 << V4L2_MPEG_VIDEO_H264_LEVEL_4_1));
|
|
||||||
} else {
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
ctx->h264_level_ctrl = v4l2_ctrl_new_std_menu(&ctx->ctrls,
|
ctx->h264_level_ctrl = v4l2_ctrl_new_std_menu(&ctx->ctrls,
|
||||||
&coda_ctrl_ops, V4L2_CID_MPEG_VIDEO_H264_LEVEL, max, mask,
|
&coda_ctrl_ops, V4L2_CID_MPEG_VIDEO_H264_LEVEL, max, 0, max);
|
||||||
max);
|
|
||||||
if (ctx->h264_level_ctrl)
|
if (ctx->h264_level_ctrl)
|
||||||
ctx->h264_level_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY;
|
ctx->h264_level_ctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue