From: Sairaj Kodilkar <sarunkod@amd.com>
To: <qemu-devel@nongnu.org>
Cc: <alejandro.j.jimenez@oracle.com>, <pbonzini@redhat.com>,
<richard.henderson@linaro.org>, <eduardo@habkost.net>,
<mst@redhat.com>, <marcel.apfelbaum@gmail.com>,
<vasant.hegde@amd.com>, <clement.mathieu--drif@eviden.com>,
Sairaj Kodilkar <sarunkod@amd.com>
Subject: [PATCH v3 0/3] amd_iommu: Support Generation of IOMMU XT interrupts
Date: Mon, 2 Mar 2026 17:21:27 +0530 [thread overview]
Message-ID: <20260302115130.5903-1-sarunkod@amd.com> (raw)
AMD IOMMU uses MMIO registers 0x170-0x180 to generate the interrupts when guest
has enabled xt support through control register. The guest programs these
registers with appropriate vector and destination ID instead of writing to PCI
MSI capability.
Until now enabling the xt support through command line "xtsup=on" provided
support for 128 bit IRTE. But it has few limitations:
1. It does not consider if guest has actually enabled xt support through MMIO
control register (0x18). This may cause problems for the guests which do
not enable this support.
2. The vIOMMU is not capable of generating interrupts using vector and
destinatio ID in IOMMU x2APIC Control Registers (not supporting event log
interrupts).
To overcome above limitations, this patch series introduces new internal flag
"intcapxten" which is set when guest writes "1" to MMIO control register (0x18)
bit 51 (IntCapXTEn) and adds support to generate event log interrupt using
vector and 32 bit destination ID in XT MMIO register 0x170.
-------------------------------------------------------------------------------
Changes since v2:
https://lore.kernel.org/qemu-devel/20260129102814.4488-1-sarunkod@amd.com/
Patch 1:
- Delete amdvi_mmio_trace_{read,write} and AMDVI_MMIO_REGS_{LOW,HIGH}
definitions [AJ]
- Move MMIO_REG_TO_STRING definition inside amdvi_mmio_get_name() [CM]
Patch 2: Improve commit message [AJ]
Patch 3: Improve commit message and comment [AJ]
Changes since v1:
https://lore.kernel.org/qemu-devel/20251118082403.3455-1-sarunkod@amd.com/
Patch 1: Return string literals directly instead of copying [AJ]
Patch 2:
- Update commit message [AJ]
- Introduce new subsection for migration compatibility [AJ]
- Update comment [AJ]
Patch 3: Use ga_enabled flag while setting xten flag [AJ]
-------------------------------------------------------------------------------
The patches are based on top of upstream qemu master 07f97d5da04a
-------------------------------------------------------------------------------
Sairaj Kodilkar (3):
amd_iommu: Use switch case to determine mmio register name
amd_iommu: Turn on XT support only when guest has enabled it
amd_iommu: Generate XT interrupts when xt support is enabled
hw/i386/amd_iommu.c | 144 ++++++++++++++++++++++++++-----------------
hw/i386/amd_iommu.h | 25 ++++++--
hw/i386/trace-events | 1 +
3 files changed, 108 insertions(+), 62 deletions(-)
--
2.34.1
next reply other threads:[~2026-03-02 11:52 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-02 11:51 Sairaj Kodilkar [this message]
2026-03-02 11:51 ` [PATCH v3 1/3] amd_iommu: Use switch case to determine mmio register name Sairaj Kodilkar
2026-03-12 21:59 ` Alejandro Jimenez
2026-03-13 0:36 ` Alejandro Jimenez
2026-03-13 4:49 ` Sairaj Kodilkar
2026-03-02 11:51 ` [PATCH v3 2/3] amd_iommu: Turn on XT support only when guest has enabled it Sairaj Kodilkar
2026-03-03 9:39 ` Vasant Hegde
2026-03-03 10:20 ` Sairaj Kodilkar
2026-03-02 11:51 ` [PATCH v3 3/3] amd_iommu: Generate XT interrupts when xt support is enabled Sairaj Kodilkar
2026-03-03 9:47 ` Vasant Hegde
2026-03-03 9:55 ` Sairaj Kodilkar
2026-03-13 0:16 ` Alejandro Jimenez
2026-03-13 5:20 ` Sairaj Kodilkar
2026-03-13 16:17 ` Alejandro Jimenez
2026-03-16 7:04 ` Sairaj Kodilkar
2026-03-17 1:10 ` [PATCH v3 0/3] amd_iommu: Support Generation of IOMMU XT interrupts Alejandro Jimenez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260302115130.5903-1-sarunkod@amd.com \
--to=sarunkod@amd.com \
--cc=alejandro.j.jimenez@oracle.com \
--cc=clement.mathieu--drif@eviden.com \
--cc=eduardo@habkost.net \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=vasant.hegde@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.