char *fw_name = "scp.img";
int ret, i;
- rproc = rproc_alloc(dev,
- np->name,
- &scp_ops,
- fw_name,
- sizeof(*scp));
+ rproc = devm_rproc_alloc(dev, np->name, &scp_ops, fw_name, sizeof(*scp));
if (!rproc) {
dev_err(dev, "unable to allocate remoteproc\n");
return -ENOMEM;
scp->sram_base = devm_ioremap_resource(dev, res);
if (IS_ERR((__force void *)scp->sram_base)) {
dev_err(dev, "Failed to parse and map sram memory\n");
- ret = PTR_ERR((__force void *)scp->sram_base);
- goto free_rproc;
+ return PTR_ERR((__force void *)scp->sram_base);
}
scp->sram_size = resource_size(res);
scp->sram_phys = res->start;
ret = PTR_ERR((__force void *)scp->l1tcm_base);
if (ret != -EINVAL) {
dev_err(dev, "Failed to map l1tcm memory\n");
- goto free_rproc;
+ return ret;
}
} else {
scp->l1tcm_size = resource_size(res);
for (i = 0; i < SCP_IPI_MAX; i++)
mutex_destroy(&scp->ipi_desc[i].lock);
mutex_destroy(&scp->send_lock);
-free_rproc:
- rproc_free(rproc);
return ret;
}