关键点分析

如何查看设备有几个主桥

  1. dmesg 可以看到(acpi_pci_root_add函数打印)出现了:
  2. [ 0.181405] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-16]) # [PCIn] [bus 00-16], 那么00就是root的BUS号
  3. [ 0.181405] ACPI: PCI Root Bridge [PCI1] (domain 0000 [bus 17-ff]) # [PCIn] [bus 17-fe], 那么17就是root的BUS号
  4. ......
  5. 可以看到 PC1 已经枚举到bus ff了,那么支持2个主桥

内核启动打印分析(重点)

  1. acpi PNP0A08:00: [Firmware Info]: MMCONFIG for domain 0000 [bus 00-3f] only partially covers this bridge
  2. ### 主桥信息 (前边有分析,可能不止一个主桥,搜索 PCI host bridge 来查看
  3. ### 这里有 [bus 00-ff] 说明当前主桥下表已经覆盖了所有bus (在服务器上,将bus 可能挂载不同的主桥上)
  4. PCI host bridge to bus 0000:00
  5. pci_bus 0000:00: root bus resource [io 0x0000-0x03af window]
  6. pci_bus 0000:00: root bus resource [io 0x03e0-0x0cf7 window]
  7. pci_bus 0000:00: root bus resource [io 0x03b0-0x03df window]
  8. pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window]
  9. pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
  10. pci_bus 0000:00: root bus resource [mem 0x000c0000-0x000dffff window]
  11. pci_bus 0000:00: root bus resource [mem 0xe0000000-0xfec2ffff window]
  12. pci_bus 0000:00: root bus resource [mem 0xfee00000-0xffffffff window]
  13. pci_bus 0000:00: root bus resource [bus 00-ff]
  14. ### pci_scan_child_bus 开始扫描所有设备,打印分布在pci_setup_device 和 pci_device_add 中
  15. ### 中间也有部分会调用 pci_claim_resource
  16. ### 其实在pci_scan_child_bus->pci_scan_slot->pci_scan_single_device->pci_device_add
  17. ### ->pci_fixup_device->pci_do_fixups->quirk_piix4_acpi->quirk_io_region->pci_claim_resource
  18. ### 调用
  19. pci 0000:00:00.0: [1022:1480] type 00 class 0x060000
  20. pci 0000:00:00.2: [1022:1481] type 00 class 0x080600
  21. pci 0000:00:01.0: [1022:1482] type 00 class 0x060000
  22. pci 0000:00:01.1: [1022:1483] type 01 class 0x060400
  23. pci 0000:00:01.1: enabling Extended Tags
  24. pci 0000:00:01.1: PME# supported from D0 D3hot D3cold
  25. pci 0000:00:01.3: [1022:1483] type 01 class 0x060400
  26. pci 0000:00:01.3: enabling Extended Tags
  27. pci 0000:00:01.3: PME# supported from D0 D3hot D3cold
  28. pci 0000:00:02.0: [1022:1482] type 00 class 0x060000
  29. pci 0000:00:03.0: [1022:1482] type 00 class 0x060000
  30. pci 0000:00:03.1: [1022:1483] type 01 class 0x060400
  31. pci 0000:00:03.1: enabling Extended Tags
  32. pci 0000:00:03.1: PME# supported from D0 D3hot D3cold
  33. pci 0000:00:04.0: [1022:1482] type 00 class 0x060000
  34. pci 0000:00:05.0: [1022:1482] type 00 class 0x060000
  35. pci 0000:00:07.0: [1022:1482] type 00 class 0x060000
  36. pci 0000:00:07.1: [1022:1484] type 01 class 0x060400
  37. pci 0000:00:07.1: enabling Extended Tags
  38. pci 0000:00:07.1: PME# supported from D0 D3hot D3cold
  39. pci 0000:00:08.0: [1022:1482] type 00 class 0x060000
  40. pci 0000:00:08.1: [1022:1484] type 01 class 0x060400
  41. pci 0000:00:08.1: enabling Extended Tags
  42. pci 0000:00:08.1: PME# supported from D0 D3hot D3cold
  43. pci 0000:00:08.2: [1022:1484] type 01 class 0x060400
  44. pci 0000:00:08.2: enabling Extended Tags
  45. pci 0000:00:08.2: PME# supported from D0 D3hot D3cold
  46. pci 0000:00:08.3: [1022:1484] type 01 class 0x060400
  47. pci 0000:00:08.3: enabling Extended Tags
  48. pci 0000:00:08.3: PME# supported from D0 D3hot D3cold
  49. pci 0000:00:14.0: [1022:790b] type 00 class 0x0c0500
  50. pci 0000:00:14.3: [1022:790e] type 00 class 0x060100
  51. pci 0000:00:18.0: [1022:1440] type 00 class 0x060000
  52. pci 0000:00:18.1: [1022:1441] type 00 class 0x060000
  53. pci 0000:00:18.2: [1022:1442] type 00 class 0x060000
  54. pci 0000:00:18.3: [1022:1443] type 00 class 0x060000
  55. pci 0000:00:18.4: [1022:1444] type 00 class 0x060000
  56. pci 0000:00:18.5: [1022:1445] type 00 class 0x060000
  57. pci 0000:00:18.6: [1022:1446] type 00 class 0x060000
  58. pci 0000:00:18.7: [1022:1447] type 00 class 0x060000
  59. pci 0000:01:00.0: [15b7:5006] type 00 class 0x010802
  60. pci 0000:01:00.0: reg 0x10: [mem 0xf7b00000-0xf7b03fff 64bit]
  61. pci 0000:01:00.0: reg 0x20: [mem 0xf7b04000-0xf7b040ff 64bit]
  62. pci 0000:00:01.1: PCI bridge to [bus 01]
  63. pci 0000:00:01.1: bridge window [mem 0xf7b00000-0xf7bfffff]
  64. pci 0000:03:00.0: [1022:43d5] type 00 class 0x0c0330
  65. pci 0000:03:00.0: reg 0x10: [mem 0xf73a0000-0xf73a7fff 64bit]
  66. pci 0000:03:00.0: enabling Extended Tags
  67. pci 0000:03:00.0: PME# supported from D3hot D3cold
  68. pci 0000:03:00.1: [1022:43c8] type 00 class 0x010601
  69. pci 0000:03:00.1: reg 0x24: [mem 0xf7380000-0xf739ffff]
  70. pci 0000:03:00.1: reg 0x30: [mem 0xf7300000-0xf737ffff pref]
  71. pci 0000:03:00.1: enabling Extended Tags
  72. pci 0000:03:00.1: PME# supported from D3hot D3cold
  73. pci 0000:03:00.2: [1022:43c6] type 01 class 0x060400
  74. pci 0000:03:00.2: enabling Extended Tags
  75. pci 0000:03:00.2: PME# supported from D3hot D3cold
  76. pci 0000:00:01.3: PCI bridge to [bus 03-25]
  77. pci 0000:00:01.3: bridge window [io 0xe000-0xffff]
  78. pci 0000:00:01.3: bridge window [mem 0xf6000000-0xf73fffff]
  79. pci 0000:00:01.3: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  80. pci 0000:20:00.0: [1022:43c7] type 01 class 0x060400
  81. pci 0000:20:00.0: enabling Extended Tags
  82. pci 0000:20:00.0: PME# supported from D3hot D3cold
  83. pci 0000:20:01.0: [1022:43c7] type 01 class 0x060400
  84. pci 0000:20:01.0: enabling Extended Tags
  85. pci 0000:20:01.0: PME# supported from D3hot D3cold
  86. pci 0000:20:04.0: [1022:43c7] type 01 class 0x060400
  87. pci 0000:20:04.0: enabling Extended Tags
  88. pci 0000:20:04.0: PME# supported from D3hot D3cold
  89. pci 0000:03:00.2: PCI bridge to [bus 20-25]
  90. pci 0000:03:00.2: bridge window [io 0xe000-0xffff]
  91. pci 0000:03:00.2: bridge window [mem 0xf6000000-0xf72fffff]
  92. pci 0000:03:00.2: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  93. pci 0000:20:00.0: PCI bridge to [bus 21]
  94. pci 0000:22:00.0: [10ec:8168] type 00 class 0x020000
  95. pci 0000:22:00.0: reg 0x10: [io 0xf000-0xf0ff]
  96. pci 0000:22:00.0: reg 0x18: [mem 0xf7204000-0xf7204fff 64bit]
  97. pci 0000:22:00.0: reg 0x20: [mem 0xf7200000-0xf7203fff 64bit]
  98. pci 0000:22:00.0: supports D1 D2
  99. pci 0000:22:00.0: PME# supported from D0 D1 D2 D3hot D3cold
  100. pci 0000:20:01.0: PCI bridge to [bus 22]
  101. pci 0000:20:01.0: bridge window [io 0xf000-0xffff]
  102. pci 0000:20:01.0: bridge window [mem 0xf7200000-0xf72fffff]
  103. pci 0000:25:00.0: [10de:1f82] type 00 class 0x030000
  104. pci 0000:25:00.0: reg 0x10: [mem 0xf6000000-0xf6ffffff]
  105. pci 0000:25:00.0: reg 0x14: [mem 0xe0000000-0xefffffff 64bit pref]
  106. pci 0000:25:00.0: reg 0x1c: [mem 0xf0000000-0xf1ffffff 64bit pref]
  107. pci 0000:25:00.0: reg 0x24: [io 0xe000-0xe07f]
  108. pci 0000:25:00.0: reg 0x30: [mem 0xf7000000-0xf707ffff pref]
  109. pci 0000:25:00.0: enabling Extended Tags
  110. pci 0000:25:00.0: BAR 3: assigned to efifb
  111. pci 0000:25:00.0: PME# supported from D0 D3hot D3cold
  112. pci 0000:25:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s x4 link at 0000:20:04.0 (capable of 126.016 Gb/s with 8 GT/s x16 link)
  113. pci 0000:25:00.1: [10de:10fa] type 00 class 0x040300
  114. pci 0000:25:00.1: reg 0x10: [mem 0xf7080000-0xf7083fff]
  115. pci 0000:25:00.1: enabling Extended Tags
  116. pci 0000:20:04.0: PCI bridge to [bus 25]
  117. pci 0000:20:04.0: bridge window [io 0xe000-0xefff]
  118. pci 0000:20:04.0: bridge window [mem 0xf6000000-0xf70fffff]
  119. pci 0000:20:04.0: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  120. pci 0000:26:00.0: [10ee:9032] type 00 class 0x058000
  121. pci 0000:26:00.0: reg 0x10: [mem 0xf7a60000-0xf7a7ffff]
  122. pci 0000:26:00.0: reg 0x18: [mem 0xf7a40000-0xf7a5ffff]
  123. pci 0000:26:00.0: reg 0x30: [mem 0xfffff800-0xffffffff pref]
  124. pci 0000:26:00.0: reg 0x164: [mem 0x00000000-0x00007fff]
  125. pci 0000:26:00.0: VF(n) BAR0 space: [mem 0x00000000-0x0001ffff] (contains BAR0 for 4 VFs)
  126. pci 0000:26:00.0: reg 0x16c: [mem 0x00000000-0x00003fff]
  127. pci 0000:26:00.0: VF(n) BAR2 space: [mem 0x00000000-0x0000ffff] (contains BAR2 for 4 VFs)
  128. pci 0000:26:00.1: [10ee:0000] type 00 class 0x058000
  129. pci 0000:26:00.1: reg 0x10: [mem 0xf7a20000-0xf7a3ffff]
  130. pci 0000:26:00.1: reg 0x18: [mem 0xf7a00000-0xf7a1ffff]
  131. pci 0000:26:00.1: reg 0x164: [mem 0x00000000-0x00007fff]
  132. pci 0000:26:00.1: VF(n) BAR0 space: [mem 0x00000000-0x0001ffff] (contains BAR0 for 4 VFs)
  133. pci 0000:26:00.1: reg 0x16c: [mem 0x00000000-0x00003fff]
  134. pci 0000:26:00.1: VF(n) BAR2 space: [mem 0x00000000-0x0000ffff] (contains BAR2 for 4 VFs)
  135. pci 0000:00:03.1: PCI bridge to [bus 26]
  136. pci 0000:00:03.1: bridge window [mem 0xf7a00000-0xf7afffff]
  137. pci 0000:27:00.0: [1022:148a] type 00 class 0x130000
  138. pci 0000:27:00.0: enabling Extended Tags
  139. pci 0000:00:07.1: PCI bridge to [bus 27]
  140. pci 0000:28:00.0: [1022:1485] type 00 class 0x130000
  141. pci 0000:28:00.0: enabling Extended Tags
  142. pci 0000:28:00.1: [1022:1486] type 00 class 0x108000
  143. pci 0000:28:00.1: reg 0x18: [mem 0xf7600000-0xf76fffff]
  144. pci 0000:28:00.1: reg 0x24: [mem 0xf7708000-0xf7709fff]
  145. pci 0000:28:00.1: enabling Extended Tags
  146. pci 0000:28:00.3: [1022:149c] type 00 class 0x0c0330
  147. pci 0000:28:00.3: reg 0x10: [mem 0xf7500000-0xf75fffff 64bit]
  148. pci 0000:28:00.3: enabling Extended Tags
  149. pci 0000:28:00.3: PME# supported from D0 D3hot D3cold
  150. pci 0000:28:00.4: [1022:1487] type 00 class 0x040300
  151. pci 0000:28:00.4: reg 0x10: [mem 0xf7700000-0xf7707fff]
  152. pci 0000:28:00.4: enabling Extended Tags
  153. pci 0000:28:00.4: PME# supported from D0 D3hot D3cold
  154. pci 0000:00:08.1: PCI bridge to [bus 28]
  155. pci 0000:00:08.1: bridge window [mem 0xf7500000-0xf77fffff]
  156. pci 0000:30:00.0: [1022:7901] type 00 class 0x010601
  157. pci 0000:30:00.0: reg 0x24: [mem 0xf7900000-0xf79007ff]
  158. pci 0000:30:00.0: enabling Extended Tags
  159. pci 0000:30:00.0: PME# supported from D3hot D3cold
  160. pci 0000:00:08.2: PCI bridge to [bus 30]
  161. pci 0000:00:08.2: bridge window [mem 0xf7900000-0xf79fffff]
  162. pci 0000:31:00.0: [1022:7901] type 00 class 0x010601
  163. pci 0000:31:00.0: reg 0x24: [mem 0xf7800000-0xf78007ff]
  164. pci 0000:31:00.0: enabling Extended Tags
  165. pci 0000:31:00.0: PME# supported from D3hot D3cold
  166. pci 0000:00:08.3: PCI bridge to [bus 31]
  167. pci 0000:00:08.3: bridge window [mem 0xf7800000-0xf78fffff]
  168. ### 热插拔相关,linux-git\drivers\pnp\pnpacpi\core.c 中打印
  169. pnp: PnP ACPI init
  170. system 00:00: [mem 0xf8000000-0xfbffffff] has been reserved
  171. system 00:00: Plug and Play ACPI device, IDs PNP0c01 (active)
  172. system 00:01: [mem 0xfd000000-0xfd0fffff] has been reserved
  173. system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active)
  174. pnp 00:02: Plug and Play ACPI device, IDs PNP0b00 (active)
  175. ### 在 system_pnp_driver的probe中获取资源,
  176. system 00:03: [io 0x0a00-0x0a0f] has been reserved
  177. system 00:03: [io 0x0a10-0x0a1f] has been reserved
  178. system 00:03: [io 0x0a20-0x0a2f] has been reserved
  179. system 00:03: [io 0x0a30-0x0a3f] has been reserved
  180. system 00:03: Plug and Play ACPI device, IDs PNP0c02 (active)
  181. pnp 00:04: [dma 0 disabled]
  182. pnp 00:04: Plug and Play ACPI device, IDs PNP0400 (active)
  183. pnp 00:05: [dma 0 disabled]
  184. pnp 00:05: Plug and Play ACPI device, IDs PNP0501 (active)
  185. system 00:06: [io 0x04d0-0x04d1] has been reserved
  186. system 00:06: [io 0x040b] has been reserved
  187. system 00:06: [io 0x04d6] has been reserved
  188. system 00:06: [io 0x0c00-0x0c01] has been reserved
  189. system 00:06: [io 0x0c14] has been reserved
  190. system 00:06: [io 0x0c50-0x0c51] has been reserved
  191. system 00:06: [io 0x0c52] has been reserved
  192. system 00:06: [io 0x0c6c] has been reserved
  193. system 00:06: [io 0x0c6f] has been reserved
  194. system 00:06: [io 0x0cd0-0x0cd1] has been reserved
  195. system 00:06: [io 0x0cd2-0x0cd3] has been reserved
  196. system 00:06: [io 0x0cd4-0x0cd5] has been reserved
  197. system 00:06: [io 0x0cd6-0x0cd7] has been reserved
  198. system 00:06: [io 0x0cd8-0x0cdf] has been reserved
  199. system 00:06: [io 0x0800-0x089f] has been reserved
  200. system 00:06: [io 0x0b00-0x0b0f] has been reserved
  201. system 00:06: [io 0x0b20-0x0b3f] has been reserved
  202. system 00:06: [io 0x0900-0x090f] has been reserved
  203. system 00:06: [io 0x0910-0x091f] has been reserved
  204. system 00:06: [mem 0xfec00000-0xfec00fff] could not be reserved
  205. system 00:06: [mem 0xfec01000-0xfec01fff] could not be reserved
  206. system 00:06: [mem 0xfedc0000-0xfedc0fff] has been reserved
  207. system 00:06: [mem 0xfee00000-0xfee00fff] has been reserved
  208. system 00:06: [mem 0xfed80000-0xfed8ffff] could not be reserved
  209. system 00:06: [mem 0xfec10000-0xfec10fff] has been reserved
  210. system 00:06: [mem 0xff000000-0xffffffff] has been reserved
  211. system 00:06: Plug and Play ACPI device, IDs PNP0c02 (active)
  212. pnp: PnP ACPI: found 7 devices
  213. ### ???
  214. ### 这部分没跟踪到,主要是 pci_claim_resource 和 pci_assign_resource, 没看到谁调用
  215. ### 其实在 pcibios_assign_resources->pcibios_allocate_rom_resources 中会操作option ROM相关
  216. ### fs_initcall(pcibios_assign_resources);
  217. clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
  218. pci 0000:26:00.0: can't claim BAR 6 [mem 0xfffff800-0xffffffff pref]: no compatible bridge window
  219. pci_bus 0000:00: max bus depth: 3 pci_try_num: 4
  220. pci 0000:00:01.1: PCI bridge to [bus 01]
  221. pci 0000:00:01.1: bridge window [mem 0xf7b00000-0xf7bfffff]
  222. pci 0000:20:00.0: PCI bridge to [bus 21]
  223. pci 0000:20:01.0: PCI bridge to [bus 22]
  224. pci 0000:20:01.0: bridge window [io 0xf000-0xffff]
  225. pci 0000:20:01.0: bridge window [mem 0xf7200000-0xf72fffff]
  226. pci 0000:20:04.0: PCI bridge to [bus 25]
  227. pci 0000:20:04.0: bridge window [io 0xe000-0xefff]
  228. pci 0000:20:04.0: bridge window [mem 0xf6000000-0xf70fffff]
  229. pci 0000:20:04.0: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  230. pci 0000:03:00.2: PCI bridge to [bus 20-25]
  231. pci 0000:03:00.2: bridge window [io 0xe000-0xffff]
  232. pci 0000:03:00.2: bridge window [mem 0xf6000000-0xf72fffff]
  233. pci 0000:03:00.2: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  234. pci 0000:00:01.3: PCI bridge to [bus 03-25]
  235. pci 0000:00:01.3: bridge window [io 0xe000-0xffff]
  236. pci 0000:00:01.3: bridge window [mem 0xf6000000-0xf73fffff]
  237. pci 0000:00:01.3: bridge window [mem 0xe0000000-0xf1ffffff 64bit pref]
  238. pci 0000:26:00.0: BAR 7: assigned [mem 0xf7a80000-0xf7a9ffff]
  239. pci 0000:26:00.1: BAR 7: assigned [mem 0xf7aa0000-0xf7abffff]
  240. pci 0000:26:00.0: BAR 9: assigned [mem 0xf7ac0000-0xf7acffff]
  241. pci 0000:26:00.1: BAR 9: assigned [mem 0xf7ad0000-0xf7adffff]
  242. pci 0000:26:00.0: BAR 6: assigned [mem 0xf7ae0000-0xf7ae07ff pref]
  243. pci 0000:00:03.1: PCI bridge to [bus 26]
  244. pci 0000:00:03.1: bridge window [mem 0xf7a00000-0xf7afffff]
  245. pci 0000:00:07.1: PCI bridge to [bus 27]
  246. pci 0000:00:08.1: PCI bridge to [bus 28]
  247. pci 0000:00:08.1: bridge window [mem 0xf7500000-0xf77fffff]
  248. pci 0000:00:08.2: PCI bridge to [bus 30]
  249. pci 0000:00:08.2: bridge window [mem 0xf7900000-0xf79fffff]
  250. pci 0000:00:08.3: PCI bridge to [bus 31]
  251. pci 0000:00:08.3: bridge window [mem 0xf7800000-0xf78fffff]
  252. pci_bus 0000:00: resource 4 [io 0x0000-0x03af window]
  253. pci_bus 0000:00: resource 5 [io 0x03e0-0x0cf7 window]
  254. pci_bus 0000:00: resource 6 [io 0x03b0-0x03df window]
  255. pci_bus 0000:00: resource 7 [io 0x0d00-0xffff window]
  256. pci_bus 0000:00: resource 8 [mem 0x000a0000-0x000bffff window]
  257. pci_bus 0000:00: resource 9 [mem 0x000c0000-0x000dffff window]
  258. pci_bus 0000:00: resource 10 [mem 0xe0000000-0xfec2ffff window]
  259. pci_bus 0000:00: resource 11 [mem 0xfee00000-0xffffffff window]
  260. pci_bus 0000:01: resource 1 [mem 0xf7b00000-0xf7bfffff]
  261. pci_bus 0000:03: resource 0 [io 0xe000-0xffff]
  262. pci_bus 0000:03: resource 1 [mem 0xf6000000-0xf73fffff]
  263. pci_bus 0000:03: resource 2 [mem 0xe0000000-0xf1ffffff 64bit pref]
  264. pci_bus 0000:20: resource 0 [io 0xe000-0xffff]
  265. pci_bus 0000:20: resource 1 [mem 0xf6000000-0xf72fffff]
  266. pci_bus 0000:20: resource 2 [mem 0xe0000000-0xf1ffffff 64bit pref]
  267. pci_bus 0000:22: resource 0 [io 0xf000-0xffff]
  268. pci_bus 0000:22: resource 1 [mem 0xf7200000-0xf72fffff]
  269. pci_bus 0000:25: resource 0 [io 0xe000-0xefff]
  270. pci_bus 0000:25: resource 1 [mem 0xf6000000-0xf70fffff]
  271. pci_bus 0000:25: resource 2 [mem 0xe0000000-0xf1ffffff 64bit pref]
  272. pci_bus 0000:26: resource 1 [mem 0xf7a00000-0xf7afffff]
  273. pci_bus 0000:28: resource 1 [mem 0xf7500000-0xf77fffff]
  274. pci_bus 0000:30: resource 1 [mem 0xf7900000-0xf79fffff]
  275. pci_bus 0000:31: resource 1 [mem 0xf7800000-0xf78fffff]
  276. NET: Registered protocol family 2
  277. ### 如果开启IOMMU,则给分配iommu group
  278. pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
  279. pci 0000:00:01.0: Adding to iommu group 0
  280. pci 0000:00:01.1: Adding to iommu group 1
  281. pci 0000:00:01.3: Adding to iommu group 2
  282. pci 0000:00:02.0: Adding to iommu group 3
  283. pci 0000:00:03.0: Adding to iommu group 4
  284. pci 0000:00:03.1: Adding to iommu group 5
  285. pci 0000:00:04.0: Adding to iommu group 6
  286. pci 0000:00:05.0: Adding to iommu group 7
  287. pci 0000:00:07.0: Adding to iommu group 8
  288. pci 0000:00:07.1: Adding to iommu group 9
  289. pci 0000:00:08.0: Adding to iommu group 10
  290. pci 0000:00:08.1: Adding to iommu group 11
  291. pci 0000:00:08.2: Adding to iommu group 12
  292. pci 0000:00:08.3: Adding to iommu group 13
  293. pci 0000:00:14.0: Adding to iommu group 14
  294. pci 0000:00:14.3: Adding to iommu group 14
  295. pci 0000:00:18.0: Adding to iommu group 15
  296. pci 0000:00:18.1: Adding to iommu group 15
  297. pci 0000:00:18.2: Adding to iommu group 15
  298. pci 0000:00:18.3: Adding to iommu group 15
  299. pci 0000:00:18.4: Adding to iommu group 15
  300. pci 0000:00:18.5: Adding to iommu group 15
  301. pci 0000:00:18.6: Adding to iommu group 15
  302. pci 0000:00:18.7: Adding to iommu group 15
  303. pci 0000:01:00.0: Adding to iommu group 16
  304. pci 0000:03:00.0: Adding to iommu group 17
  305. pci 0000:03:00.1: Adding to iommu group 17
  306. pci 0000:03:00.2: Adding to iommu group 17
  307. pci 0000:20:00.0: Adding to iommu group 17
  308. pci 0000:20:01.0: Adding to iommu group 17
  309. pci 0000:20:04.0: Adding to iommu group 17
  310. pci 0000:22:00.0: Adding to iommu group 17
  311. pci 0000:25:00.0: Adding to iommu group 17
  312. pci 0000:25:00.1: Adding to iommu group 17
  313. pci 0000:26:00.0: Adding to iommu group 18
  314. pci 0000:26:00.1: Adding to iommu group 18
  315. pci 0000:27:00.0: Adding to iommu group 19
  316. pci 0000:28:00.0: Adding to iommu group 20
  317. pci 0000:28:00.1: Adding to iommu group 21
  318. pci 0000:28:00.3: Adding to iommu group 22
  319. pci 0000:28:00.4: Adding to iommu group 23
  320. pci 0000:30:00.0: Adding to iommu group 24
  321. pci 0000:31:00.0: Adding to iommu group 25
  322. pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
  323. pci 0000:00:00.2: AMD-Vi: Extended features (0x58f77ef22294ade):