Messages in this thread | | | Date | Thu, 7 Jan 2016 13:06:59 +0100 | From | Joerg Roedel <> | Subject | Re: [PATCH 6/6] iommu/amd: Manage iommu_group for non-pci devices |
| |
On Tue, Jan 05, 2016 at 05:07:24AM -0500, Wan Zongshun wrote: > +static struct iommu_group *amd_iommu_device_group(struct device *dev) > +{ > + if (dev_is_pci(dev)) > + return pci_device_group(dev); > + > + return acpihid_device_group(dev); > +} > + > /***************************************************************************** > * > * The next functions belong to the dma_ops mapping/unmapping code. > @@ -3202,7 +3233,7 @@ static const struct iommu_ops amd_iommu_ops = { > .iova_to_phys = amd_iommu_iova_to_phys, > .add_device = amd_iommu_add_device, > .remove_device = amd_iommu_remove_device, > - .device_group = pci_device_group, > + .device_group = amd_iommu_device_group,
Does this work? Which bus do the ACPIHID devices belong to (what does dev->bus point to)? If it is not &pci_bus_type, then the iommu core code will not create an iommu group for the devices.
Joerg
| |