Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c1f00cec authored by Shi Zhongbo's avatar Shi Zhongbo Committed by Zhongbo Shi
Browse files

msm: vidc: extend AVC level query support upto 6.2



Adding AVC level 6.1 and 6.2 v4l2/hal/hfi enums and mappings
to extend omx query of supported and current AVC level upto 6.2.

Change-Id: I01a80c36759d02fb0456222e188df3ea6afbf8b8
Signed-off-by: default avatarZhongbo Shi <zhongbos@codeaurora.org>
parent 163c180d
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -213,9 +213,11 @@ static struct msm_vidc_ctrl msm_vdec_ctrls[] = {
		.id = V4L2_CID_MPEG_VIDEO_H264_LEVEL,
		.name = "H264 Level",
		.type = V4L2_CTRL_TYPE_MENU,
		.maximum = V4L2_MPEG_VIDEO_H264_LEVEL_5_2,
		.maximum = V4L2_MPEG_VIDEO_H264_LEVEL_6_2,
		.default_value = V4L2_MPEG_VIDEO_H264_LEVEL_1_0,
		.menu_skip_mask = 0,
		.menu_skip_mask = (
		(1 << V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN)
		),
		.flags = V4L2_CTRL_FLAG_VOLATILE,
		.qmenu = NULL,
	},
+12 −0
Original line number Diff line number Diff line
@@ -163,6 +163,12 @@ int msm_comm_hal_to_v4l2(int id, int value)
			return V4L2_MPEG_VIDEO_H264_LEVEL_5_1;
		case HAL_H264_LEVEL_52:
			return V4L2_MPEG_VIDEO_H264_LEVEL_5_2;
		case HAL_H264_LEVEL_6:
			return V4L2_MPEG_VIDEO_H264_LEVEL_6_0;
		case HAL_H264_LEVEL_61:
			return V4L2_MPEG_VIDEO_H264_LEVEL_6_1;
		case HAL_H264_LEVEL_62:
			return V4L2_MPEG_VIDEO_H264_LEVEL_6_2;
		default:
			goto unknown_value;
		}
@@ -386,6 +392,12 @@ int msm_comm_v4l2_to_hal(int id, int value)
			return HAL_H264_LEVEL_51;
		case V4L2_MPEG_VIDEO_H264_LEVEL_5_2:
			return HAL_H264_LEVEL_52;
		case V4L2_MPEG_VIDEO_H264_LEVEL_6_0:
			return HAL_H264_LEVEL_6;
		case V4L2_MPEG_VIDEO_H264_LEVEL_6_1:
			return HAL_H264_LEVEL_61;
		case V4L2_MPEG_VIDEO_H264_LEVEL_6_2:
			return HAL_H264_LEVEL_62;
		case V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN:
			return HAL_H264_LEVEL_UNKNOWN;
		default:
+2 −0
Original line number Diff line number Diff line
@@ -315,6 +315,8 @@ enum hal_h264_level {
	HAL_H264_LEVEL_51 = 0x00008000,
	HAL_H264_LEVEL_52 = 0x00010000,
	HAL_H264_LEVEL_6  = 0x00020000,
	HAL_H264_LEVEL_61 = 0x00040000,
	HAL_H264_LEVEL_62 = 0x00080000,
};

enum hal_hevc_profile {
+3 −0
Original line number Diff line number Diff line
@@ -114,6 +114,9 @@
#define HFI_H264_LEVEL_5					0x00004000
#define HFI_H264_LEVEL_51					0x00008000
#define HFI_H264_LEVEL_52					0x00010000
#define HFI_H264_LEVEL_6					0x00020000
#define HFI_H264_LEVEL_61					0x00040000
#define HFI_H264_LEVEL_62					0x00080000

#define HFI_MPEG2_PROFILE_SIMPLE			0x00000001
#define HFI_MPEG2_PROFILE_MAIN				0x00000002