qemu-e2k/hw/pci
Ben Widawsky cf04aba2a9 hw/pci/cxl: Add a CXL component type (interface)
A CXL component is a hardware entity that implements CXL component
registers from the CXL 2.0 spec (8.2.3). Currently these represent 3
general types.
1. Host Bridge
2. Ports (root, upstream, downstream)
3. Devices (memory, other)

A CXL component can be conceptually thought of as a PCIe device with
extra functionality when enumerated and enabled. For this reason, CXL
does here, and will continue to add on to existing PCI code paths.

Host bridges will typically need to be handled specially and so they can
implement this newly introduced interface or not. All other components
should implement this interface. Implementing this interface allows the
core PCI code to treat these devices as special where appropriate.

Signed-off-by: Ben Widawsky <ben.widawsky@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Adam Manzanares <a.manzanares@samsung.com>
Message-Id: <20220429144110.25167-2-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2022-05-13 06:13:35 -04:00
..
Kconfig kconfig: add CONFIG_MSI_NONBROKEN 2019-03-18 09:39:57 +01:00
meson.build pcie: Add support for Single Root I/O Virtualization (SR/IOV) 2022-03-06 05:08:23 -05:00
msi.c pci/msi: export msi_is_masked() 2019-02-05 10:58:33 -05:00
msix.c migration: Replace migration's JSON writer by the general one 2020-12-19 10:39:16 +01:00
pci-stub.c qapi: Extract PCI commands to 'pci.json' 2020-09-29 15:41:36 +02:00
pci.c hw/pci/cxl: Add a CXL component type (interface) 2022-05-13 06:13:35 -04:00
pci_bridge.c pci: fix PCI resource reserve capability on BE 2021-10-20 06:18:17 -04:00
pci_host.c trace-events,pci: unify trace events format 2022-01-07 05:19:55 -05:00
pcie.c pcie: Don't try triggering a LSI when not defined 2022-04-20 18:00:30 -03:00
pcie_aer.c pcie: Don't try triggering a LSI when not defined 2022-04-20 18:00:30 -03:00
pcie_host.c Do not include exec/address-spaces.h if it's not really necessary 2021-05-02 17:24:51 +02:00
pcie_port.c pcie: rename 'native-hotplug' to 'x-native-hotplug' 2021-11-15 09:44:46 -05:00
pcie_sriov.c Use g_new() & friends where that makes obvious sense 2022-03-21 15:44:44 +01:00
shpc.c pci/shpc: don't push attention button when ejecting powered-off device 2021-01-13 09:06:37 -05:00
slotid_cap.c pci: Convert shpc_init() to Error 2017-07-03 22:29:49 +03:00
trace-events pcie: Add support for Single Root I/O Virtualization (SR/IOV) 2022-03-06 05:08:23 -05:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00