Lines Matching refs:grp
421 struct devres_group *grp; in remove_nodes() local
426 grp = node_to_group(node); in remove_nodes()
427 if (grp) { in remove_nodes()
429 grp->color = 0; in remove_nodes()
452 struct devres_group *grp; in remove_nodes() local
457 grp = node_to_group(node); in remove_nodes()
458 BUG_ON(!grp || list_empty(&grp->node[0].entry)); in remove_nodes()
460 grp->color++; in remove_nodes()
461 if (list_empty(&grp->node[1].entry)) in remove_nodes()
462 grp->color++; in remove_nodes()
464 BUG_ON(grp->color <= 0 || grp->color > 2); in remove_nodes()
465 if (grp->color == 2) { in remove_nodes()
469 list_move_tail(&grp->node[0].entry, todo); in remove_nodes()
470 list_del_init(&grp->node[1].entry); in remove_nodes()
535 struct devres_group *grp; in devres_open_group() local
538 grp = kmalloc(sizeof(*grp), gfp); in devres_open_group()
539 if (unlikely(!grp)) in devres_open_group()
542 grp->node[0].release = &group_open_release; in devres_open_group()
543 grp->node[1].release = &group_close_release; in devres_open_group()
544 INIT_LIST_HEAD(&grp->node[0].entry); in devres_open_group()
545 INIT_LIST_HEAD(&grp->node[1].entry); in devres_open_group()
546 set_node_dbginfo(&grp->node[0], "grp<", 0); in devres_open_group()
547 set_node_dbginfo(&grp->node[1], "grp>", 0); in devres_open_group()
548 grp->id = grp; in devres_open_group()
550 grp->id = id; in devres_open_group()
553 add_dr(dev, &grp->node[0]); in devres_open_group()
555 return grp->id; in devres_open_group()
565 struct devres_group *grp; in find_group() local
570 grp = container_of(node, struct devres_group, node[0]); in find_group()
573 if (grp->id == id) in find_group()
574 return grp; in find_group()
575 } else if (list_empty(&grp->node[1].entry)) in find_group()
576 return grp; in find_group()
592 struct devres_group *grp; in devres_close_group() local
597 grp = find_group(dev, id); in devres_close_group()
598 if (grp) in devres_close_group()
599 add_dr(dev, &grp->node[1]); in devres_close_group()
618 struct devres_group *grp; in devres_remove_group() local
623 grp = find_group(dev, id); in devres_remove_group()
624 if (grp) { in devres_remove_group()
625 list_del_init(&grp->node[0].entry); in devres_remove_group()
626 list_del_init(&grp->node[1].entry); in devres_remove_group()
627 devres_log(dev, &grp->node[0], "REM"); in devres_remove_group()
633 kfree(grp); in devres_remove_group()
651 struct devres_group *grp; in devres_release_group() local
657 grp = find_group(dev, id); in devres_release_group()
658 if (grp) { in devres_release_group()
659 struct list_head *first = &grp->node[0].entry; in devres_release_group()
662 if (!list_empty(&grp->node[1].entry)) in devres_release_group()
663 end = grp->node[1].entry.next; in devres_release_group()