On Fri 27 Jul 06:14 PDT 2018, Loic Pallardy wrote: > int rproc_fw_sanity_check(struct rproc *rproc, const struct firmware *fw) > diff --git a/drivers/remoteproc/remoteproc_virtio.c b/drivers/remoteproc/remoteproc_virtio.c [..] > @@ -114,6 +122,10 @@ static struct virtqueue *rp_find_vq(struct virtio_device *vdev, > rvring->vq = vq; > vq->priv = rvring; > > + /* Update vring in resource table */ > + rsc = (void *)rproc->table_ptr + rvdev->rsc_offset; > + rsc->vring[id].da = mem->da; > + This would now happen after we've started the remoteproc. Don't we need to do this in-between allocating the carveouts and booting the remoteproc? Regards, Bjorn