aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorVasant Hegde <vasant.hegde@amd.com>2024-08-28 11:10:28 +0000
committerJoerg Roedel <jroedel@suse.de>2024-09-04 11:35:57 +0200
commita3303762eb80fe03479962470a81b9176fc24f8e (patch)
treeb4e7da6d36a060d4b5ce161b1776cfeb0e8c785b
parentiommu/amd: Make amd_iommu_domain_flush_complete() static (diff)
downloadwireguard-linux-a3303762eb80fe03479962470a81b9176fc24f8e.tar.xz
wireguard-linux-a3303762eb80fe03479962470a81b9176fc24f8e.zip
iommu/amd: Rework amd_iommu_update_and_flush_device_table()
Remove separate function to update and flush the device table as only amd_iommu_update_and_flush_device_table() calls these functions. No functional changes intended. Signed-off-by: Vasant Hegde <vasant.hegde@amd.com> Reviewed-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com> Link: https://lore.kernel.org/r/20240828111029.5429-8-vasant.hegde@amd.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
-rw-r--r--drivers/iommu/amd/iommu.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
index 9af084fa6dd4..5289be98377a 100644
--- a/drivers/iommu/amd/iommu.c
+++ b/drivers/iommu/amd/iommu.c
@@ -1591,15 +1591,7 @@ static void domain_flush_np_cache(struct protection_domain *domain,
/*
* This function flushes the DTEs for all devices in domain
*/
-static void domain_flush_devices(struct protection_domain *domain)
-{
- struct iommu_dev_data *dev_data;
-
- list_for_each_entry(dev_data, &domain->dev_list, list)
- device_flush_dte(dev_data);
-}
-
-static void update_device_table(struct protection_domain *domain)
+void amd_iommu_update_and_flush_device_table(struct protection_domain *domain)
{
struct iommu_dev_data *dev_data;
@@ -1609,12 +1601,10 @@ static void update_device_table(struct protection_domain *domain)
set_dte_entry(iommu, dev_data);
clone_aliases(iommu, dev_data->dev);
}
-}
-void amd_iommu_update_and_flush_device_table(struct protection_domain *domain)
-{
- update_device_table(domain);
- domain_flush_devices(domain);
+ list_for_each_entry(dev_data, &domain->dev_list, list)
+ device_flush_dte(dev_data);
+
domain_flush_complete(domain);
}