Lines Matching defs:bank

640 static bool gpio_sim_bank_has_label(struct gpio_sim_bank *bank)
642 return bank->label && *bank->label;
646 gpio_sim_bank_get_device(struct gpio_sim_bank *bank)
648 return bank->parent;
676 struct gpio_sim_bank *bank = line->parent;
678 return gpio_sim_bank_get_device(bank);
748 static unsigned int gpio_sim_get_line_names_size(struct gpio_sim_bank *bank)
753 list_for_each_entry(line, &bank->line_list, siblings) {
754 if (!line->name || (line->offset >= bank->num_lines))
764 gpio_sim_set_line_names(struct gpio_sim_bank *bank, char **line_names)
768 list_for_each_entry(line, &bank->line_list, siblings) {
769 if (!line->name || (line->offset >= bank->num_lines))
797 struct gpio_sim_bank *bank;
801 list_for_each_entry(bank, &dev->bank_list, siblings) {
802 list_for_each_entry(line, &bank->line_list, siblings) {
803 if (line->offset >= bank->num_lines)
819 list_for_each_entry(bank, &dev->bank_list, siblings) {
820 list_for_each_entry(line, &bank->line_list, siblings) {
821 if (line->offset >= bank->num_lines)
834 if (gpio_sim_bank_has_label(bank))
835 hog->chip_label = kstrdup(bank->label,
841 bank->swnode);
873 gpio_sim_make_bank_swnode(struct gpio_sim_bank *bank,
882 properties[prop_idx++] = PROPERTY_ENTRY_U32("ngpios", bank->num_lines);
884 if (gpio_sim_bank_has_label(bank))
886 bank->label);
888 line_names_size = gpio_sim_get_line_names_size(bank);
895 gpio_sim_set_line_names(bank, line_names);
937 struct gpio_sim_bank *bank;
959 list_for_each_entry(bank, &dev->bank_list, siblings) {
960 bank->swnode = gpio_sim_make_bank_swnode(bank, swnode);
961 if (IS_ERR(bank->swnode)) {
962 ret = PTR_ERR(bank->swnode);
1073 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1074 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1075 struct gpio_sim_chip_name_ctx ctx = { bank->swnode, page };
1091 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1092 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1096 return sprintf(page, "%s\n", bank->label ?: "");
1102 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1103 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1115 kfree(bank->label);
1116 bank->label = trimmed;
1126 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1127 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1131 return sprintf(page, "%u\n", bank->num_lines);
1138 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1139 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1155 bank->num_lines = num_lines;
1390 struct gpio_sim_bank *bank = to_gpio_sim_bank(&group->cg_item);
1391 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1412 line->parent = bank;
1414 list_add_tail(&line->siblings, &bank->line_list);
1421 struct gpio_sim_bank *bank = to_gpio_sim_bank(item);
1422 struct gpio_sim_device *dev = gpio_sim_bank_get_device(bank);
1425 list_del(&bank->siblings);
1427 kfree(bank->label);
1428 kfree(bank);
1451 struct gpio_sim_bank *bank;
1458 bank = kzalloc(sizeof(*bank), GFP_KERNEL);
1459 if (!bank)
1462 config_group_init_type_name(&bank->group, name,
1464 bank->num_lines = 1;
1465 bank->parent = dev;
1466 INIT_LIST_HEAD(&bank->line_list);
1467 list_add_tail(&bank->siblings, &dev->bank_list);
1469 return &bank->group;