]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/remoteproc/remoteproc_core.c
remoteproc: stm32: fix probe error case
[linux.git] / drivers / remoteproc / remoteproc_core.c
index 3c5fbbbfb0f17c6104589a9fcace6aab00c88db7..307df98347ba24188d196e11f4cc29f3e7667202 100644 (file)
@@ -44,8 +44,6 @@
 static DEFINE_MUTEX(rproc_list_mutex);
 static LIST_HEAD(rproc_list);
 
-typedef int (*rproc_handle_resources_t)(struct rproc *rproc,
-                               struct resource_table *table, int len);
 typedef int (*rproc_handle_resource_t)(struct rproc *rproc,
                                 void *, int offset, int avail);
 
@@ -336,7 +334,8 @@ int rproc_alloc_vring(struct rproc_vdev *rvdev, int i)
                        return -ENOMEM;
        } else {
                /* Register carveout in in list */
-               mem = rproc_mem_entry_init(dev, 0, 0, size, rsc->vring[i].da,
+               mem = rproc_mem_entry_init(dev, NULL, 0,
+                                          size, rsc->vring[i].da,
                                           rproc_alloc_carveout,
                                           rproc_release_carveout,
                                           "vdev%dvring%d",
@@ -400,7 +399,7 @@ rproc_parse_vring(struct rproc_vdev *rvdev, struct fw_rsc_vdev *rsc, int i)
 void rproc_free_vring(struct rproc_vring *rvring)
 {
        struct rproc *rproc = rvring->rvdev->rproc;
-       int idx = rvring->rvdev->vring - rvring;
+       int idx = rvring - rvring->rvdev->vring;
        struct fw_rsc_vdev *rsc;
 
        idr_remove(&rproc->notifyids, rvring->notifyid);
@@ -913,7 +912,7 @@ static int rproc_handle_carveout(struct rproc *rproc,
        }
 
        /* Register carveout in in list */
-       carveout = rproc_mem_entry_init(dev, 0, 0, rsc->len, rsc->da,
+       carveout = rproc_mem_entry_init(dev, NULL, 0, rsc->len, rsc->da,
                                        rproc_alloc_carveout,
                                        rproc_release_carveout, rsc->name);
        if (!carveout) {