Commit ea4f6400 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Greg Kroah-Hartman

IOMMU: Make dwo drivers use stateless device links

The device links used by rockchip-iommu and exynos-iommu are
completely managed by these drivers within the IOMMU framework,
so there is no reason to involve the driver core in the management
of these links.

For this reason, make rockchip-iommu and exynos-iommu pass
DL_FLAG_STATELESS in flags to device_link_add(), so that the device
links used by them are stateless.

[Note that this change is requisite for a subsequent one that will
 rework the management of stateful device links in the driver core
 and it will not be compatible with the two drivers in question any
 more.]
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Acked-by: default avatarJoerg Roedel <jroedel@suse.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a1fdbfbb
...@@ -1260,6 +1260,7 @@ static int exynos_iommu_add_device(struct device *dev) ...@@ -1260,6 +1260,7 @@ static int exynos_iommu_add_device(struct device *dev)
* direct calls to pm_runtime_get/put in this driver. * direct calls to pm_runtime_get/put in this driver.
*/ */
data->link = device_link_add(dev, data->sysmmu, data->link = device_link_add(dev, data->sysmmu,
DL_FLAG_STATELESS |
DL_FLAG_PM_RUNTIME); DL_FLAG_PM_RUNTIME);
} }
iommu_group_put(group); iommu_group_put(group);
......
...@@ -1071,7 +1071,8 @@ static int rk_iommu_add_device(struct device *dev) ...@@ -1071,7 +1071,8 @@ static int rk_iommu_add_device(struct device *dev)
iommu_group_put(group); iommu_group_put(group);
iommu_device_link(&iommu->iommu, dev); iommu_device_link(&iommu->iommu, dev);
data->link = device_link_add(dev, iommu->dev, DL_FLAG_PM_RUNTIME); data->link = device_link_add(dev, iommu->dev,
DL_FLAG_STATELESS | DL_FLAG_PM_RUNTIME);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment