qemu-e2k/scripts
Ben Widawsky 4f8db8711c hw/pxb: Allow creation of a CXL PXB (host bridge)
This works like adding a typical pxb device, except the name is
'pxb-cxl' instead of 'pxb-pcie'. An example command line would be as
follows:
  -device pxb-cxl,id=cxl.0,bus="pcie.0",bus_nr=1

A CXL PXB is backward compatible with PCIe. What this means in practice
is that an operating system that is unaware of CXL should still be able
to enumerate this topology as if it were PCIe.

One can create multiple CXL PXB host bridges, but a host bridge can only
be connected to the main root bus. Host bridges cannot appear elsewhere
in the topology.

Note that as of this patch, the ACPI tables needed for the host bridge
(specifically, an ACPI object in _SB named ACPI0016 and the CEDT) aren't
created. So while this patch internally creates it, it cannot be
properly used by an operating system or other system software.

Also necessary is to add an exception to scripts/device-crash-test
similar to that for exiting pxb as both must created on a PCIexpress
host bus.

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>
Message-Id: <20220429144110.25167-15-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:36 -04:00
..
ci
coccinelle
codeconverter
coverity-scan
kvm
modules
oss-fuzz
performance
qapi
qemu-guest-agent
qemugdb
qmp
simplebench
tracetool
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py
analyze-inclusions
analyze-migration.py
archive-source.sh
block-coroutine-wrapper.py
check_sparse.py
checkpatch.pl
clean-header-guards.pl
clean-includes
cleanup-trace-events.pl
cocci-macro-file.h
cpu-x86-uarch-abi.py
decodetree.py
device-crash-test hw/pxb: Allow creation of a CXL PXB (host bridge) 2022-05-13 06:13:36 -04:00
disas-objdump.pl
dump-guest-memory.py
entitlement.sh
extract-vsssdk-headers
feature_to_c.sh
fix-multiline-comments.sh
gensyscalls.sh
get_maintainer.pl
git-submodule.sh
git.orderfile
hxtool
kernel-doc
make-config-poison.sh
make-release
meson-buildoptions.py
meson-buildoptions.sh
meson.build
minikconf.py
modinfo-collect.py
modinfo-generate.py
mtest2make.py
nsis.py
qapi-gen.py
qemu-binfmt-conf.sh
qemu-gdb.py
qemu-stamp.py
qemu-trace-stap
qemu-version.sh
refresh-pxe-roms.sh
render_block_graph.py
replay-dump.py
shaderinclude.pl
signrom.py
simpletrace.py
test-driver.py
tracetool.py
u2f-setup-gen.py
undefsym.py
update-linux-headers.sh
update-mips-syscall-args.sh
update-syscalltbl.sh
userfaultfd-wrlat.py
vmstate-static-checker.py
xen-detect.c