Blob Blame History Raw
From 4165bf015ba9454f45beaad621d16c516d5c5afe Mon Sep 17 00:00:00 2001                                                  
From: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>                                                             
Date: Mon, 7 Dec 2020 03:19:20 -0600                                                                                    
Patch-mainline: v5.10 or v5.10-rc8 (next release)
Git-commit: 4165bf015ba9454f45beaad621d16c516d5c5afe
References: bsc#1179652
Subject: [PATCH] iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs                                                   
                                                                                                                        
According to the AMD IOMMU spec, the commit 73db2fc595f3                                                                
("iommu/amd: Increase interrupt remapping table limit to 512 entries")                                                  
also requires the interrupt table length (IntTabLen) to be set to 9                                                     
(power of 2) in the device table mapping entry (DTE).                                                                   
                                                                                                                        
Fixes: 73db2fc595f3 ("iommu/amd: Increase interrupt remapping table limit to 512 entries")                              
Reported-by: Jerry Snitselaar <jsnitsel@redhat.com>                                                                     
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>                                                    
Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>                                                                     
Link: https://lore.kernel.org/r/20201207091920.3052-1-suravee.suthikulpanit@amd.com                                     
Signed-off-by: Will Deacon <will@kernel.org>                                                                            
Acked-by: Enzo Matsumiya <ematsumiya@suse.de>
---                                                                                                                     
 drivers/iommu/amd_iommu_types.h | 2 +-                                                                             
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/iommu/amd_iommu_types.h
+++ b/drivers/iommu/amd_iommu_types.h
@@ -254,7 +254,7 @@
 #define DTE_IRQ_REMAP_INTCTL_MASK	(0x3ULL << 60)
 #define DTE_IRQ_TABLE_LEN_MASK	(0xfULL << 1)
 #define DTE_IRQ_REMAP_INTCTL    (2ULL << 60)
-#define DTE_IRQ_TABLE_LEN       (8ULL << 1)
+#define DTE_IRQ_TABLE_LEN       (9ULL << 1)
 #define DTE_IRQ_REMAP_ENABLE    1ULL
 
 #define PAGE_MODE_NONE    0x00