Lines Matching refs:uc

24 	struct uclass *uc;  in uclass_find()  local
33 list_for_each_entry(uc, &gd->uclass_root, sibling_node) { in uclass_find()
34 if (uc->uc_drv->id == key) in uclass_find()
35 return uc; in uclass_find()
53 struct uclass *uc; in uclass_add() local
68 uc = calloc(1, sizeof(*uc)); in uclass_add()
69 if (!uc) in uclass_add()
72 uc->priv = calloc(1, uc_drv->priv_auto_alloc_size); in uclass_add()
73 if (!uc->priv) { in uclass_add()
78 uc->uc_drv = uc_drv; in uclass_add()
79 INIT_LIST_HEAD(&uc->sibling_node); in uclass_add()
80 INIT_LIST_HEAD(&uc->dev_head); in uclass_add()
81 list_add(&uc->sibling_node, &DM_UCLASS_ROOT_NON_CONST); in uclass_add()
84 ret = uc_drv->init(uc); in uclass_add()
89 *ucp = uc; in uclass_add()
94 free(uc->priv); in uclass_add()
95 uc->priv = NULL; in uclass_add()
97 list_del(&uc->sibling_node); in uclass_add()
99 free(uc); in uclass_add()
104 int uclass_destroy(struct uclass *uc) in uclass_destroy() argument
116 while (!list_empty(&uc->dev_head)) { in uclass_destroy()
117 dev = list_first_entry(&uc->dev_head, struct udevice, in uclass_destroy()
127 uc_drv = uc->uc_drv; in uclass_destroy()
129 uc_drv->destroy(uc); in uclass_destroy()
130 list_del(&uc->sibling_node); in uclass_destroy()
132 free(uc->priv); in uclass_destroy()
133 free(uc); in uclass_destroy()
140 struct uclass *uc; in uclass_get() local
143 uc = uclass_find(id); in uclass_get()
144 if (!uc) in uclass_get()
146 *ucp = uc; in uclass_get()
153 struct uclass *uc; in uclass_get_name() local
155 if (uclass_get(id, &uc)) in uclass_get_name()
157 return uc->uc_drv->name; in uclass_get_name()
177 struct uclass *uc = dev->uclass; in dev_get_uclass_index() local
180 if (list_empty(&uc->dev_head)) in dev_get_uclass_index()
183 uclass_foreach_dev(iter, uc) { in dev_get_uclass_index()
186 *ucp = uc; in dev_get_uclass_index()
197 struct uclass *uc; in uclass_find_device() local
202 ret = uclass_get(id, &uc); in uclass_find_device()
205 if (list_empty(&uc->dev_head)) in uclass_find_device()
208 uclass_foreach_dev(dev, uc) { in uclass_find_device()
220 struct uclass *uc; in uclass_find_first_device() local
224 ret = uclass_get(id, &uc); in uclass_find_first_device()
227 if (list_empty(&uc->dev_head)) in uclass_find_first_device()
230 *devp = list_first_entry(&uc->dev_head, struct udevice, uclass_node); in uclass_find_first_device()
251 struct uclass *uc; in uclass_find_device_by_name() local
258 ret = uclass_get(id, &uc); in uclass_find_device_by_name()
262 uclass_foreach_dev(dev, uc) { in uclass_find_device_by_name()
275 struct uclass *uc; in uclass_find_next_free_req_seq() local
280 ret = uclass_get(id, &uc); in uclass_find_next_free_req_seq()
284 list_for_each_entry(dev, &uc->dev_head, uclass_node) { in uclass_find_next_free_req_seq()
299 struct uclass *uc; in uclass_find_device_by_seq() local
307 ret = uclass_get(id, &uc); in uclass_find_device_by_seq()
311 uclass_foreach_dev(dev, uc) { in uclass_find_device_by_seq()
328 struct uclass *uc; in uclass_find_device_by_of_offset() local
335 ret = uclass_get(id, &uc); in uclass_find_device_by_of_offset()
339 uclass_foreach_dev(dev, uc) { in uclass_find_device_by_of_offset()
352 struct uclass *uc; in uclass_find_device_by_ofnode() local
360 ret = uclass_get(id, &uc); in uclass_find_device_by_ofnode()
364 uclass_foreach_dev(dev, uc) { in uclass_find_device_by_ofnode()
385 struct uclass *uc; in uclass_find_device_by_phandle() local
393 ret = uclass_get(id, &uc); in uclass_find_device_by_phandle()
397 uclass_foreach_dev(dev, uc) { in uclass_find_device_by_phandle()
417 struct uclass *uc; in uclass_get_device_by_driver() local
420 ret = uclass_get(id, &uc); in uclass_get_device_by_driver()
424 uclass_foreach_dev(dev, uc) { in uclass_get_device_by_driver()
516 struct uclass *uc; in uclass_get_device_by_phandle_id() local
520 ret = uclass_get(id, &uc); in uclass_get_device_by_phandle_id()
524 uclass_foreach_dev(dev, uc) { in uclass_get_device_by_phandle_id()
629 struct uclass *uc; in uclass_bind_device() local
632 uc = dev->uclass; in uclass_bind_device()
633 list_add_tail(&dev->uclass_node, &uc->dev_head); in uclass_bind_device()
656 struct uclass *uc; in uclass_unbind_device() local
659 uc = dev->uclass; in uclass_unbind_device()
660 if (uc->uc_drv->pre_unbind) { in uclass_unbind_device()
661 ret = uc->uc_drv->pre_unbind(dev); in uclass_unbind_device()
747 struct uclass *uc; in uclass_pre_remove_device() local
750 uc = dev->uclass; in uclass_pre_remove_device()
751 if (uc->uc_drv->pre_remove) { in uclass_pre_remove_device()
752 ret = uc->uc_drv->pre_remove(dev); in uclass_pre_remove_device()