Browse Source

video: driver: add additional profile support for image session

Added main & main10 profile support for HEIC image session.

Change-Id: I738c6e55c361bdccac7c4d1165abcf9363d80eb7
Signed-off-by: Govindaraj Rajagopal <[email protected]>
Govindaraj Rajagopal 4 years ago
parent
commit
7f084e9a18
2 changed files with 5 additions and 19 deletions
  1. 1 13
      driver/platform/waipio/src/msm_vidc_waipio.c
  2. 4 6
      driver/vidc/src/msm_vidc_control.c

+ 1 - 13
driver/platform/waipio/src/msm_vidc_waipio.c

@@ -930,7 +930,7 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
 		{ENTROPY_MODE},
 		NULL, msm_vidc_set_u32_enum},
 
-	{PROFILE, ENC|DEC, HEVC,
+	{PROFILE, ENC|DEC, HEVC|HEIC,
 		V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN,
 		V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE,
 		BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN) |
@@ -1428,18 +1428,6 @@ static struct msm_platform_inst_capability instance_data_waipio[] = {
 		CAP_FLAG_ROOT,
 		{0},
 		{PROFILE}},
-	{PROFILE, ENC|DEC, HEIC,
-		V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE,
-		V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE,
-		BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE) |
-		BIT(V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10_STILL_PICTURE),
-		V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE,
-		V4L2_CID_MPEG_VIDEO_HEVC_PROFILE,
-		HFI_PROP_PROFILE,
-		CAP_FLAG_ROOT | CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU,
-		{PIX_FMTS},
-		{0},
-		msm_vidc_adjust_profile, msm_vidc_set_u32_enum},
 	{HEVC_TIER, ENC|DEC, HEIC,
 		V4L2_MPEG_VIDEO_HEVC_TIER_MAIN,
 		V4L2_MPEG_VIDEO_HEVC_TIER_MAIN,

+ 4 - 6
driver/vidc/src/msm_vidc_control.c

@@ -936,12 +936,10 @@ int msm_vidc_adjust_profile(void *instance, struct v4l2_ctrl *ctrl)
 			adjusted_value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10;
 	} else {
 		/* 8 bit profile for 8 bit color format */
-		if (adjusted_value == V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_10) {
-			if (is_image_session(inst))
-				adjusted_value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE;
-			else
-				adjusted_value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN;
-		}
+		if (is_image_session(inst))
+			adjusted_value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN_STILL_PICTURE;
+		else
+			adjusted_value = V4L2_MPEG_VIDEO_HEVC_PROFILE_MAIN;
 	}
 
 	msm_vidc_update_cap_value(inst, PROFILE,