[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250317115830.3416-9-dheerajkumar.srivastava@amd.com>
Date: Mon, 17 Mar 2025 17:28:30 +0530
From: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....com>
To: <joro@...tes.org>, <will@...nel.org>, <robin.murphy@....com>,
<linux-kernel@...r.kernel.org>, <iommu@...ts.linux.dev>
CC: <suravee.suthikulpanit@....com>, <vasant.hegde@....com>, "Dheeraj Kumar
Srivastava" <dheerajkumar.srivastava@....com>
Subject: [PATCH v4 8/8] iommu/amd: Add documentation for AMD IOMMU debugfs support
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@....com>
---
Documentation/ABI/testing/debugfs-amd-iommu | 114 ++++++++++++++++++++
1 file changed, 114 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..49efc74c8e6f
--- /dev/null
+++ b/Documentation/ABI/testing/debugfs-amd-iommu
@@ -0,0 +1,114 @@
+What: /sys/kernel/debug/iommu/amd/iommu<x>/mmio
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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:
+ Offset:0x18 Value:0x000c22000003f48d
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/capability
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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:
+ Offset:0x10 Value:0x00203040
+
+What: /sys/kernel/debug/iommu/amd/iommu<x>/cmdbuf
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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: 00835001 10000001 00003c00 00000000
+ 1: 00000000 30000005 fffff003 7fffffff
+ 2: 00835001 10000001 00003c01 00000000
+ 3: 00000000 30000005 fffff003 7fffffff
+ 4: 00835001 10000001 00003c02 00000000
+ 5: 00000000 30000005 fffff003 7fffffff
+ 6: 00835001 10000001 00003c03 00000000
+ 7: 00000000 30000005 fffff003 7fffffff
+ 8: 00835001 10000001 00003c04 00000000
+ 9: 00000000 30000005 fffff003 7fffffff
+ 10: 00835001 10000001 00003c05 00000000
+ 11: 00000000 30000005 fffff003 7fffffff
+ [...]
+
+What: /sys/kernel/debug/iommu/amd/devid
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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/amd/devtbl
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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/amd/irqtbl
+Date: September 2024
+Contact: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@....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] 0000000000000020 0000000000000241
+ IRT[0001] 0000000000000020 0000000000000841
+ IRT[0002] 0000000000000020 0000000000002041
+ IRT[0003] 0000000000000020 0000000000008041
+ IRT[0004] 0000000000000020 0000000000020041
+ IRT[0005] 0000000000000020 0000000000080041
+ IRT[0006] 0000000000000020 0000000000200041
+ IRT[0007] 0000000000000020 0000000000800041
+ [...]
--
2.25.1
Powered by blists - more mailing lists