]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
AMD IOMMU: enable event logging
authorJoerg Roedel <joerg.roedel@amd.com>
Tue, 9 Sep 2008 14:47:35 +0000 (16:47 +0200)
committerIngo Molnar <mingo@elte.hu>
Fri, 19 Sep 2008 10:59:17 +0000 (12:59 +0200)
The code to log IOMMU events is in place now. So enable event logging
with this patch.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/amd_iommu_init.c

index eed488892c01417f877f83373ef617ba84ecc37e..1974b73fece6413c4b587a547cb351632321ebaa 100644 (file)
@@ -253,6 +253,13 @@ void __init iommu_enable(struct amd_iommu *iommu)
        iommu_feature_enable(iommu, CONTROL_IOMMU_EN);
 }
 
+/* Function to enable IOMMU event logging and event interrupts */
+void __init iommu_enable_event_logging(struct amd_iommu *iommu)
+{
+       iommu_feature_enable(iommu, CONTROL_EVT_LOG_EN);
+       iommu_feature_enable(iommu, CONTROL_EVT_INT_EN);
+}
+
 /*
  * mapping and unmapping functions for the IOMMU MMIO space. Each AMD IOMMU in
  * the system has one.
@@ -958,6 +965,7 @@ static void __init enable_iommus(void)
        list_for_each_entry(iommu, &amd_iommu_list, list) {
                iommu_set_exclusion_range(iommu);
                iommu_init_msi(iommu);
+               iommu_enable_event_logging(iommu);
                iommu_enable(iommu);
        }
 }