Lines Matching refs:dr

41 static void set_node_dbginfo(struct devres *dr, const char *name, size_t size)  in set_node_dbginfo()  argument
43 dr->name = name; in set_node_dbginfo()
44 dr->size = size; in set_node_dbginfo()
47 static void devres_log(struct udevice *dev, struct devres *dr, in devres_log() argument
51 dev->name, op, dr, dr->name, (unsigned long)dr->size); in devres_log()
54 #define set_node_dbginfo(dr, n, s) do {} while (0) argument
55 #define devres_log(dev, dr, op) do {} while (0) argument
66 struct devres *dr; in __devres_alloc() local
68 dr = kmalloc(tot_size, gfp); in __devres_alloc()
69 if (unlikely(!dr)) in __devres_alloc()
72 INIT_LIST_HEAD(&dr->entry); in __devres_alloc()
73 dr->release = release; in __devres_alloc()
74 set_node_dbginfo(dr, name, size); in __devres_alloc()
76 return dr->data; in __devres_alloc()
82 struct devres *dr = container_of(res, struct devres, data); in devres_free() local
84 BUG_ON(!list_empty(&dr->entry)); in devres_free()
85 kfree(dr); in devres_free()
91 struct devres *dr = container_of(res, struct devres, data); in devres_add() local
93 devres_log(dev, dr, "ADD"); in devres_add()
94 BUG_ON(!list_empty(&dr->entry)); in devres_add()
95 dr->probe = dev->flags & DM_FLAG_BOUND ? true : false; in devres_add()
96 list_add_tail(&dr->entry, &dev->devres_head); in devres_add()
102 struct devres *dr; in devres_find() local
104 list_for_each_entry_reverse(dr, &dev->devres_head, entry) { in devres_find()
105 if (dr->release != release) in devres_find()
107 if (match && !match(dev, dr->data, match_data)) in devres_find()
109 return dr->data; in devres_find()
139 struct devres *dr = container_of(res, struct devres, data); in devres_remove() local
141 list_del_init(&dr->entry); in devres_remove()
142 devres_log(dev, dr, "REM"); in devres_remove()
178 struct devres *dr, *tmp; in release_nodes() local
180 list_for_each_entry_safe_reverse(dr, tmp, head, entry) { in release_nodes()
181 if (probe_only && !dr->probe) in release_nodes()
183 devres_log(dev, dr, "REL"); in release_nodes()
184 dr->release(dev, dr->data); in release_nodes()
185 list_del(&dr->entry); in release_nodes()
186 kfree(dr); in release_nodes()
203 struct devres *dr; in dump_resources() local
208 list_for_each_entry(dr, &dev->devres_head, entry) in dump_resources()
209 printf(" %p (%lu byte) %s %s\n", dr, in dump_resources()
210 (unsigned long)dr->size, dr->name, in dump_resources()
211 dr->probe ? "PROBE" : "BIND"); in dump_resources()