From: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
To: <joro@8bytes.org>, <suravee.suthikulpanit@amd.com>,
<will@kernel.org>, <robin.murphy@arm.com>,
<linux-kernel@vger.kernel.org>, <iommu@lists.linux.dev>
Cc: <vasant.hegde@amd.com>
Subject: [PATCH v2 8/8] iommu/amd: Add documentation for AMD IOMMU debugfs support
Date: Wed, 6 Nov 2024 13:16:39 +0530 [thread overview]
Message-ID: <20241106074639.2039-9-dheerajkumar.srivastava@amd.com> (raw)
In-Reply-To: <20241106074639.2039-1-dheerajkumar.srivastava@amd.com>
Add documentation describing how to use AMD IOMMU debugfs support to
dump IOMMU data structures - IRT table, Device table, Registers (MMIO and
Capability) and command buffer.
Signed-off-by: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
---
Documentation/ABI/testing/debugfs-amd-iommu | 140 ++++++++++++++++++++
1 file changed, 140 insertions(+)
create mode 100644 Documentation/ABI/testing/debugfs-amd-iommu
diff --git a/Documentation/ABI/testing/debugfs-amd-iommu b/Documentation/ABI/testing/debugfs-amd-iommu
new file mode 100644
index 000000000000..9f7741e05217
--- /dev/null
+++ b/Documentation/ABI/testing/debugfs-amd-iommu
@@ -0,0 +1,140 @@
+What: /sys/kernel/debug/iommu/amd/iommu<x>/mmio
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an input read/write access file. In this file, the user input
+ mmio register offset for iommu<x> to print corresponding mmio register
+ of iommu<x>.
+
+ Example:
+ $ echo "0x18" > /sys/kernel/debug/iommu/amd/iommu00/mmio
+ $ cat /sys/kernel/debug/iommu/amd/iommu00/mmio
+
+ Output:
+ 0x18
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/mmio_dump
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an output read only file that contains mmio register
+ value at offset "/sys/kernel/debug/iommu/amd/iommu<x>/mmio".
+
+ Example:
+ $ cat /sys/kernel/debug/iommu/amd/iommu00/mmio_dump
+
+ Output:
+ 0x0003f48d
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/capability
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an input read/write access file. In this file, the user input
+ capability register offset for iommu<x> to print corresponding capability
+ register of iommu<x>.
+
+ Example:
+ $ echo "0x10" > /sys/kernel/debug/iommu/amd/iommu00/capability
+ $ cat /sys/kernel/debug/iommu/amd/iommu00/capability
+
+ Output:
+ 0x10
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/capability_dump
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an output read only file that contains capability register
+ value at offset "/sys/kernel/debug/iommu/amd/iommu<x>/capability".
+
+ Example:
+ $ cat /sys/kernel/debug/iommu/amd/iommu00/capability_dump
+
+ Output:
+ 0x00203040
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/cmdbuf
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This file is an output read only file that contains iommu<x> command
+ buffer entries.
+
+ Examples:
+ $ cat /sys/kernel/debug/iommu/amd/iommu<x>/cmdbuf
+
+ Output:
+ CMD Buffer Head Offset:339 Tail Offset:339
+ 0: 008350011000000100003c0000000000
+ 1: 0000000030000005fffff0037fffffff
+ 2: 008350011000000100003c0100000000
+ 3: 0000000030000005fffff0037fffffff
+ 4: 008350011000000100003c0200000000
+ 5: 0000000030000005fffff0037fffffff
+ 6: 008350011000000100003c0300000000
+ 7: 0000000030000005fffff0037fffffff
+ 8: 008350011000000100003c0400000000
+ 9: 0000000030000005fffff0037fffffff
+ 10: 008350011000000100003c0500000000
+ 11: 0000000030000005fffff0037fffffff
+ [...]
+
+What: /sys/kernel/debug/iommu/amd/devid
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an input read/write file that takes device id user input.
+ This input can be used for dumping iommu data structures like
+ interrupt remapping table, device table etc.
+
+ Example:
+ 1.
+ $ echo 0000:01:00.0 > /sys/kernel/debug/iommu/amd/devid
+ $ cat /sys/kernel/debug/iommu/amd/devid
+
+ Output:
+ 0000:01:00.0
+
+ 2.
+ $ echo 01:00.0 > /sys/kernel/debug/iommu/amd/devid
+ $ cat /sys/kernel/debug/iommu/amd/devid
+
+ Output:
+ 0000:01:00.0
+
+What: /sys/kernel/debug/iommu/devtbl
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an output read only file that contains device table entry for
+ the device id input given in /sys/kernel/debug/iommu/amd/devid.
+
+ Example:
+ $ cat /sys/kernel/debug/iommu/amd/devtbl
+
+ Output:
+ DeviceId QWORD[3] QWORD[2] QWORD[1] QWORD[0] iommu
+ 0000:01:00.0 0000000000000000 20000001373b8013 0000000000000038 6000000114d7b603 iommu3
+
+What: /sys/kernel/debug/iommu/irqtbl
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
+Description:
+ This is an output read only file that contains IRT table valid entries
+ for the device id input given in /sys/kernel/debug/iommu/amd/devid.
+
+ Example:
+ $ cat /sys/kernel/debug/iommu/amd/irqtbl
+
+ Output:
+ DeviceId 0000:01:00.0
+ IRT[0000] 00000000000000200000000000000241
+ IRT[0001] 00000000000000200000000000000841
+ IRT[0002] 00000000000000200000000000002041
+ IRT[0003] 00000000000000200000000000008041
+ IRT[0004] 00000000000000200000000000020041
+ IRT[0005] 00000000000000200000000000080041
+ IRT[0006] 00000000000000200000000000200041
+ IRT[0007] 00000000000000200000000000800041
+ [...]
--
2.25.1
next prev parent reply other threads:[~2024-11-06 7:55 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-06 7:46 [PATCH v2 0/8] Introduce debugfs support in IOMMU Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 1/8] iommu/amd: Refactor AMD IOMMU debugfs initial setup Dheeraj Kumar Srivastava
2024-11-26 19:12 ` Bjorn Helgaas
2025-01-07 5:01 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 2/8] iommu/amd: Add debugfs support to dump IOMMU MMIO registers Dheeraj Kumar Srivastava
2024-11-26 20:58 ` Bjorn Helgaas
2025-01-07 5:27 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 3/8] iommu/amd: Add debugfs support to dump IOMMU Capability registers Dheeraj Kumar Srivastava
2024-11-26 20:59 ` Bjorn Helgaas
2025-01-07 6:03 ` Srivastava, Dheeraj Kumar
2025-01-07 20:18 ` Bjorn Helgaas
2025-01-15 5:06 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 4/8] iommu/amd: Add debugfs support to dump IOMMU command buffer Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 5/8] iommu/amd: Add support for device id user input Dheeraj Kumar Srivastava
2024-11-26 21:02 ` Bjorn Helgaas
2025-01-15 5:21 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 6/8] iommu/amd: Add debugfs support to dump device table Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 7/8] iommu/amd: Add debugfs support to dump IRT Table Dheeraj Kumar Srivastava
2024-11-06 7:46 ` Dheeraj Kumar Srivastava [this message]
2024-11-26 21:19 ` [PATCH v2 8/8] iommu/amd: Add documentation for AMD IOMMU debugfs support Bjorn Helgaas
2024-12-03 5:54 ` Srivastava, Dheeraj Kumar
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=20241106074639.2039-9-dheerajkumar.srivastava@amd.com \
--to=dheerajkumar.srivastava@amd.com \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robin.murphy@arm.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=vasant.hegde@amd.com \
--cc=will@kernel.org \
/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.