Lines Matching refs:rproc
58 struct rproc *rproc = dev_get_drvdata(dev); in st_rproc_mbox_callback() local
60 if (rproc_vq_interrupt(rproc, msg) == IRQ_NONE) in st_rproc_mbox_callback()
76 static void st_rproc_kick(struct rproc *rproc, int vqid) in st_rproc_kick() argument
78 struct st_rproc *ddata = rproc->priv; in st_rproc_kick()
79 struct device *dev = rproc->dev.parent; in st_rproc_kick()
92 static int st_rproc_mem_alloc(struct rproc *rproc, in st_rproc_mem_alloc() argument
95 struct device *dev = rproc->dev.parent; in st_rproc_mem_alloc()
111 static int st_rproc_mem_release(struct rproc *rproc, in st_rproc_mem_release() argument
119 static int st_rproc_parse_fw(struct rproc *rproc, const struct firmware *fw) in st_rproc_parse_fw() argument
121 struct device *dev = rproc->dev.parent; in st_rproc_parse_fw()
159 rproc_add_carveout(rproc, mem); in st_rproc_parse_fw()
163 return rproc_elf_load_rsc_table(rproc, fw); in st_rproc_parse_fw()
166 static int st_rproc_start(struct rproc *rproc) in st_rproc_start() argument
168 struct st_rproc *ddata = rproc->priv; in st_rproc_start()
172 ddata->config->bootaddr_mask, rproc->bootaddr); in st_rproc_start()
176 dev_err(&rproc->dev, "Failed to enable clock\n"); in st_rproc_start()
183 dev_err(&rproc->dev, "Failed to deassert S/W Reset\n"); in st_rproc_start()
191 dev_err(&rproc->dev, "Failed to deassert Power Reset\n"); in st_rproc_start()
196 dev_info(&rproc->dev, "Started from 0x%llx\n", rproc->bootaddr); in st_rproc_start()
210 static int st_rproc_stop(struct rproc *rproc) in st_rproc_stop() argument
212 struct st_rproc *ddata = rproc->priv; in st_rproc_stop()
218 dev_err(&rproc->dev, "Failed to assert S/W Reset\n"); in st_rproc_stop()
224 dev_err(&rproc->dev, "Failed to assert Power Reset\n"); in st_rproc_stop()
248 struct rproc *rproc = platform_get_drvdata(pdev); in st_rproc_state() local
249 struct st_rproc *ddata = rproc->priv; in st_rproc_state()
286 struct rproc *rproc = platform_get_drvdata(pdev); in st_rproc_parse_dt() local
287 struct st_rproc *ddata = rproc->priv; in st_rproc_parse_dt()
347 struct rproc *rproc; in st_rproc_probe() local
358 rproc = rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata)); in st_rproc_probe()
359 if (!rproc) in st_rproc_probe()
362 rproc->has_iommu = false; in st_rproc_probe()
363 ddata = rproc->priv; in st_rproc_probe()
366 platform_set_drvdata(pdev, rproc); in st_rproc_probe()
379 atomic_inc(&rproc->power); in st_rproc_probe()
380 rproc->state = RPROC_RUNNING; in st_rproc_probe()
404 dev_err(&rproc->dev, "failed to request mbox chan 0\n"); in st_rproc_probe()
412 dev_err(&rproc->dev, "failed to request mbox chan 0\n"); in st_rproc_probe()
420 dev_err(&rproc->dev, "failed to request mbox chan 1\n"); in st_rproc_probe()
428 dev_err(&rproc->dev, "failed to request mbox chan 1\n"); in st_rproc_probe()
435 ret = rproc_add(rproc); in st_rproc_probe()
447 rproc_free(rproc); in st_rproc_probe()
453 struct rproc *rproc = platform_get_drvdata(pdev); in st_rproc_remove() local
454 struct st_rproc *ddata = rproc->priv; in st_rproc_remove()
457 rproc_del(rproc); in st_rproc_remove()
464 rproc_free(rproc); in st_rproc_remove()