qemu/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 build: move vhost-scsi configuration to Kconfig 2022-05-07 07:46:58 +02:00
coccinelle scripts/coccinelle: New use-g_new-etc.cocci 2022-03-21 15:44:44 +01:00
codeconverter
coverity-scan Replacing CONFIG_VNC_PNG with CONFIG_PNG 2022-04-27 07:50:28 +02:00
kvm vmxcap: add tertiary execution controls 2022-05-12 14:23:19 +02:00
modules
oss-fuzz tests: move libqtest.h back under qtest/ 2022-05-03 15:16:51 +04:00
performance
qapi qapi-schema: support alternates with array type 2022-04-21 10:11:25 +02:00
qemu-guest-agent
qemugdb scripts/gdb: implement 'qemu bt' 2021-01-12 12:38:03 +01:00
qmp python: rename qemu.aqmp to qemu.qmp 2022-04-21 11:01:00 -04:00
simplebench python: rename qemu.aqmp to qemu.qmp 2022-04-21 11:01:00 -04:00
tracetool trace: fix compilation with lttng-ust >= 2.13 2022-04-01 13:06:07 +02:00
analyse-9p-simpletrace.py
analyse-locks-simpletrace.py
analyze-inclusions scripts/analyze-inclusions: drop qemu-common.h from analysis 2022-04-21 16:56:55 +04:00
analyze-migration.py analyze-migration.py: fix extract contents ('-x') errors 2021-10-23 20:28:56 +02:00
archive-source.sh
block-coroutine-wrapper.py block-coroutine-wrapper.py: support BlockBackend first argument 2021-10-15 15:51:33 -05:00
check_sparse.py
checkpatch.pl checkpatch: fix g_malloc check 2022-05-12 12:07:05 +02:00
clean-header-guards.pl
clean-includes
cleanup-trace-events.pl
cocci-macro-file.h compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
cpu-x86-uarch-abi.py python: rename qemu.aqmp to qemu.qmp 2022-04-21 11:01:00 -04:00
decodetree.py decodetree: Extend argument set syntax to allow types 2021-05-01 11:45:35 -07:00
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 scripts/entitlement.sh: Use backward-compatible cp flags 2021-11-30 22:25:58 +01:00
extract-vsssdk-headers
feature_to_c.sh
fix-multiline-comments.sh docs: move CODING_STYLE into the developer documentation 2021-02-24 11:05:21 +00:00
gensyscalls.sh Hexagon (linux-user/hexagon) Linux user emulation 2021-02-18 07:48:22 -08:00
get_maintainer.pl get_maintainer: update repo URL to GitLab 2021-02-09 20:53:56 +00:00
git-submodule.sh configure: replace --enable/disable-git-update with --with-git-submodules 2021-01-29 17:07:53 +00:00
git.orderfile
hxtool
kernel-doc scripts/kernel-doc: strip QEMU_ from function definitions 2021-03-24 14:24:40 +00:00
make-config-poison.sh configure, meson: move config-poison.h to meson 2022-01-12 14:09:06 +01:00
make-release roms/edk2: Only initialize required submodules 2021-10-20 16:26:19 -07:00
meson-buildoptions.py meson: pass more options directly as -D 2022-05-07 07:46:58 +02:00
meson-buildoptions.sh configure, meson: move vhost options to Meson 2022-05-07 07:46:59 +02:00
meson.build trace: move configuration from configure to Meson 2021-10-14 09:50:56 +02:00
minikconf.py
modinfo-collect.py scripts/modinfo-collect: remove unused/dead code 2022-03-22 14:46:17 +04:00
modinfo-generate.py modules: check if all dependencies can be satisfied 2021-07-09 18:20:27 +02:00
mtest2make.py tests: Do not treat the iotests as separate meson test target anymore 2022-03-22 09:40:54 +01:00
nsis.py nsis installer: Fix mouse-over descriptions for emulators 2022-03-18 10:55:15 +00:00
qapi-gen.py
qemu-binfmt-conf.sh qemu-binfmt-conf.sh: mips: allow nonzero EI_ABIVERSION, distinguish o32 and n32 2022-03-29 00:51:55 +02:00
qemu-gdb.py scripts/gdb: implement 'qemu bt' 2021-01-12 12:38:03 +01:00
qemu-stamp.py meson, configure: move --with-pkgversion, CONFIG_STAMP to meson 2022-05-07 07:46:58 +02:00
qemu-trace-stap qemu-trace-stap: changing SYSTEMTAP_TAPSET considered harmful. 2021-07-12 17:37:06 +01:00
qemu-version.sh
refresh-pxe-roms.sh
render_block_graph.py python: rename qemu.aqmp to qemu.qmp 2022-04-21 11:01:00 -04:00
replay-dump.py
shaderinclude.pl
signrom.py
simpletrace.py docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
test-driver.py
tracetool.py
u2f-setup-gen.py
undefsym.py
update-linux-headers.sh headers: Add pvpanic.h 2022-03-06 05:08:23 -05:00
update-mips-syscall-args.sh linux-user, mips: update syscall-args-o32.c.inc to Linux v5.13 2021-07-13 13:59:59 +02:00
update-syscalltbl.sh
userfaultfd-wrlat.py migration: introduce 'userfaultfd-wrlat.py' script 2021-02-08 11:19:51 +00:00
vmstate-static-checker.py
xen-detect.c meson, configure: move Xen detection to meson 2022-05-07 07:46:58 +02:00