Lines Matching refs:prv

130 	struct dt_driver_provider *prv = NULL;  in dt_driver_register_provider()  local
150 prv = calloc(1, sizeof(*prv)); in dt_driver_register_provider()
151 if (!prv) in dt_driver_register_provider()
154 prv->nodeoffset = nodeoffset; in dt_driver_register_provider()
155 prv->type = type; in dt_driver_register_provider()
156 prv->provider_cells = provider_cells; in dt_driver_register_provider()
157 prv->phandle = phandle; in dt_driver_register_provider()
158 prv->get_of_device = get_of_device; in dt_driver_register_provider()
159 prv->priv_data = priv; in dt_driver_register_provider()
161 SLIST_INSERT_HEAD(&dt_driver_provider_list, prv, link); in dt_driver_register_provider()
224 unsigned int dt_driver_provider_cells(struct dt_driver_provider *prv) in dt_driver_provider_cells() argument
226 return prv->provider_cells; in dt_driver_provider_cells()
229 void *dt_driver_provider_priv_data(struct dt_driver_provider *prv) in dt_driver_provider_priv_data() argument
231 return prv->priv_data; in dt_driver_provider_priv_data()
237 struct dt_driver_provider *prv = NULL; in dt_driver_get_provider_by_node() local
239 SLIST_FOREACH(prv, &dt_driver_provider_list, link) in dt_driver_get_provider_by_node()
240 if (prv->nodeoffset == nodeoffset && prv->type == type) in dt_driver_get_provider_by_node()
241 return prv; in dt_driver_get_provider_by_node()
249 struct dt_driver_provider *prv = NULL; in dt_driver_get_provider_by_phandle() local
251 SLIST_FOREACH(prv, &dt_driver_provider_list, link) in dt_driver_get_provider_by_phandle()
252 if (prv->phandle == phandle && prv->type == type) in dt_driver_get_provider_by_phandle()
253 return prv; in dt_driver_get_provider_by_phandle()
258 static TEE_Result device_from_provider_prop(struct dt_driver_provider *prv, in device_from_provider_prop() argument
267 pargs = calloc(1, prv->provider_cells * sizeof(uint32_t *) + in device_from_provider_prop()
274 pargs->args_count = prv->provider_cells; in device_from_provider_prop()
276 for (n = 0; n < prv->provider_cells; n++) { in device_from_provider_prop()
281 res = prv->get_of_device(pargs, prv->priv_data, device_ref); in device_from_provider_prop()
293 struct dt_driver_provider *prv = NULL; in dt_driver_device_from_parent() local
301 prv = dt_driver_get_provider_by_node(parent, type); in dt_driver_device_from_parent()
302 if (!prv) { in dt_driver_device_from_parent()
307 return device_from_provider_prop(prv, fdt, parent, NULL, device_ref, in dt_driver_device_from_parent()
322 struct dt_driver_provider *prv = NULL; in dt_driver_device_from_node_idx_prop_phandle() local
336 prv = dt_driver_get_provider_by_phandle(phandle, type); in dt_driver_device_from_node_idx_prop_phandle()
337 if (!prv) in dt_driver_device_from_node_idx_prop_phandle()
340 prop_index *= dt_driver_provider_cells(prv); in dt_driver_device_from_node_idx_prop_phandle()
346 return device_from_provider_prop(prv, fdt, phandle_node, in dt_driver_device_from_node_idx_prop_phandle()
365 struct dt_driver_provider *prv = NULL; in dt_driver_device_from_node_idx_prop() local
400 prv = dt_driver_get_provider_by_node(nodeoffset, type); in dt_driver_device_from_node_idx_prop()
402 prv = dt_driver_get_provider_by_phandle(phandle, type); in dt_driver_device_from_node_idx_prop()
403 if (prv) in dt_driver_device_from_node_idx_prop()
404 phandle_node = prv->nodeoffset; in dt_driver_device_from_node_idx_prop()
407 if (prv) { in dt_driver_device_from_node_idx_prop()
408 prv_cells = dt_driver_provider_cells(prv); in dt_driver_device_from_node_idx_prop()
439 if (!prv) in dt_driver_device_from_node_idx_prop()
445 return device_from_provider_prop(prv, fdt, phandle_node, in dt_driver_device_from_node_idx_prop()