Messages in this thread | | | Date | Fri, 10 Feb 2017 16:33:40 +0100 | From | Joerg Roedel <> | Subject | Re: [PATCH 08/11] iommu/msm: Make use of iommu_device_register interface |
| |
On Fri, Feb 10, 2017 at 02:35:39PM +0000, Robin Murphy wrote: > On 09/02/17 11:32, Joerg Roedel wrote: > > + ret = iommu_device_sysfs_add(&iommu->iommu, iommu->dev, NULL, > > + "msm-smmu.%pa", &ioaddr); > > + if (ret) { > > + pr_err("Could not add msm-smmu at %pa to sysfs\n", &ioaddr); > > + goto fail; > > + } > > Nit: there's a bit of inconsistency with printing errors between the > various drivers (for both _sysfs_add and _register). I reckon if we want > error messages we may as well just fold them into the helper functions.
Yeah, this could be unified too. For now I looked how verbose the driver was that I was going to change and added messages to be consistent inside the drivers.
> > > + > > + iommu_device_set_ops(&iommu->iommu, &msm_iommu_ops); > > + iommu_device_set_fwnode(&iommu->iommu, &pdev->dev.of_node->fwnode); > > + > > + ret = iommu_device_register(&iommu->iommu); > > + if (ret) { > > + pr_err("Could not register msm-smmu at %pa\n", &ioaddr); > > + goto fail; > > + } > > I think there's a corresponding unregister missing for > msm_iommu_remove() here (and similarly in the ARM SMMU drivers, looking > back). I know it's not strictly a problem at the moment, but I do now > have IOMMU-drivers-as-modules working on top of the probe deferral > series... ;)
Well, that there was an iommu_register_instance() without any unregistration interface at all makes me believe that unregistering iommus is not really implemented yet.
And in fact, the remove functions for msm and arm-smmu seem to only disable the hardware, but are not removing the corresponding data structures.
So I think we are fine from that side.
Joerg
| |