[RFC PATCH v4 02/16] iommu/arm-smmu-v3: Save the programmed MSI message in msi_desc
Aneesh Kumar K.V (Arm)
aneesh.kumar at kernel.org
Mon Apr 27 01:53:30 PDT 2026
Cache the MSI message in desc->msg from arm_smmu_write_msi_msg(). The
realm support code later reads the MSI address and data through
irq_get_msi_desc(), so it needs the descriptor to reflect the last
programmed message.
This matches the caching done by __pci_write_msi_msg().
Signed-off-by: Aneesh Kumar K.V (Arm) <aneesh.kumar at kernel.org>
---
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
index d5b9ab95beea..17fd99887aab 100644
--- a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
+++ b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
@@ -4012,6 +4012,9 @@ static void arm_smmu_write_msi_msg(struct msi_desc *desc, struct msi_msg *msg)
if (smmu->features & ARM_SMMU_FEAT_PRI)
max_config_index = PRIQ_MSI_INDEX;
+ /* save the programmed msi message details */
+ desc->msg = *msg;
+
/* Don't try to config for Realm interrupts. */
if (desc->msi_index > max_config_index)
return;
--
2.43.0
More information about the linux-arm-kernel
mailing list