Would you know if host bridges are the same as PCI bridges? And any idea why I would have a dozen groups containing only a host bridge or a PCI bridge and nothing else?
Same thing on my threadripper, so many groups with no physical devices in them.
Not a kernel developer, but as I understand it host bridges provide connection between an external bus and the internal IO of the CPU. A PCI bridge is there to connect external devices or something like a SMBus to the PCI bus.
You can see some of this with the lstopo command. There’s a host bus connection to a root pci bridge, which connects to other buses and devices. There’s a host bridge for the root USB devices too as I recall.
If I had to guess…
Many of them are extras, available to attach devices or different busses to, that aren’t implemented at the motherboard level.
Both both AMD and Intel use the same architecture in both server and desktop chips. All these unused groups could be considered vestigial on a desktop platform.