Lines Matching refs:mdev
37 static int mic_sync_dma(struct mic_device *mdev, dma_addr_t dst, in mic_sync_dma() argument
42 struct dma_chan *mic_ch = mdev->dma_ch[0]; in mic_sync_dma()
64 dev_err(&mdev->pdev->dev, "%s %d err %d\n", in mic_sync_dma()
79 struct mic_device *mdev = mvdev->mdev; in mic_virtio_copy_to_user() local
80 void __iomem *dbuf = mdev->aper.va + daddr; in mic_virtio_copy_to_user()
82 size_t dma_alignment = 1 << mdev->dma_ch[0]->device->copy_align; in mic_virtio_copy_to_user()
94 err = mic_sync_dma(mdev, mvr->buf_da, daddr, in mic_virtio_copy_to_user()
128 struct mic_device *mdev = mvdev->mdev; in mic_virtio_copy_from_user() local
129 void __iomem *dbuf = mdev->aper.va + daddr; in mic_virtio_copy_from_user()
131 size_t dma_alignment = 1 << mdev->dma_ch[0]->device->copy_align; in mic_virtio_copy_from_user()
150 err = mic_sync_dma(mdev, daddr, mvr->buf_da, in mic_virtio_copy_from_user()
187 mvdev->mdev->ops->send_intr(mvdev->mdev, db); in mic_notify()
396 (void __force *)mvdev->mdev->aper.va + in mic_virtio_init_post()
437 void mic_virtio_reset_devices(struct mic_device *mdev) in mic_virtio_reset_devices() argument
442 dev_dbg(&mdev->pdev->dev, "%s\n", __func__); in mic_virtio_reset_devices()
444 list_for_each_safe(pos, tmp, &mdev->vdev_list) { in mic_virtio_reset_devices()
470 struct mic_device *mdev = mvdev->mdev; in mic_virtio_intr_handler() local
472 mdev->ops->intr_workarounds(mdev); in mic_virtio_intr_handler()
482 struct mic_bootparam *bootparam = mvdev->mdev->dp; in mic_virtio_config_change()
485 mutex_lock(&mvdev->mdev->mic_mutex); in mic_virtio_config_change()
502 mvdev->mdev->ops->send_intr(mvdev->mdev, db); in mic_virtio_config_change()
518 mutex_unlock(&mvdev->mdev->mic_mutex); in mic_virtio_config_change()
527 struct mic_device *mdev = mvdev->mdev; in mic_copy_dp_entry() local
573 devp = mdev->dp + i; in mic_copy_dp_entry()
619 struct mic_device *mdev = mvdev->mdev; in mic_virtio_add_device() local
626 struct mic_bootparam *bootparam = mdev->dp; in mic_virtio_add_device()
630 mutex_lock(&mdev->mic_mutex); in mic_virtio_add_device()
634 mutex_unlock(&mdev->mic_mutex); in mic_virtio_add_device()
664 vr_addr = mic_map_single(mdev, vr->va, vr_size); in mic_virtio_add_device()
688 dev_dbg(&mdev->pdev->dev, in mic_virtio_add_device()
693 mvr->buf_da = mic_map_single(mvdev->mdev, mvr->buf, in mic_virtio_add_device()
697 snprintf(irqname, sizeof(irqname), "mic%dvirtio%d", mdev->id, in mic_virtio_add_device()
699 mvdev->virtio_db = mic_next_db(mdev); in mic_virtio_add_device()
700 mvdev->virtio_cookie = mic_request_threaded_irq(mdev, in mic_virtio_add_device()
706 dev_dbg(&mdev->pdev->dev, "request irq failed\n"); in mic_virtio_add_device()
712 list_add_tail(&mvdev->list, &mdev->vdev_list); in mic_virtio_add_device()
722 dev_dbg(&mdev->pdev->dev, "Added virtio device id %d\n", dd->type); in mic_virtio_add_device()
726 mdev->ops->send_intr(mdev, db); in mic_virtio_add_device()
727 mutex_unlock(&mdev->mic_mutex); in mic_virtio_add_device()
733 mic_unmap_single(mdev, le64_to_cpu(vqconfig[j].address), in mic_virtio_add_device()
738 mutex_unlock(&mdev->mic_mutex); in mic_virtio_add_device()
746 struct mic_device *mdev = mvdev->mdev; in mic_virtio_del_device() local
750 struct mic_bootparam *bootparam = mdev->dp; in mic_virtio_del_device()
753 mutex_lock(&mdev->mic_mutex); in mic_virtio_del_device()
757 dev_dbg(&mdev->pdev->dev, in mic_virtio_del_device()
760 mdev->ops->send_intr(mdev, db); in mic_virtio_del_device()
767 dev_dbg(&mdev->pdev->dev, in mic_virtio_del_device()
774 mic_free_irq(mdev, mvdev->virtio_cookie, mvdev); in mic_virtio_del_device()
780 mic_unmap_single(mvdev->mdev, mvr->buf_da, in mic_virtio_del_device()
786 mic_unmap_single(mdev, le64_to_cpu(vqconfig[i].address), in mic_virtio_del_device()
792 list_for_each_safe(pos, tmp, &mdev->vdev_list) { in mic_virtio_del_device()
796 dev_dbg(&mdev->pdev->dev, in mic_virtio_del_device()
810 mutex_unlock(&mdev->mic_mutex); in mic_virtio_del_device()