Files
android_kernel_samsung_sm86…/driver/vidc/inc/msm_vidc_control.h
Akshata Sahukar 10e2017aa8 video: driver: update instance database with controls
Update instance database with v4l2 controls.

Change-Id: I0715edfcbf46a82c8e2f67ec298185e2cf4eb5d0
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
2020-11-02 14:22:45 -08:00

44 lines
1.5 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
*/
#ifndef _MSM_VIDC_CONTROL_H_
#define _MSM_VIDC_CONTROL_H_
#include <media/v4l2_vidc_extensions.h>
#include "msm_vidc_inst.h"
#include "msm_vidc_internal.h"
#define MAX_GOP 0xFFFFFFF
#define MAX_INTRA_REFRESH_MBS ((7680 * 4320) >> 8)
#define MAX_BASE_LAYER_PRIORITY_ID 63
#define MIN_CHROMA_QP_OFFSET -12
#define MAX_CHROMA_QP_OFFSET 12
#define MAX_LTR_FRAME_COUNT 10
#define MAX_BITRATE 220000000
enum msm_vidc_ctrl_list_type {
CHILD_LIST = BIT(0),
FW_LIST = BIT(1),
};
int msm_vidc_ctrl_init(struct msm_vidc_inst *inst);
int msm_vidc_ctrl_deinit(struct msm_vidc_inst *inst);
int msm_v4l2_op_s_ctrl(struct v4l2_ctrl *ctrl);
int msm_vidc_adjust_bitrate(void *instance, struct v4l2_ctrl *ctrl);
int msm_vidc_adjust_entropy_mode(void *instance, struct v4l2_ctrl *ctrl);
int msm_vidc_adjust_ltr_count(void *instance, struct v4l2_ctrl *ctrl);
int msm_vidc_adjust_properties(struct msm_vidc_inst *inst);
int msm_vidc_set_u32(void *instance,
enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_s32(void *instance,
enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_array(void *instance,
enum msm_vidc_inst_capability_type cap_id);
int msm_vidc_set_fw_list(struct msm_vidc_inst *inst);
int msm_vidc_v4l2_menu_to_hfi(struct msm_vidc_inst *inst,
enum msm_vidc_inst_capability_type cap_id, u32 *value);
#endif