Lines Matching refs:rproc

80 	struct rproc			*rproc;  member
262 static int imx_rproc_start(struct rproc *rproc) in imx_rproc_start() argument
264 struct imx_rproc *priv = rproc->priv; in imx_rproc_start()
289 static int imx_rproc_stop(struct rproc *rproc) in imx_rproc_stop() argument
291 struct imx_rproc *priv = rproc->priv; in imx_rproc_stop()
343 static void *imx_rproc_da_to_va(struct rproc *rproc, u64 da, size_t len, bool *is_iomem) in imx_rproc_da_to_va() argument
345 struct imx_rproc *priv = rproc->priv; in imx_rproc_da_to_va()
370 dev_dbg(&rproc->dev, "da = 0x%llx len = 0x%zx va = 0x%p\n", in imx_rproc_da_to_va()
376 static int imx_rproc_mem_alloc(struct rproc *rproc, in imx_rproc_mem_alloc() argument
379 struct device *dev = rproc->dev.parent; in imx_rproc_mem_alloc()
396 static int imx_rproc_mem_release(struct rproc *rproc, in imx_rproc_mem_release() argument
399 dev_dbg(rproc->dev.parent, "unmap memory: %pa\n", &mem->dma); in imx_rproc_mem_release()
405 static int imx_rproc_prepare(struct rproc *rproc) in imx_rproc_prepare() argument
407 struct imx_rproc *priv = rproc->priv; in imx_rproc_prepare()
439 rproc_coredump_add_segment(rproc, da, rmem->size); in imx_rproc_prepare()
443 rproc_add_carveout(rproc, mem); in imx_rproc_prepare()
449 static int imx_rproc_parse_fw(struct rproc *rproc, const struct firmware *fw) in imx_rproc_parse_fw() argument
453 ret = rproc_elf_load_rsc_table(rproc, fw); in imx_rproc_parse_fw()
455 dev_info(&rproc->dev, "No resource table in elf\n"); in imx_rproc_parse_fw()
460 static void imx_rproc_kick(struct rproc *rproc, int vqid) in imx_rproc_kick() argument
462 struct imx_rproc *priv = rproc->priv; in imx_rproc_kick()
483 static int imx_rproc_attach(struct rproc *rproc) in imx_rproc_attach() argument
488 static struct resource_table *imx_rproc_get_loaded_rsc_table(struct rproc *rproc, size_t *table_sz) in imx_rproc_get_loaded_rsc_table() argument
490 struct imx_rproc *priv = rproc->priv; in imx_rproc_get_loaded_rsc_table()
594 rproc_vq_interrupt(priv->rproc, 0); in imx_rproc_vq_work()
595 rproc_vq_interrupt(priv->rproc, 1); in imx_rproc_vq_work()
600 struct rproc *rproc = dev_get_drvdata(cl->dev); in imx_rproc_rx_callback() local
601 struct imx_rproc *priv = rproc->priv; in imx_rproc_rx_callback()
606 static int imx_rproc_xtr_mbox_init(struct rproc *rproc) in imx_rproc_xtr_mbox_init() argument
608 struct imx_rproc *priv = rproc->priv; in imx_rproc_xtr_mbox_init()
641 static void imx_rproc_free_mbox(struct rproc *rproc) in imx_rproc_free_mbox() argument
643 struct imx_rproc *priv = rproc->priv; in imx_rproc_free_mbox()
661 priv->rproc->state = RPROC_DETACHED; in imx_rproc_detect_mode()
666 priv->rproc->state = RPROC_DETACHED; in imx_rproc_detect_mode()
688 priv->rproc->state = RPROC_DETACHED; in imx_rproc_detect_mode()
727 struct rproc *rproc; in imx_rproc_probe() local
732 rproc = rproc_alloc(dev, "imx-rproc", &imx_rproc_ops, in imx_rproc_probe()
734 if (!rproc) in imx_rproc_probe()
743 priv = rproc->priv; in imx_rproc_probe()
744 priv->rproc = rproc; in imx_rproc_probe()
748 dev_set_drvdata(dev, rproc); in imx_rproc_probe()
756 ret = imx_rproc_xtr_mbox_init(rproc); in imx_rproc_probe()
776 if (rproc->state != RPROC_DETACHED) in imx_rproc_probe()
777 rproc->auto_boot = of_property_read_bool(np, "fsl,auto-boot"); in imx_rproc_probe()
779 ret = rproc_add(rproc); in imx_rproc_probe()
790 imx_rproc_free_mbox(rproc); in imx_rproc_probe()
794 rproc_free(rproc); in imx_rproc_probe()
801 struct rproc *rproc = platform_get_drvdata(pdev); in imx_rproc_remove() local
802 struct imx_rproc *priv = rproc->priv; in imx_rproc_remove()
805 rproc_del(rproc); in imx_rproc_remove()
806 imx_rproc_free_mbox(rproc); in imx_rproc_remove()
807 rproc_free(rproc); in imx_rproc_remove()