x86/boot/tboot: Move tboot_force_iommu() to Intel IOMMU
authorLu Baolu <baolu.lu@linux.intel.com>
Tue, 12 Jul 2022 00:08:49 +0000 (08:08 +0800)
committerJoerg Roedel <jroedel@suse.de>
Fri, 15 Jul 2022 08:21:30 +0000 (10:21 +0200)
tboot_force_iommu() is only called by the Intel IOMMU driver. Move the
helper into that driver. No functional change intended.

Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Steve Wahl <steve.wahl@hpe.com>
Link: https://lore.kernel.org/r/20220514014322.2927339-7-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
arch/x86/kernel/tboot.c
drivers/iommu/intel/iommu.c
include/linux/tboot.h

index 0c1154a1c40327b5624d79c50d07a8876861a0f6..3bacd935f840b933b28081dd25b27eb02d9bdf26 100644 (file)
@@ -6,7 +6,6 @@
  * Copyright (c) 2006-2009, Intel Corporation
  */
 
-#include <linux/intel-iommu.h>
 #include <linux/init_task.h>
 #include <linux/spinlock.h>
 #include <linux/export.h>
@@ -516,17 +515,3 @@ struct acpi_table_header *tboot_get_dmar_table(struct acpi_table_header *dmar_tb
 
        return dmar_tbl;
 }
-
-int tboot_force_iommu(void)
-{
-       if (!tboot_enabled())
-               return 0;
-
-       if (no_iommu || dmar_disabled)
-               pr_warn("Forcing Intel-IOMMU to enabled\n");
-
-       dmar_disabled = 0;
-       no_iommu = 0;
-
-       return 1;
-}
index 6564af7ec0ddecddfd91baaeef93f2bfbade334c..c70948021e8e38d5e8e54c803bed034487f8f0ca 100644 (file)
@@ -4019,6 +4019,20 @@ static int __init probe_acpi_namespace_devices(void)
        return 0;
 }
 
+static __init int tboot_force_iommu(void)
+{
+       if (!tboot_enabled())
+               return 0;
+
+       if (no_iommu || dmar_disabled)
+               pr_warn("Forcing Intel-IOMMU to enabled\n");
+
+       dmar_disabled = 0;
+       no_iommu = 0;
+
+       return 1;
+}
+
 int __init intel_iommu_init(void)
 {
        int ret = -ENODEV;
index 5146d2574e85b01bb1787e902fe6244ccd93d2b3..d2279160ef39d34750b1f36ae9e0733456a40e4d 100644 (file)
@@ -126,7 +126,6 @@ extern void tboot_probe(void);
 extern void tboot_shutdown(u32 shutdown_type);
 extern struct acpi_table_header *tboot_get_dmar_table(
                                      struct acpi_table_header *dmar_tbl);
-extern int tboot_force_iommu(void);
 
 #else
 
@@ -136,7 +135,6 @@ extern int tboot_force_iommu(void);
 #define tboot_sleep(sleep_state, pm1a_control, pm1b_control)   \
                                        do { } while (0)
 #define tboot_get_dmar_table(dmar_tbl) (dmar_tbl)
-#define tboot_force_iommu()            0
 
 #endif /* !CONFIG_INTEL_TXT */