Lines Matching refs:vpmem
18 static int init_vq(struct virtio_pmem *vpmem) in init_vq() argument
21 vpmem->req_vq = virtio_find_single_vq(vpmem->vdev, in init_vq()
23 if (IS_ERR(vpmem->req_vq)) in init_vq()
24 return PTR_ERR(vpmem->req_vq); in init_vq()
26 spin_lock_init(&vpmem->pmem_lock); in init_vq()
27 INIT_LIST_HEAD(&vpmem->req_list); in init_vq()
37 struct virtio_pmem *vpmem; in virtio_pmem_probe() local
47 vpmem = devm_kzalloc(&vdev->dev, sizeof(*vpmem), GFP_KERNEL); in virtio_pmem_probe()
48 if (!vpmem) { in virtio_pmem_probe()
53 vpmem->vdev = vdev; in virtio_pmem_probe()
54 vdev->priv = vpmem; in virtio_pmem_probe()
55 err = init_vq(vpmem); in virtio_pmem_probe()
61 virtio_cread_le(vpmem->vdev, struct virtio_pmem_config, in virtio_pmem_probe()
62 start, &vpmem->start); in virtio_pmem_probe()
63 virtio_cread_le(vpmem->vdev, struct virtio_pmem_config, in virtio_pmem_probe()
64 size, &vpmem->size); in virtio_pmem_probe()
66 res.start = vpmem->start; in virtio_pmem_probe()
67 res.end = vpmem->start + vpmem->size - 1; in virtio_pmem_probe()
68 vpmem->nd_desc.provider_name = "virtio-pmem"; in virtio_pmem_probe()
69 vpmem->nd_desc.module = THIS_MODULE; in virtio_pmem_probe()
71 vpmem->nvdimm_bus = nvdimm_bus_register(&vdev->dev, in virtio_pmem_probe()
72 &vpmem->nd_desc); in virtio_pmem_probe()
73 if (!vpmem->nvdimm_bus) { in virtio_pmem_probe()
79 dev_set_drvdata(&vdev->dev, vpmem->nvdimm_bus); in virtio_pmem_probe()
93 nd_region = nvdimm_pmem_region_create(vpmem->nvdimm_bus, &ndr_desc); in virtio_pmem_probe()
102 nvdimm_bus_unregister(vpmem->nvdimm_bus); in virtio_pmem_probe()