Lines Matching refs:hog

606 	struct gpio_sim_hog *hog;  member
637 static struct gpio_sim_device *gpio_sim_hog_get_device(struct gpio_sim_hog *hog) in gpio_sim_hog_get_device() argument
639 struct gpio_sim_line *line = hog->parent; in gpio_sim_hog_get_device()
719 struct gpiod_hog *hog; in gpio_sim_remove_hogs() local
726 for (hog = dev->hogs; hog->chip_label; hog++) { in gpio_sim_remove_hogs()
727 kfree(hog->chip_label); in gpio_sim_remove_hogs()
728 kfree(hog->line_name); in gpio_sim_remove_hogs()
740 struct gpiod_hog *hog; in gpio_sim_add_hogs() local
747 if (line->hog) in gpio_sim_add_hogs()
765 if (!line->hog) in gpio_sim_add_hogs()
768 hog = &dev->hogs[idx++]; in gpio_sim_add_hogs()
776 hog->chip_label = kstrdup(bank->label, in gpio_sim_add_hogs()
779 hog->chip_label = kasprintf(GFP_KERNEL, in gpio_sim_add_hogs()
783 if (!hog->chip_label) { in gpio_sim_add_hogs()
794 if (line->hog->name) { in gpio_sim_add_hogs()
795 hog->line_name = kstrdup(line->hog->name, in gpio_sim_add_hogs()
797 if (!hog->line_name) { in gpio_sim_add_hogs()
803 hog->chip_hwnum = line->offset; in gpio_sim_add_hogs()
804 hog->dflags = line->hog->dir; in gpio_sim_add_hogs()
1149 struct gpio_sim_hog *hog = to_gpio_sim_hog(item); in gpio_sim_hog_config_name_show() local
1150 struct gpio_sim_device *dev = gpio_sim_hog_get_device(hog); in gpio_sim_hog_config_name_show()
1154 return sprintf(page, "%s\n", hog->name ?: ""); in gpio_sim_hog_config_name_show()
1160 struct gpio_sim_hog *hog = to_gpio_sim_hog(item); in gpio_sim_hog_config_name_store() local
1161 struct gpio_sim_device *dev = gpio_sim_hog_get_device(hog); in gpio_sim_hog_config_name_store()
1173 kfree(hog->name); in gpio_sim_hog_config_name_store()
1174 hog->name = trimmed; in gpio_sim_hog_config_name_store()
1184 struct gpio_sim_hog *hog = to_gpio_sim_hog(item); in gpio_sim_hog_config_direction_show() local
1185 struct gpio_sim_device *dev = gpio_sim_hog_get_device(hog); in gpio_sim_hog_config_direction_show()
1190 dir = hog->dir; in gpio_sim_hog_config_direction_show()
1215 struct gpio_sim_hog *hog = to_gpio_sim_hog(item); in gpio_sim_hog_config_direction_store() local
1216 struct gpio_sim_device *dev = gpio_sim_hog_get_device(hog); in gpio_sim_hog_config_direction_store()
1233 hog->dir = dir; in gpio_sim_hog_config_direction_store()
1248 struct gpio_sim_hog *hog = to_gpio_sim_hog(item); in gpio_sim_hog_config_item_release() local
1249 struct gpio_sim_line *line = hog->parent; in gpio_sim_hog_config_item_release()
1250 struct gpio_sim_device *dev = gpio_sim_hog_get_device(hog); in gpio_sim_hog_config_item_release()
1253 line->hog = NULL; in gpio_sim_hog_config_item_release()
1255 kfree(hog->name); in gpio_sim_hog_config_item_release()
1256 kfree(hog); in gpio_sim_hog_config_item_release()
1274 struct gpio_sim_hog *hog; in gpio_sim_line_config_make_hog_item() local
1281 hog = kzalloc(sizeof(*hog), GFP_KERNEL); in gpio_sim_line_config_make_hog_item()
1282 if (!hog) in gpio_sim_line_config_make_hog_item()
1285 config_item_init_type_name(&hog->item, name, in gpio_sim_line_config_make_hog_item()
1288 hog->dir = GPIOD_IN; in gpio_sim_line_config_make_hog_item()
1289 hog->name = NULL; in gpio_sim_line_config_make_hog_item()
1290 hog->parent = line; in gpio_sim_line_config_make_hog_item()
1291 line->hog = hog; in gpio_sim_line_config_make_hog_item()
1293 return &hog->item; in gpio_sim_line_config_make_hog_item()