video: driver: Prepare dependency list without parent

This is change 2 of the Prepare dependency list without
parent change.
In this change we remove all parent information from
the CAP database.

Change-Id: Ie0b878050ae2d24e3c1a41cbd579ef0f19d42250
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
This commit is contained in:
Ankush Mitra
2022-11-29 20:29:24 +05:30
parent 2c39d5b91b
commit bd1cd4368b
9 changed files with 27 additions and 462 deletions

View File

@@ -146,7 +146,6 @@ struct msm_platform_inst_cap_dependency {
enum msm_vidc_inst_capability_type cap_id;
enum msm_vidc_domain_type domain;
enum msm_vidc_codec_type codec;
enum msm_vidc_inst_capability_type parents[MAX_CAP_PARENTS];
enum msm_vidc_inst_capability_type children[MAX_CAP_CHILDREN];
int (*adjust)(void *inst,
struct v4l2_ctrl *ctrl);

View File

@@ -523,12 +523,15 @@ bool is_parent_available(struct msm_vidc_inst *inst,
u32 cap_id, u32 check_parent, const char *func)
{
int i = 0;
u32 cap_parent;
u32 cap_child;
while (i < MAX_CAP_PARENTS &&
inst->capabilities->cap[cap_id].parents[i]) {
cap_parent = inst->capabilities->cap[cap_id].parents[i];
if (cap_parent == check_parent)
if (!is_valid_cap_id(cap_id) || !is_valid_cap_id(check_parent))
return false;
while (i < MAX_CAP_CHILDREN &&
inst->capabilities->cap[check_parent].children[i]) {
cap_child = inst->capabilities->cap[check_parent].children[i];
if (cap_child == cap_id)
return true;
i++;
}