video: driver: re-organize enums and add comments

Re-organized enums(msm_vidc_inst_capability_type) in below
order.

[1] Root(no parents) enums,
[2] Intermittent(having both parents & children) enums,
[3] Leaf(no children) enums.

Also added proper comments in header file.

Change-Id: I2bda51b54b6fa6e190098f16dd60090004cfbecf
Signed-off-by: Govindaraj Rajagopal <quic_grajagop@quicinc.com>
Tento commit je obsažen v:
Govindaraj Rajagopal
2022-02-14 14:09:58 +05:30
odevzdal Gerrit - the friendly Code Review server
rodič 7373cc5efe
revize 93b88b9d69
3 změnil soubory, kde provedl 42 přidání a 24 odebrání

Zobrazit soubor

@@ -142,8 +142,8 @@ struct msm_vidc_inst {
struct list_head enc_input_crs;
struct list_head dmabuf_tracker; /* list of struct msm_memory_dmabuf */
struct list_head caps_list;
struct list_head children_list;
struct list_head firmware_list;
struct list_head children_list; /* struct msm_vidc_inst_cap_entry */
struct list_head firmware_list; /* struct msm_vidc_inst_cap_entry */
struct list_head pending_pkts; /* list of struct hfi_pending_packet */
struct list_head fence_list; /* list of struct msm_vidc_fence */
bool once_per_session_set;

Zobrazit soubor

@@ -340,6 +340,18 @@ enum msm_vidc_core_capability_type {
CORE_CAP_MAX,
};
/**
* msm_vidc_prepare_dependency_list() api will prepare caps_list by looping over
* enums(msm_vidc_inst_capability_type) from 0 to INST_CAP_MAX and arranges the
* node in such a way that parents willbe at the front and dependent children
* in the back.
*
* caps_list preparation may become CPU intensive task, so to save CPU cycles,
* organize enum in proper order(root caps at the beginning and dependent caps
* at back), so that during caps_list preparation num CPU cycles spent will reduce.
*
* Note: It will work, if enum kept at different places, but not efficient.
*/
enum msm_vidc_inst_capability_type {
INST_CAP_NONE = 0,
FRAME_WIDTH,
@@ -462,34 +474,40 @@ enum msm_vidc_inst_capability_type {
META_DEC_QP_METADATA,
COMPLEXITY,
META_MAX_NUM_REORDER_FRAMES,
/* place all root(no parent) enums before this line */
PROFILE,
META_ROI_INFO,
ENH_LAYER_COUNT,
BIT_RATE,
LOWLATENCY_MODE,
GOP_SIZE,
B_FRAME,
ALL_INTRA,
MIN_QUALITY,
CONTENT_ADAPTIVE_CODING,
BLUR_TYPES,
/* place all intermittent(having both parent and child) enums before this line */
MIN_FRAME_QP,
MAX_FRAME_QP,
I_FRAME_QP,
P_FRAME_QP,
B_FRAME_QP,
META_ROI_INFO,
TIME_DELTA_BASED_RC,
CONSTANT_QUALITY,
ENH_LAYER_COUNT,
BIT_RATE,
VBV_DELAY,
PEAK_BITRATE,
LOWLATENCY_MODE,
ENTROPY_MODE,
TRANSFORM_8X8,
GOP_SIZE,
B_FRAME,
BLUR_RESOLUTION,
STAGE,
ALL_INTRA,
MIN_QUALITY,
LTR_COUNT,
IR_RANDOM,
BITRATE_BOOST,
SLICE_MODE,
CONTENT_ADAPTIVE_CODING,
BLUR_TYPES,
BLUR_RESOLUTION,
/* place all leaf(no child) enums before this line */
INST_CAP_MAX,
};

Zobrazit soubor

@@ -178,33 +178,33 @@ static const struct msm_vidc_cap_name cap_name_arr[] = {
{COMPLEXITY, "COMPLEXITY" },
{META_MAX_NUM_REORDER_FRAMES, "META_MAX_NUM_REORDER_FRAMES"},
{PROFILE, "PROFILE" },
{META_ROI_INFO, "META_ROI_INFO" },
{ENH_LAYER_COUNT, "ENH_LAYER_COUNT" },
{BIT_RATE, "BIT_RATE" },
{LOWLATENCY_MODE, "LOWLATENCY_MODE" },
{GOP_SIZE, "GOP_SIZE" },
{B_FRAME, "B_FRAME" },
{ALL_INTRA, "ALL_INTRA" },
{MIN_QUALITY, "MIN_QUALITY" },
{CONTENT_ADAPTIVE_CODING, "CONTENT_ADAPTIVE_CODING" },
{BLUR_TYPES, "BLUR_TYPES" },
{MIN_FRAME_QP, "MIN_FRAME_QP" },
{MAX_FRAME_QP, "MAX_FRAME_QP" },
{I_FRAME_QP, "I_FRAME_QP" },
{P_FRAME_QP, "P_FRAME_QP" },
{B_FRAME_QP, "B_FRAME_QP" },
{META_ROI_INFO, "META_ROI_INFO" },
{TIME_DELTA_BASED_RC, "TIME_DELTA_BASED_RC" },
{CONSTANT_QUALITY, "CONSTANT_QUALITY" },
{ENH_LAYER_COUNT, "ENH_LAYER_COUNT" },
{BIT_RATE, "BIT_RATE" },
{VBV_DELAY, "VBV_DELAY" },
{PEAK_BITRATE, "PEAK_BITRATE" },
{LOWLATENCY_MODE, "LOWLATENCY_MODE" },
{ENTROPY_MODE, "ENTROPY_MODE" },
{TRANSFORM_8X8, "TRANSFORM_8X8" },
{GOP_SIZE, "GOP_SIZE" },
{B_FRAME, "B_FRAME" },
{BLUR_RESOLUTION, "BLUR_RESOLUTION" },
{STAGE, "STAGE" },
{ALL_INTRA, "ALL_INTRA" },
{MIN_QUALITY, "MIN_QUALITY" },
{LTR_COUNT, "LTR_COUNT" },
{IR_RANDOM, "IR_RANDOM" },
{BITRATE_BOOST, "BITRATE_BOOST" },
{SLICE_MODE, "SLICE_MODE" },
{CONTENT_ADAPTIVE_CODING, "CONTENT_ADAPTIVE_CODING" },
{BLUR_TYPES, "BLUR_TYPES" },
{BLUR_RESOLUTION, "BLUR_RESOLUTION" },
{INST_CAP_MAX, "INST_CAP_MAX" },
};