{"id":1816,"date":"2026-07-22T15:07:33","date_gmt":"2026-07-22T22:07:33","guid":{"rendered":"https:\/\/nanzhou.cc\/?p=1816"},"modified":"2026-07-22T15:09:16","modified_gmt":"2026-07-22T22:09:16","slug":"pcie-sysfs","status":"publish","type":"post","link":"https:\/\/nanzhou.cc\/index.php\/2026\/07\/22\/pcie-sysfs\/","title":{"rendered":"PCIe Sysfs"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">My desktop<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[hi on] nanzhou@nanzhou2:~$ lspci<br>00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Root Complex<br>00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse IOMMU<br>00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse GPP Bridge<br>00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse GPP Bridge<br>00:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:05.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 61)<br>00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)<br>00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 0<br>00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 1<br>00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 2<br>00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 3<br>00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 4<br>00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 5<br>00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 6<br>00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship Device 24; Function 7<br>01:00.0 Ethernet controller: Aquantia Corp. AQtion AQC107 NBase-T\/IEEE 802.3an Ethernet Controller [Atlantic 10G] (rev 02)<br>02:00.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse Switch Upstream<br>03:08.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge<br>03:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge<br>03:0a.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Matisse PCIe GPP Bridge<br>04:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Reserved SPP<br>04:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller<br>04:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller<br>05:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)<br>06:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)<br>07:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Function<br>08:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Reserved SPP<br>08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Starship USB 3.0 Host Controller<br>20:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Root Complex<br>20:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse IOMMU<br>20:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse GPP Bridge<br>20:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:05.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>20:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>20:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>21:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1\/PM9A3\/980PRO<br>22:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Function<br>23:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Reserved SPP<br>23:00.1 Encryption controller: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Cryptographic Coprocessor PSPCPP<br>23:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Starship USB 3.0 Host Controller<br>40:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Root Complex<br>40:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse IOMMU<br>40:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:05.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>40:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>40:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>41:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Function<br>42:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Reserved SPP<br>60:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Root Complex<br>60:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse IOMMU<br>60:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse GPP Bridge<br>60:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:05.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>60:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Host Bridge<br>60:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Internal PCIe GPP Bridge 0 to bus[E:B]<br>61:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD\/ATI] Lexa XT [Radeon PRO WX 3200] (rev 10)<br>61:00.1 Audio device: Advanced Micro Devices, Inc. [AMD\/ATI] Baffin HDMI\/DP Audio [Radeon RX 550 640SP \/ RX 560\/560X]<br>62:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse PCIe Dummy Function<br>63:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Starship\/Matisse Reserved SPP<br><br>[hi on] nanzhou@nanzhou2:~$ lspci -t<br>-+-[0000:00]-+-00.0<br> |           +-00.2<br> |           +-01.0<br> |           +-01.1-[01]----00.0<br> |           +-02.0<br> |           +-03.0<br> |           +-03.1-[02-06]----00.0-[03-06]--+-08.0-[04]--+-00.0<br> |           |                               |            +-00.1<br> |           |                               |            \\-00.3<br> |           |                               +-09.0-[05]----00.0<br> |           |                               \\-0a.0-[06]----00.0<br> |           +-04.0<br> |           +-05.0<br> |           +-07.0<br> |           +-07.1-[07]----00.0<br> |           +-08.0<br> |           +-08.1-[08]--+-00.0<br> |           |            \\-00.3<br> |           +-14.0<br> |           +-14.3<br> |           +-18.0<br> |           +-18.1<br> |           +-18.2<br> |           +-18.3<br> |           +-18.4<br> |           +-18.5<br> |           +-18.6<br> |           \\-18.7<br> +-[0000:20]-+-00.0<br> |           +-00.2<br> |           +-01.0<br> |           +-01.2-[21]----00.0<br> |           +-02.0<br> |           +-03.0<br> |           +-04.0<br> |           +-05.0<br> |           +-07.0<br> |           +-07.1-[22]----00.0<br> |           +-08.0<br> |           \\-08.1-[23]--+-00.0<br> |                        +-00.1<br> |                        \\-00.3<br> +-[0000:40]-+-00.0<br> |           +-00.2<br> |           +-01.0<br> |           +-02.0<br> |           +-03.0<br> |           +-04.0<br> |           +-05.0<br> |           +-07.0<br> |           +-07.1-[41]----00.0<br> |           +-08.0<br> |           \\-08.1-[42]----00.0<br> \\-[0000:60]-+-00.0<br>             +-00.2<br>             +-01.0<br>             +-02.0<br>             +-03.0<br>             +-03.1-[61]--+-00.0<br>             |            \\-00.1<br>             +-04.0<br>             +-05.0<br>             +-07.0<br>             +-07.1-[62]----00.0<br>             +-08.0<br>             \\-08.1-[63]----00.0<br><br><br><br>The PCIe graph looks like the following<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Put them together, we have<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">[0000:00] (CPU I\/O Die - Segment 0)\n \u251c\u2500\u2500 0000:00:00.0 \u2500\u2500 [AMD] Starship\/Matisse Root Complex\n \u251c\u2500\u2500 0000:00:00.2 \u2500\u2500 [AMD] Starship\/Matisse IOMMU\n \u251c\u2500\u2500 0000:00:01.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:01.1 \u2500\u2500 [AMD] Starship\/Matisse GPP Bridge (PCI Bridge)\n \u2502    \u2514\u2500\u2500 0000:01:00.0 \u2500\u2500 [Aquantia] AQC107 10-Gigabit Ethernet Controller\n \u251c\u2500\u2500 0000:00:02.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:03.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:03.1 \u2500\u2500 [AMD] Starship\/Matisse GPP Bridge (CPU to Chipset Link)\n \u2502    \u2514\u2500\u2500 0000:02:00.0 \u2500\u2500 [AMD] Matisse Upstream Switch (Motherboard Chipset Chip)\n \u2502         \u251c\u2500\u2500 0000:03:08.0 \u2500\u2500 [AMD] Matisse PCIe GPP Bridge\n \u2502         \u2502    \u251c\u2500\u2500 0000:04:00.0 \u2500\u2500 [AMD] Starship\/Matisse Reserved SPP (Co-processor)\n \u2502         \u2502    \u251c\u2500\u2500 0000:04:00.1 \u2500\u2500 [AMD] Matisse USB 3.0 Host Controller\n \u2502         \u2502    \u2514\u2500\u2500 0000:04:00.3 \u2500\u2500 [AMD] Matisse USB 3.0 Host Controller\n \u2502         \u251c\u2500\u2500 0000:03:09.0 \u2500\u2500 [AMD] Matisse PCIe GPP Bridge\n \u2502         \u2502    \u2514\u2500\u2500 0000:05:00.0 \u2500\u2500 [AMD] FCH SATA Controller (AHCI Mode)\n \u2502         \u2514\u2500\u2500 0000:03:0a.0 \u2500\u2500 [AMD] Matisse PCIe GPP Bridge\n \u2502              \u2514\u2500\u2500 0000:06:00.0 \u2500\u2500 [AMD] FCH SATA Controller (AHCI Mode)\n \u251c\u2500\u2500 0000:00:04.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:05.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:07.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:07.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n \u2502    \u2514\u2500\u2500 0000:07:00.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Function\n \u251c\u2500\u2500 0000:00:08.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:00:08.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n \u2502    \u251c\u2500\u2500 0000:08:00.0 \u2500\u2500 [AMD] Starship\/Matisse Reserved SPP\n \u2502    \u2514\u2500\u2500 0000:08:00.3 \u2500\u2500 [AMD] Starship USB 3.0 Host Controller\n \u251c\u2500\u2500 0000:00:14.0 \u2500\u2500 [AMD] FCH SMBus Controller\n \u251c\u2500\u2500 0000:00:14.3 \u2500\u2500 [AMD] FCH LPC Bridge (ISA Bus)\n \u251c\u2500\u2500 0000:00:18.0 \u2500\u2500 [AMD] Starship Device 24; Function 0 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.1 \u2500\u2500 [AMD] Starship Device 24; Function 1 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.2 \u2500\u2500 [AMD] Starship Device 24; Function 2 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.3 \u2500\u2500 [AMD] Starship Device 24; Function 3 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.4 \u2500\u2500 [AMD] Starship Device 24; Function 4 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.5 \u2500\u2500 [AMD] Starship Device 24; Function 5 (Data Fabric)\n \u251c\u2500\u2500 0000:00:18.6 \u2500\u2500 [AMD] Starship Device 24; Function 6 (Data Fabric)\n \u2514\u2500\u2500 0000:00:18.7 \u2500\u2500 [AMD] Starship Device 24; Function 7 (Data Fabric)\n\n[0000:20] (CPU I\/O Die - Segment 1)\n \u251c\u2500\u2500 0000:20:00.0 \u2500\u2500 [AMD] Starship\/Matisse Root Complex\n \u251c\u2500\u2500 0000:20:00.2 \u2500\u2500 [AMD] Starship\/Matisse IOMMU\n \u251c\u2500\u2500 0000:20:01.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:01.2 \u2500\u2500 [AMD] Starship\/Matisse GPP Bridge\n \u2502    \u2514\u2500\u2500 0000:21:00.0 \u2500\u2500 [Samsung] NVMe SSD Controller (PM9A1\/PM9A3\/980PRO M.2 SSD)\n \u251c\u2500\u2500 0000:20:02.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:03.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:04.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:05.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:07.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:20:07.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n \u2502    \u2514\u2500\u2500 0000:22:00.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Function\n \u251c\u2500\u2500 0000:20:08.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u2514\u2500\u2500 0000:20:08.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n      \u251c\u2500\u2500 0000:23:00.0 \u2500\u2500 [AMD] Starship\/Matisse Reserved SPP\n      \u251c\u2500\u2500 0000:23:00.1 \u2500\u2500 [AMD] Cryptographic Coprocessor PSPCPP\n      \u2514\u2500\u2500 0000:23:00.3 \u2500\u2500 [AMD] Starship USB 3.0 Host Controller\n\n[0000:40] (CPU I\/O Die - Segment 2)\n \u251c\u2500\u2500 0000:40:00.0 \u2500\u2500 [AMD] Starship\/Matisse Root Complex\n \u251c\u2500\u2500 0000:40:00.2 \u2500\u2500 [AMD] Starship\/Matisse IOMMU\n \u251c\u2500\u2500 0000:40:01.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:02.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:03.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:04.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:05.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:07.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:40:07.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n \u2502    \u2514\u2500\u2500 0000:41:00.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Function\n \u251c\u2500\u2500 0000:40:08.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u2514\u2500\u2500 0000:40:08.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n      \u2514\u2500\u2500 0000:42:00.0 \u2500\u2500 [AMD] Starship\/Matisse Reserved SPP\n\n[0000:60] (CPU I\/O Die - Segment 3)\n \u251c\u2500\u2500 0000:60:00.0 \u2500\u2500 [AMD] Starship\/Matisse Root Complex\n \u251c\u2500\u2500 0000:60:00.2 \u2500\u2500 [AMD] Starship\/Matisse IOMMU\n \u251c\u2500\u2500 0000:60:01.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:02.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:03.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:03.1 \u2500\u2500 [AMD] Starship\/Matisse GPP Bridge (Primary GPU Slot)\n \u2502    \u251c\u2500\u2500 0000:61:00.0 \u2500\u2500 [AMD\/ATI] Lexa XT [Radeon PRO WX 3200] (Workstation GPU)\n \u2502    \u2514\u2500\u2500 0000:61:00.1 \u2500\u2500 [AMD\/ATI] Baffin HDMI\/DP Audio (Integrated Display Sound Chip)\n \u251c\u2500\u2500 0000:60:04.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:05.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:07.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u251c\u2500\u2500 0000:60:07.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n \u2502    \u2514\u2500\u2500 0000:62:00.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Function\n \u251c\u2500\u2500 0000:60:08.0 \u2500\u2500 [AMD] Starship\/Matisse PCIe Dummy Host Bridge\n \u2514\u2500\u2500 0000:60:08.1 \u2500\u2500 [AMD] Starship\/Matisse Internal GPP Bridge\n      \u2514\u2500\u2500 0000:63:00.0 \u2500\u2500 [AMD] Starship\/Matisse Reserved SPP\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">1. Decoding the Address (Fully Qualified Domain BDF)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When you see an address like&nbsp;<strong><code>0000:61:00.1<\/code><\/strong>&nbsp;(your GPU\u2019s HDMI Audio Controller), the kernel is using a highly structured coordinate system [1]:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>0000<\/strong>:<strong>61<\/strong>:<strong>00<\/strong>\u22c5<strong>1<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Segment<\/th><th>Your Value<\/th><th>Hardware Translation<\/th><\/tr><tr><td><strong>Domain<\/strong><\/td><td><code>0000<\/code><\/td><td><strong>The Virtual Segment<\/strong>. Standard desktop PCs usually have only one domain (<code>0000<\/code>), but multi-socket enterprise servers can have more to isolate different physical CPUs.<\/td><\/tr><tr><td><strong>Bus<\/strong><\/td><td><code>61<\/code><\/td><td><strong>The Road Segment<\/strong>. This represents the virtual highway that your graphics card sits on. Your GPU card owns Bus&nbsp;<code>61<\/code>&nbsp;[1].<\/td><\/tr><tr><td><strong>Device<\/strong><\/td><td><code>00<\/code><\/td><td><strong>The Physical Chip<\/strong>. This is the physical silicon package plugged into the motherboard PCIe slot.<\/td><\/tr><tr><td><strong>Function<\/strong><\/td><td><code>1<\/code><\/td><td><strong>The Sub-Component<\/strong>. Your graphics card is a&nbsp;<em>multi-function<\/em>&nbsp;device [1]. The GPU itself is Function&nbsp;<code>.0<\/code>&nbsp;(<code>0000:61:00.0<\/code>), while the audio controller that drives sound to your HDMI\/DisplayPort monitor is Function&nbsp;<code>.1<\/code>&nbsp;(<code>0000:61:00.1<\/code>) [1]. They share the exact same physical slot, but the OS treats them as distinct cards!<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2. The Two Faces of Sysfs: Dynamic vs. Stable Paths<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">When navigating&nbsp;<code>\/sys<\/code>, the Linux kernel gives you two distinct ways to access your PCIe hardware [1]. Let\u2019s look at your&nbsp;<strong>Samsung NVMe SSD<\/strong>&nbsp;to compare them:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83d\udccd Option A: The Dynamic Bus Path (The Symlink)<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">\/sys\/bus\/pci\/devices\/0000:21:00.0\/\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This is a flat list of all PCI devices. It is highly convenient, but&nbsp;<strong>unstable<\/strong>. If you were to plug in a second M.2 SSD, your motherboard might shift this SSD to bus&nbsp;<code>22<\/code>, changing the folder name entirely [1].<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\ud83c\udf32 Option B: The Stable Physical Path (The Real Directory)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">If you track where that symlink points, it leads to the true physical location under&nbsp;<code>\/sys\/devices\/<\/code>&nbsp;[1]:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">\/sys\/devices\/pci0000:20\/0000:20:01.2\/0000:21:00.0\/\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This path represents the exact copper routing from your CPU core down to the physical M.2 slot [1]. This directory path is\u00a0<strong>100% stable<\/strong>\u00a0(as long as the switch works okay) and will never change, no matter what you plug in or how BDFs shift:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>pci0000:20<\/code>\u00a0represents your CPU&#8217;s internal high-speed Memory Controller \/ I\/O Die (Segment 1).<\/li>\n\n\n\n<li><code>0000:20:01.2<\/code>\u00a0is the physical Root Port Bridge built into the CPU socket.<\/li>\n\n\n\n<li><code>0000:21:00.0<\/code>\u00a0is the actual Samsung SSD sitting inside the M.2 slot wired to that port.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">3. Parent-Child Hierarchies (Directory Nesting = Motherboard Wiring)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The most elegant feature of&nbsp;<code>sysfs<\/code>&nbsp;is that&nbsp;<strong>directory containment directly mirrors physical hardware connection<\/strong>&nbsp;[1]. If a device is downstream of a switch, its folder lives inside that switch&#8217;s folder.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let&#8217;s look at how your&nbsp;<strong>USB Host Controller<\/strong>&nbsp;(<code>04:00.1<\/code>) is nested inside the stable physical path [1]:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">\/sys\/devices\/pci0000:00\/             &lt;\u2500\u2500 CPU Root Complex (I\/O Die)\n\u2514\u2500\u2500 0000:00:03.1\/                    &lt;\u2500\u2500 Root Port Bridge (on the CPU)\n    \u2514\u2500\u2500 0000:02:00.0\/                &lt;\u2500\u2500 Matisse Upstream Switch (Motherboard Chipset Chip)\n        \u2514\u2500\u2500 0000:03:08.0\/            &lt;\u2500\u2500 Matisse Downstream Bridge\n            \u2514\u2500\u2500 0000:04:00.1\/        &lt;\u2500\u2500 Physical USB 3.0 Host Controller (on your back I\/O panel)\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you navigate into&nbsp;<code>\/sys\/devices\/pci0000:00\/0000:00:03.1\/0000:02:00.0\/<\/code>, you are literally standing inside the AMD Matisse chipset on your motherboard. The folders inside it represent the individual physical silicon lanes branching out to your SATA ports and USB controllers [1].<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">4. Interactive Attributes inside the Folders<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you run&nbsp;<code>ls -F \/sys\/bus\/pci\/devices\/0000:21:00.0\/<\/code>&nbsp;(your NVMe SSD), you won&#8217;t see traditional subfolders. Instead, you&#8217;ll find specialized files that bridge software to physical silicon:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>current_link_speed<\/code>\u00a0\/\u00a0<code>current_link_width<\/code><\/strong>: Real-time virtual registers. Reading them queries the physical PCIe link controller to ask how fast the copper wires are transmitting data\u00a0<em>right now<\/em>\u00a0[1].<\/li>\n\n\n\n<li><strong><code>msi_irqs\/<\/code><\/strong>: A folder containing files for every active CPU interrupt. This maps how the SSD signals your CPU cores when a data read completes.<\/li>\n\n\n\n<li><strong><code>power\/control<\/code><\/strong>: Write\u00a0<code>auto<\/code>\u00a0or\u00a0<code>on<\/code>\u00a0to this file to let the Linux kernel dynamically shut down the PCIe link lanes to save battery\/power when the SSD is idle.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>My desktop Put them together, we have 1. Decoding the Address (Fully Qualified Domain BDF) When you see an address like&nbsp;0000:61:00.1&nbsp;(your GPU\u2019s HDMI Audio Controller), the kernel is using a highly structured coordinate system [1]: 0000:61:00\u22c51 Segment Your Value Hardware Translation Domain 0000 The Virtual Segment. Standard desktop PCs usually have only one domain (0000),&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"0","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[76],"tags":[],"class_list":["post-1816","post","type-post","status-publish","format-standard","hentry","category-embedded"],"_links":{"self":[{"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/posts\/1816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/comments?post=1816"}],"version-history":[{"count":1,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/posts\/1816\/revisions"}],"predecessor-version":[{"id":1817,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/posts\/1816\/revisions\/1817"}],"wp:attachment":[{"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/media?parent=1816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/categories?post=1816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nanzhou.cc\/index.php\/wp-json\/wp\/v2\/tags?post=1816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}