Merge tag 'tegra-for-4.8-i2c' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra...
[cascardo/linux.git] / drivers / remoteproc / remoteproc_virtio.c
index cc91556..01870a1 100644 (file)
@@ -69,7 +69,7 @@ irqreturn_t rproc_vq_interrupt(struct rproc *rproc, int notifyid)
 EXPORT_SYMBOL(rproc_vq_interrupt);
 
 static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
-                                   unsigned id,
+                                   unsigned int id,
                                    void (*callback)(struct virtqueue *vq),
                                    const char *name)
 {
@@ -101,14 +101,14 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev,
        memset(addr, 0, size);
 
        dev_dbg(dev, "vring%d: va %p qsz %d notifyid %d\n",
-                                       id, addr, len, rvring->notifyid);
+               id, addr, len, rvring->notifyid);
 
        /*
         * Create the new vq, and tell virtio we're not interested in
         * the 'weak' smp barriers, since we're talking with a real device.
         */
        vq = vring_new_virtqueue(id, len, rvring->align, vdev, false, addr,
-                                       rproc_virtio_notify, callback, name);
+                                rproc_virtio_notify, callback, name);
        if (!vq) {
                dev_err(dev, "vring_new_virtqueue %s failed\n", name);
                rproc_free_vring(rvring);
@@ -136,20 +136,14 @@ static void __rproc_virtio_del_vqs(struct virtio_device *vdev)
 
 static void rproc_virtio_del_vqs(struct virtio_device *vdev)
 {
-       struct rproc *rproc = vdev_to_rproc(vdev);
-
-       /* power down the remote processor before deleting vqs */
-       rproc_shutdown(rproc);
-
        __rproc_virtio_del_vqs(vdev);
 }
 
-static int rproc_virtio_find_vqs(struct virtio_device *vdev, unsigned nvqs,
-                      struct virtqueue *vqs[],
-                      vq_callback_t *callbacks[],
-                      const char * const names[])
+static int rproc_virtio_find_vqs(struct virtio_device *vdev, unsigned int nvqs,
+                                struct virtqueue *vqs[],
+                                vq_callback_t *callbacks[],
+                                const char * const names[])
 {
-       struct rproc *rproc = vdev_to_rproc(vdev);
        int i, ret;
 
        for (i = 0; i < nvqs; ++i) {
@@ -160,13 +154,6 @@ static int rproc_virtio_find_vqs(struct virtio_device *vdev, unsigned nvqs,
                }
        }
 
-       /* now that the vqs are all set, boot the remote processor */
-       ret = rproc_boot_nowait(rproc);
-       if (ret) {
-               dev_err(&rproc->dev, "rproc_boot() failed %d\n", ret);
-               goto error;
-       }
-
        return 0;
 
 error:
@@ -239,8 +226,8 @@ static int rproc_virtio_finalize_features(struct virtio_device *vdev)
        return 0;
 }
 
-static void rproc_virtio_get(struct virtio_device *vdev, unsigned offset,
-                                                       void *buf, unsigned len)
+static void rproc_virtio_get(struct virtio_device *vdev, unsigned int offset,
+                            void *buf, unsigned int len)
 {
        struct rproc_vdev *rvdev = vdev_to_rvdev(vdev);
        struct fw_rsc_vdev *rsc;
@@ -257,8 +244,8 @@ static void rproc_virtio_get(struct virtio_device *vdev, unsigned offset,
        memcpy(buf, cfg + offset, len);
 }
 
-static void rproc_virtio_set(struct virtio_device *vdev, unsigned offset,
-                     const void *buf, unsigned len)
+static void rproc_virtio_set(struct virtio_device *vdev, unsigned int offset,
+                            const void *buf, unsigned int len)
 {
        struct rproc_vdev *rvdev = vdev_to_rvdev(vdev);
        struct fw_rsc_vdev *rsc;