Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca8a8fab authored by Keith Busch's avatar Keith Busch Committed by Bjorn Helgaas
Browse files

x86/PCI: VMD: Select device dma ops to override



VMD device doesn't usually have device archdata specific dma_ops, so we
need to override the default ops for VMD devices.

Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Acked-by Jon Derrick: <jonathan.derrick@intel.com>
parent af8c34ce
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -261,7 +261,7 @@ static struct device *to_vmd_dev(struct device *dev)

static struct dma_map_ops *vmd_dma_ops(struct device *dev)
{
	return to_vmd_dev(dev)->archdata.dma_ops;
	return get_dma_ops(to_vmd_dev(dev));
}

static void *vmd_alloc(struct device *dev, size_t size, dma_addr_t *addr,
@@ -367,7 +367,7 @@ static void vmd_teardown_dma_ops(struct vmd_dev *vmd)
{
	struct dma_domain *domain = &vmd->dma_domain;

	if (vmd->dev->dev.archdata.dma_ops)
	if (get_dma_ops(&vmd->dev->dev))
		del_dma_domain(domain);
}

@@ -379,7 +379,7 @@ static void vmd_teardown_dma_ops(struct vmd_dev *vmd)

static void vmd_setup_dma_ops(struct vmd_dev *vmd)
{
	const struct dma_map_ops *source = vmd->dev->dev.archdata.dma_ops;
	const struct dma_map_ops *source = get_dma_ops(&vmd->dev->dev);
	struct dma_map_ops *dest = &vmd->dma_ops;
	struct dma_domain *domain = &vmd->dma_domain;