Lines Matching defs:funcs
564 static bool is_func_exist(struct eqbr_pmx_func *funcs, const char *name,
569 if (!funcs)
573 if (funcs[i].name && !strcmp(funcs[i].name, name)) {
582 static int funcs_utils(struct device *dev, struct eqbr_pmx_func *funcs,
607 if (!is_func_exist(funcs, fn_name, *nr_funcs, &fid))
612 if (!is_func_exist(funcs, fn_name, *nr_funcs, &fid))
613 funcs[i].name = fn_name;
617 if (is_func_exist(funcs, fn_name, *nr_funcs, &fid))
618 funcs[fid].nr_groups++;
622 if (is_func_exist(funcs, fn_name, *nr_funcs, &fid)) {
623 for (j = 0; j < funcs[fid].nr_groups; j++)
624 if (!funcs[fid].groups[j])
626 funcs[fid].groups[j] = prop->value;
642 struct eqbr_pmx_func *funcs = NULL;
646 ret = funcs_utils(dev, funcs, &nr_funcs, OP_COUNT_NR_FUNCS);
650 funcs = devm_kcalloc(dev, nr_funcs, sizeof(*funcs), GFP_KERNEL);
651 if (!funcs)
654 ret = funcs_utils(dev, funcs, &nr_funcs, OP_ADD_FUNCS);
658 ret = funcs_utils(dev, funcs, &nr_funcs, OP_COUNT_NR_FUNC_GRPS);
663 if (!funcs[i].nr_groups)
665 funcs[i].groups = devm_kcalloc(dev, funcs[i].nr_groups,
666 sizeof(*(funcs[i].groups)),
668 if (!funcs[i].groups)
672 ret = funcs_utils(dev, funcs, &nr_funcs, OP_ADD_FUNC_GRPS);
679 if (funcs[i].name == NULL)
683 funcs[i].name,
684 funcs[i].groups,
685 funcs[i].nr_groups,
689 funcs[i].name);