Lines Matching refs:grp
426 struct devres_group *grp; in remove_nodes() local
431 grp = node_to_group(node); in remove_nodes()
432 if (grp) { in remove_nodes()
434 grp->color = 0; in remove_nodes()
457 struct devres_group *grp; in remove_nodes() local
462 grp = node_to_group(node); in remove_nodes()
463 BUG_ON(!grp || list_empty(&grp->node[0].entry)); in remove_nodes()
465 grp->color++; in remove_nodes()
466 if (list_empty(&grp->node[1].entry)) in remove_nodes()
467 grp->color++; in remove_nodes()
469 BUG_ON(grp->color <= 0 || grp->color > 2); in remove_nodes()
470 if (grp->color == 2) { in remove_nodes()
474 list_move_tail(&grp->node[0].entry, todo); in remove_nodes()
475 list_del_init(&grp->node[1].entry); in remove_nodes()
540 struct devres_group *grp; in devres_open_group() local
543 grp = kmalloc(sizeof(*grp), gfp); in devres_open_group()
544 if (unlikely(!grp)) in devres_open_group()
547 grp->node[0].release = &group_open_release; in devres_open_group()
548 grp->node[1].release = &group_close_release; in devres_open_group()
549 INIT_LIST_HEAD(&grp->node[0].entry); in devres_open_group()
550 INIT_LIST_HEAD(&grp->node[1].entry); in devres_open_group()
551 set_node_dbginfo(&grp->node[0], "grp<", 0); in devres_open_group()
552 set_node_dbginfo(&grp->node[1], "grp>", 0); in devres_open_group()
553 grp->id = grp; in devres_open_group()
555 grp->id = id; in devres_open_group()
558 add_dr(dev, &grp->node[0]); in devres_open_group()
560 return grp->id; in devres_open_group()
570 struct devres_group *grp; in find_group() local
575 grp = container_of(node, struct devres_group, node[0]); in find_group()
578 if (grp->id == id) in find_group()
579 return grp; in find_group()
580 } else if (list_empty(&grp->node[1].entry)) in find_group()
581 return grp; in find_group()
597 struct devres_group *grp; in devres_close_group() local
602 grp = find_group(dev, id); in devres_close_group()
603 if (grp) in devres_close_group()
604 add_dr(dev, &grp->node[1]); in devres_close_group()
623 struct devres_group *grp; in devres_remove_group() local
628 grp = find_group(dev, id); in devres_remove_group()
629 if (grp) { in devres_remove_group()
630 list_del_init(&grp->node[0].entry); in devres_remove_group()
631 list_del_init(&grp->node[1].entry); in devres_remove_group()
632 devres_log(dev, &grp->node[0], "REM"); in devres_remove_group()
638 kfree(grp); in devres_remove_group()
656 struct devres_group *grp; in devres_release_group() local
662 grp = find_group(dev, id); in devres_release_group()
663 if (grp) { in devres_release_group()
664 struct list_head *first = &grp->node[0].entry; in devres_release_group()
667 if (!list_empty(&grp->node[1].entry)) in devres_release_group()
668 end = grp->node[1].entry.next; in devres_release_group()