Merge "video: driver: modify slice delivery control as boolean control"

Bu işleme şunda yer alıyor:
qctecmdr
2022-09-22 17:43:50 -07:00
işlemeyi yapan: Gerrit - the friendly Code Review server
işleme 08b36416ce
3 değiştirilmiş dosya ile 4 ekleme ve 24 silme

Dosyayı Görüntüle

@@ -1754,21 +1754,13 @@ static struct msm_platform_inst_capability instance_cap_data_anorak[] = {
CAP_FLAG_BITMASK | CAP_FLAG_META},
{DELIVERY_MODE, ENC, HEVC,
V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_FRAME_BASED,
V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_SLICE_BASED,
BIT(V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_FRAME_BASED) |
BIT(V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_SLICE_BASED),
V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_FRAME_BASED,
0, 1, 1, 0,
V4L2_CID_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE,
HFI_PROP_ENABLE_SLICE_DELIVERY,
CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU},
{DELIVERY_MODE, ENC, H264,
V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_FRAME_BASED,
V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_SLICE_BASED,
BIT(V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_FRAME_BASED) |
BIT(V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_SLICE_BASED),
V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_FRAME_BASED,
0, 1, 1, 0,
V4L2_CID_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE,
HFI_PROP_ENABLE_SLICE_DELIVERY,
CAP_FLAG_OUTPUT_PORT | CAP_FLAG_MENU},

Dosyayı Görüntüle

@@ -150,12 +150,8 @@ int msm_vidc_adjust_delivery_mode(void *instance, struct v4l2_ctrl *ctrl)
return -EINVAL;
/* Slice encode delivery mode is only supported for Max MB slice mode */
if (slice_mode != V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB) {
if (inst->codec == MSM_VIDC_HEVC)
adjusted_value = V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_FRAME_BASED;
else if (inst->codec == MSM_VIDC_H264)
adjusted_value = V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_FRAME_BASED;
}
if (slice_mode != V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_MAX_MB)
adjusted_value = 0;
msm_vidc_update_cap_value(inst, DELIVERY_MODE,
adjusted_value, __func__);

Dosyayı Görüntüle

@@ -239,17 +239,9 @@ enum v4l2_mpeg_video_av1_tier {
*/
#define V4L2_CID_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE \
(V4L2_CID_MPEG_VIDC_BASE + 0x3C)
enum v4l2_hevc_encode_delivery_mode {
V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_FRAME_BASED = 0,
V4L2_MPEG_VIDC_HEVC_ENCODE_DELIVERY_MODE_SLICE_BASED = 1,
};
#define V4L2_CID_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE \
(V4L2_CID_MPEG_VIDC_BASE + 0x3D)
enum v4l2_h264_encode_delivery_mode {
V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_FRAME_BASED = 0,
V4L2_MPEG_VIDC_H264_ENCODE_DELIVERY_MODE_SLICE_BASED = 1,
};
#define V4L2_CID_MPEG_VIDC_CRITICAL_PRIORITY \
(V4L2_CID_MPEG_VIDC_BASE + 0x3E)