Lines Matching refs:control
247 const struct sdca_control *control) in find_sdca_control_label() argument
249 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_label()
535 return devm_kasprintf(dev, GFP_KERNEL, "Imp-Def %#x", control->sel); in find_sdca_control_label()
540 const struct sdca_control *control) in find_sdca_control_bits() argument
542 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_bits()
609 const struct sdca_control *control) in find_sdca_control_datatype() argument
611 switch (SDCA_CTL_TYPE(entity->type, control->sel)) { in find_sdca_control_datatype()
819 struct sdca_control *control, in find_sdca_control_value() argument
836 for_each_set_bit(cn, (unsigned long *)&control->cn_list, in find_sdca_control_value()
837 BITS_PER_TYPE(control->cn_list)) { in find_sdca_control_value()
847 control->values[i] = tmp; in find_sdca_control_value()
860 struct sdca_control *control) in find_sdca_entity_control() argument
868 entity->label, control->sel, ret); in find_sdca_entity_control()
872 control->mode = tmp; in find_sdca_entity_control()
877 entity->label, control->sel, ret); in find_sdca_entity_control()
881 control->layers = tmp; in find_sdca_entity_control()
884 &control->cn_list); in find_sdca_entity_control()
887 control->cn_list = 0x1; in find_sdca_entity_control()
888 } else if (ret || !control->cn_list) { in find_sdca_entity_control()
890 entity->label, control->sel, ret); in find_sdca_entity_control()
894 control->values = devm_kzalloc(dev, hweight64(control->cn_list), GFP_KERNEL); in find_sdca_entity_control()
895 if (!control->values) in find_sdca_entity_control()
898 switch (control->mode) { in find_sdca_entity_control()
900 ret = find_sdca_control_value(dev, entity, control_node, control, in find_sdca_entity_control()
904 entity->label, control->sel, ret); in find_sdca_entity_control()
908 control->has_fixed = true; in find_sdca_entity_control()
912 ret = find_sdca_control_value(dev, entity, control_node, control, in find_sdca_entity_control()
915 control->has_default = true; in find_sdca_entity_control()
917 ret = find_sdca_control_value(dev, entity, control_node, control, in find_sdca_entity_control()
920 control->has_fixed = true; in find_sdca_entity_control()
923 control->deferrable = fwnode_property_read_bool(control_node, in find_sdca_entity_control()
930 ret = find_sdca_control_range(dev, control_node, &control->range); in find_sdca_entity_control()
933 entity->label, control->sel, ret); in find_sdca_entity_control()
941 control->interrupt_position = tmp; in find_sdca_entity_control()
943 control->interrupt_position = SDCA_NO_INTERRUPT; in find_sdca_entity_control()
945 control->label = find_sdca_control_label(dev, entity, control); in find_sdca_entity_control()
946 if (!control->label) in find_sdca_entity_control()
949 control->type = find_sdca_control_datatype(entity, control); in find_sdca_entity_control()
950 control->nbits = find_sdca_control_bits(entity, control); in find_sdca_entity_control()
953 entity->label, control->label, control->sel, in find_sdca_entity_control()
954 control->mode, control->layers, control->cn_list, in find_sdca_entity_control()
955 control->interrupt_position, control->deferrable ? "deferrable" : ""); in find_sdca_entity_control()
1976 struct sdca_control *control = &entity->controls[i]; in sdca_selector_find_control() local
1978 if (control->sel == sel) in sdca_selector_find_control()
1979 return control; in sdca_selector_find_control()
1989 struct sdca_control *control, in sdca_control_find_range() argument
1992 struct sdca_control_range *range = &control->range; in sdca_control_find_range()
1997 entity->label, control->sel, range->cols, range->rows); in sdca_control_find_range()
2009 struct sdca_control *control; in sdca_selector_find_range() local
2011 control = sdca_selector_find_control(dev, entity, sel); in sdca_selector_find_range()
2012 if (!control) in sdca_selector_find_range()
2015 return sdca_control_find_range(dev, entity, control, cols, rows); in sdca_selector_find_range()