iommu/amd: Remove amd_iommu_device_info()
authorVasant Hegde <vasant.hegde@amd.com>
Fri, 6 Oct 2023 09:57:04 +0000 (09:57 +0000)
committerJoerg Roedel <jroedel@suse.de>
Fri, 6 Oct 2023 14:01:54 +0000 (16:01 +0200)
No one is using this function. Hence remove it. Also move PCI device
feature detection flags to amd_iommu_types.h as its only used inside
AMD IOMMU driver.

Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>
Tested-by: Alex Deucher <alexander.deucher@amd.com>
Link: https://lore.kernel.org/r/20231006095706.5694-4-vasant.hegde@amd.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/amd/amd_iommu_types.h
drivers/iommu/amd/iommu.c
include/linux/amd-iommu.h

index 25b731f3d984b3287331bc0a1d33681a07ce5dd8..e742006f288527304b136ed3677728a7240a2343 100644 (file)
@@ -786,6 +786,14 @@ struct devid_map {
        bool cmd_line;
 };
 
+#define AMD_IOMMU_DEVICE_FLAG_ATS_SUP     0x1    /* ATS feature supported */
+#define AMD_IOMMU_DEVICE_FLAG_PRI_SUP     0x2    /* PRI feature supported */
+#define AMD_IOMMU_DEVICE_FLAG_PASID_SUP   0x4    /* PASID context supported */
+/* Device may request execution on memory pages */
+#define AMD_IOMMU_DEVICE_FLAG_EXEC_SUP    0x8
+/* Device may request super-user privileges */
+#define AMD_IOMMU_DEVICE_FLAG_PRIV_SUP   0x10
+
 /*
  * This struct contains device specific data for the IOMMU
  */
index 5abf181f5ecd71ff78cf2d96501745fcadd2dcda..8f43d89a98dbedc0db8307ea6f851c4047a41d32 100644 (file)
@@ -2741,48 +2741,6 @@ int amd_iommu_complete_ppr(struct pci_dev *pdev, u32 pasid,
 }
 EXPORT_SYMBOL(amd_iommu_complete_ppr);
 
-int amd_iommu_device_info(struct pci_dev *pdev,
-                          struct amd_iommu_device_info *info)
-{
-       int max_pasids;
-       int pos;
-
-       if (pdev == NULL || info == NULL)
-               return -EINVAL;
-
-       if (!amd_iommu_v2_supported())
-               return -EINVAL;
-
-       memset(info, 0, sizeof(*info));
-
-       if (pci_ats_supported(pdev))
-               info->flags |= AMD_IOMMU_DEVICE_FLAG_ATS_SUP;
-
-       pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_PRI);
-       if (pos)
-               info->flags |= AMD_IOMMU_DEVICE_FLAG_PRI_SUP;
-
-       pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_PASID);
-       if (pos) {
-               int features;
-
-               max_pasids = 1 << (9 * (amd_iommu_max_glx_val + 1));
-               max_pasids = min(max_pasids, (1 << 20));
-
-               info->flags |= AMD_IOMMU_DEVICE_FLAG_PASID_SUP;
-               info->max_pasids = min(pci_max_pasids(pdev), max_pasids);
-
-               features = pci_pasid_features(pdev);
-               if (features & PCI_PASID_CAP_EXEC)
-                       info->flags |= AMD_IOMMU_DEVICE_FLAG_EXEC_SUP;
-               if (features & PCI_PASID_CAP_PRIV)
-                       info->flags |= AMD_IOMMU_DEVICE_FLAG_PRIV_SUP;
-       }
-
-       return 0;
-}
-EXPORT_SYMBOL(amd_iommu_device_info);
-
 #ifdef CONFIG_IRQ_REMAP
 
 /*****************************************************************************
index 35ca00b09384c1f0538ecab0d8772c80b2787ac6..dc7ed2f4688614a992eac65d11e25d841943ae45 100644 (file)
@@ -33,32 +33,6 @@ struct pci_dev;
 
 extern int amd_iommu_detect(void);
 
-/**
- * amd_iommu_device_info() - Get information about IOMMUv2 support of a
- *                          PCI device
- * @pdev: PCI device to query information from
- * @info: A pointer to an amd_iommu_device_info structure which will contain
- *       the information about the PCI device
- *
- * Returns 0 on success, negative value on error
- */
-
-#define AMD_IOMMU_DEVICE_FLAG_ATS_SUP     0x1    /* ATS feature supported */
-#define AMD_IOMMU_DEVICE_FLAG_PRI_SUP     0x2    /* PRI feature supported */
-#define AMD_IOMMU_DEVICE_FLAG_PASID_SUP   0x4    /* PASID context supported */
-#define AMD_IOMMU_DEVICE_FLAG_EXEC_SUP    0x8    /* Device may request execution
-                                                   on memory pages */
-#define AMD_IOMMU_DEVICE_FLAG_PRIV_SUP   0x10    /* Device may request
-                                                   super-user privileges */
-
-struct amd_iommu_device_info {
-       int max_pasids;
-       u32 flags;
-};
-
-extern int amd_iommu_device_info(struct pci_dev *pdev,
-                                struct amd_iommu_device_info *info);
-
 #else /* CONFIG_AMD_IOMMU */
 
 static inline int amd_iommu_detect(void) { return -ENODEV; }