History log of /openbmc/qemu/target/riscv/ (Results 126 – 150 of 1666)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
57020a4609-Jan-2024 Irina Ryapolova <irina.ryapolova@syntacore.com>

target/riscv: FIX xATP_MODE validation

The SATP register is an SXLEN-bit read/write WARL register. It means that CSR fields are only defined
for a subset of bit encodings, but allow any value to be

target/riscv: FIX xATP_MODE validation

The SATP register is an SXLEN-bit read/write WARL register. It means that CSR fields are only defined
for a subset of bit encodings, but allow any value to be written while guaranteeing to return a legal
value whenever read (See riscv-privileged-20211203, SATP CSR).

For example on rv64 we are trying to write to SATP CSR val = 0x1000000000000000 (SATP_MODE = 1 - Reserved for standard use)
and after that we are trying to read SATP_CSR. We read from the SATP CSR value = 0x1000000000000000, which is not a correct
operation (return illegal value).

Signed-off-by: Irina Ryapolova <irina.ryapolova@syntacore.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240109145923.37893-1-irina.ryapolova@syntacore.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

adb4975215-Feb-2024 Andrew Jones <ajones@ventanamicro.com>

target/riscv: Promote svade to a normal extension

Named features are extensions which don't make sense for users to
control and are therefore not exposed on the command line. However,
svade is an ex

target/riscv: Promote svade to a normal extension

Named features are extensions which don't make sense for users to
control and are therefore not exposed on the command line. However,
svade is an extension which makes sense for users to control, so treat
it like a "normal" extension. The default is false, even for the max
cpu type, since QEMU has always implemented hardware A/D PTE bit
updating, so users must opt into svade (or get it from a CPU type
which enables it by default).

Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240215223955.969568-7-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

70d22fd915-Feb-2024 Andrew Jones <ajones@ventanamicro.com>

target/riscv: Gate hardware A/D PTE bit updating

Gate hardware A/D PTE bit updating on {m,h}envcfg.ADUE and only
enable menvcfg.ADUE on reset if svade has not been selected. Now
that we also conside

target/riscv: Gate hardware A/D PTE bit updating

Gate hardware A/D PTE bit updating on {m,h}envcfg.ADUE and only
enable menvcfg.ADUE on reset if svade has not been selected. Now
that we also consider svade, we have four possible configurations:

1) !svade && !svadu
use hardware updating and there's no way to disable it
(the default, which maintains past behavior. Maintaining
the default, even with !svadu is a change that fixes [1])

2) !svade && svadu
use hardware updating, but also provide {m,h}envcfg.ADUE,
allowing software to switch to exception mode
(being able to switch is a change which fixes [1])

3) svade && !svadu
use exception mode and there's no way to switch to hardware
updating
(this behavior change fixes [2])

4) svade && svadu
use exception mode, but also provide {m,h}envcfg.ADUE,
allowing software to switch to hardware updating
(this behavior change fixes [2])

Fixes: 0af3f115e68e ("target/riscv: Add *envcfg.HADE related check in address translation") [1]
Fixes: 48531f5adb2a ("target/riscv: implement svade") [2]
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240215223955.969568-6-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

148189ff15-Feb-2024 Andrew Jones <ajones@ventanamicro.com>

target/riscv: Reset henvcfg to zero

The hypervisor should decide what it wants to enable. Zero all
configuration enable bits on reset.

Also, commit ed67d63798f2 ("target/riscv: Update CSR bits name

target/riscv: Reset henvcfg to zero

The hypervisor should decide what it wants to enable. Zero all
configuration enable bits on reset.

Also, commit ed67d63798f2 ("target/riscv: Update CSR bits name for
svadu extension") missed one reference to 'hade'. Change it now.

Fixes: 0af3f115e68e ("target/riscv: Add *envcfg.HADE related check in address translation")
Fixes: ed67d63798f2 ("target/riscv: Update CSR bits name for svadu extension")
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240215223955.969568-5-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

a0952c1515-Feb-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add remaining named features

The RVA22U64 and RVA22S64 profiles mandates certain extensions that,
until now, we were implying that they were available.

We can't do this anymore since

target/riscv: add remaining named features

The RVA22U64 and RVA22S64 profiles mandates certain extensions that,
until now, we were implying that they were available.

We can't do this anymore since named features also has a riscv,isa
entry. Let's add them to riscv_cpu_named_features[].

Instead of adding one bool for each named feature that we'll always
implement, i.e. can't be turned off, add a 'ext_always_enabled' bool in
cpu->cfg. This bool will be set to 'true' in TCG accel init, and all
named features will point to it. This also means that KVM won't see
these features as always enable, which is our intention.

If any accelerator adds support to disable one of these features, we'll
have to promote them to regular extensions and allow users to disable it
via command line.

After this patch, here's the riscv,isa from a buildroot using the
'rva22s64' CPU:

# cat /proc/device-tree/cpus/cpu@0/riscv,isa
rv64imafdc_zic64b_zicbom_zicbop_zicboz_ziccamoa_ziccif_zicclsm_ziccrse_
zicntr_zicsr_zifencei_zihintpause_zihpm_za64rs_zfhmin_zca_zcd_zba_zbb_
zbs_zkt_ssccptr_sscounterenw_sstvala_sstvecd_svade_svinval_svpbmt#

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Message-ID: <20240215223955.969568-4-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

3b80222615-Feb-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add riscv,isa to named features

Further discussions after the introduction of rva22 support in QEMU
revealed that what we've been calling 'named features' are actually
regular extensio

target/riscv: add riscv,isa to named features

Further discussions after the introduction of rva22 support in QEMU
revealed that what we've been calling 'named features' are actually
regular extensions, with their respective riscv,isa DTs. This is
clarified in [1]. [2] is a bug tracker asking for the profile spec to be
less cryptic about it.

As far as QEMU goes we understand extensions as something that the user
can enable/disable in the command line. This isn't the case for named
features, so we'll have to reach a middle ground.

We'll keep our existing nomenclature 'named features' to refer to any
extension that the user can't control in the command line. We'll also do
the following:

- 'svade' and 'zic64b' flags are renamed to 'ext_svade' and
'ext_zic64b'. 'ext_svade' and 'ext_zic64b' now have riscv,isa strings and
priv_spec versions;

- skip name feature check in cpu_bump_multi_ext_priv_ver(). Now that
named features have a riscv,isa and an entry in isa_edata_arr[] we
don't need to gate the call to cpu_cfg_ext_get_min_version() anymore.

[1] https://github.com/riscv/riscv-profiles/issues/121
[2] https://github.com/riscv/riscv-profiles/issues/142

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240215223955.969568-3-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

4f6473ad15-Feb-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/tcg: set 'mmu' with 'satp' in cpu_set_profile()

Recent changes in options handling removed the 'mmu' default the bare
CPUs had, meaning that we must enable 'mmu' by hand when using the

target/riscv/tcg: set 'mmu' with 'satp' in cpu_set_profile()

Recent changes in options handling removed the 'mmu' default the bare
CPUs had, meaning that we must enable 'mmu' by hand when using the
rva22s64 profile CPU.

Given that this profile is setting a satp mode, it already implies that
we need a 'mmu'. Enable the 'mmu' in this case.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240215223955.969568-2-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

3011c1dd07-Feb-2024 Jason Chien <jason.chien@sifive.com>

target/riscv: Update $ra with current $pc in trans_cm_jalt()

The original implementation sets $pc to the address read from the jump
vector table first and links $ra with the address of the next inst

target/riscv: Update $ra with current $pc in trans_cm_jalt()

The original implementation sets $pc to the address read from the jump
vector table first and links $ra with the address of the next instruction
after the updated $pc. After jumping to the updated $pc and executing the
next ret instruction, the program jumps to $ra, which is in the same
function currently executing, which results in an infinite loop.
This commit stores the jump address in a temporary, updates $ra with the
current $pc, and copies the temporary to $pc.

Signed-off-by: Jason Chien <jason.chien@sifive.com>
Reviewed-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20240207081820.28559-1-jason.chien@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/cirrus.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/plugin-helpers.h
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/bsd-user/bsd-file.h
/openbmc/qemu/bsd-user/freebsd/os-proc.h
/openbmc/qemu/bsd-user/main.c
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/chardev/char-socket.c
/openbmc/qemu/contrib/plugins/cache.c
/openbmc/qemu/contrib/plugins/execlog.c
/openbmc/qemu/contrib/plugins/hotblocks.c
/openbmc/qemu/contrib/plugins/howvec.c
/openbmc/qemu/cpu-target.c
/openbmc/qemu/disas/disas.c
/openbmc/qemu/disas/hppa.c
/openbmc/qemu/disas/riscv.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/conf.py
/openbmc/qemu/docs/devel/migration/features.rst
/openbmc/qemu/docs/devel/migration/main.rst
/openbmc/qemu/docs/devel/migration/mapped-ram.rst
/openbmc/qemu/docs/devel/multi-thread-tcg.rst
/openbmc/qemu/docs/devel/qapi-code-gen.rst
/openbmc/qemu/docs/devel/tcg-plugins.rst
/openbmc/qemu/docs/devel/writing-monitor-commands.rst
/openbmc/qemu/docs/system/arm/b-l475e-iot01a.rst
/openbmc/qemu/docs/system/arm/raspi.rst
/openbmc/qemu/docs/user/main.rst
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/internals.h
/openbmc/qemu/gdbstub/user-target.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/b-l475e-iot01a.c
/openbmc/qemu/hw/arm/bcm2835_peripherals.c
/openbmc/qemu/hw/arm/stm32l4x5_soc.c
/openbmc/qemu/hw/char/pl011.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/i2c/Kconfig
/openbmc/qemu/hw/i2c/bcm2835_i2c.c
/openbmc/qemu/hw/i2c/meson.build
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/ide-dev.c
/openbmc/qemu/hw/ide/ide-internal.h
/openbmc/qemu/hw/intc/Kconfig
/openbmc/qemu/hw/loongarch/acpi-build.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/misc/Kconfig
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/stm32l4x5_rcc.c
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/tpm/tpm_ppi.c
/openbmc/qemu/hw/usb/bus.c
/openbmc/qemu/hw/vfio/migration.c
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/virtio-balloon.c
/openbmc/qemu/include/disas/dis-asm.h
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/exec/gdbstub.h
/openbmc/qemu/include/exec/memattrs.h
/openbmc/qemu/include/exec/ramblock.h
/openbmc/qemu/include/gdbstub/user.h
/openbmc/qemu/include/hw/arm/bcm2835_peripherals.h
/openbmc/qemu/include/hw/arm/stm32l4x5_soc.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/i2c/bcm2835_i2c.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/ide/ide-dev.h
/openbmc/qemu/include/hw/loongarch/virt.h
/openbmc/qemu/include/hw/misc/stm32l4x5_rcc.h
/openbmc/qemu/include/hw/misc/stm32l4x5_rcc_internals.h
/openbmc/qemu/include/hw/vfio/vfio-common.h
/openbmc/qemu/include/hw/virtio/virtio-net.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/migration/misc.h
/openbmc/qemu/include/migration/qemu-file-types.h
/openbmc/qemu/include/qapi/type-helpers.h
/openbmc/qemu/include/qapi/util.h
/openbmc/qemu/include/qemu/atomic.h
/openbmc/qemu/include/qemu/bitops.h
/openbmc/qemu/include/qemu/notify.h
/openbmc/qemu/include/qemu/plugin.h
/openbmc/qemu/include/qemu/qemu-plugin.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/sysemu/sysemu.h
/openbmc/qemu/include/user/safe-syscall.h
/openbmc/qemu/io/channel-file.c
/openbmc/qemu/io/channel.c
/openbmc/qemu/linux-user/aarch64/cpu_loop.c
/openbmc/qemu/linux-user/arm/cpu_loop.c
/openbmc/qemu/linux-user/arm/signal.c
/openbmc/qemu/linux-user/cris/cpu_loop.c
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/hppa/signal.c
/openbmc/qemu/linux-user/linuxload.c
/openbmc/qemu/linux-user/loongarch64/target_syscall.h
/openbmc/qemu/linux-user/m68k/cpu_loop.c
/openbmc/qemu/linux-user/m68k/target_cpu.h
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/mips/cpu_loop.c
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/linux-user/nios2/cpu_loop.c
/openbmc/qemu/linux-user/ppc/signal.c
/openbmc/qemu/linux-user/qemu.h
/openbmc/qemu/linux-user/riscv/cpu_loop.c
/openbmc/qemu/linux-user/signal-common.h
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/linux-user/strace.c
/openbmc/qemu/linux-user/strace.list
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/linux-user/user-internals.h
/openbmc/qemu/linux-user/vm86.c
/openbmc/qemu/linux-user/xtensa/signal.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/exec.c
/openbmc/qemu/migration/fd.c
/openbmc/qemu/migration/fd.h
/openbmc/qemu/migration/file.c
/openbmc/qemu/migration/file.h
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/multifd-zlib.c
/openbmc/qemu/migration/multifd-zstd.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/options.h
/openbmc/qemu/migration/postcopy-ram.c
/openbmc/qemu/migration/postcopy-ram.h
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/ram.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/socket.c
/openbmc/qemu/migration/socket.h
/openbmc/qemu/migration/trace-events
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/pc-bios/README
/openbmc/qemu/pc-bios/meson.build
/openbmc/qemu/plugins/api.c
/openbmc/qemu/plugins/core.c
/openbmc/qemu/plugins/plugin.h
/openbmc/qemu/plugins/qemu-plugins.symbols
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/block.json
/openbmc/qemu/qapi/char.json
/openbmc/qemu/qapi/dump.json
/openbmc/qemu/qapi/machine-target.json
/openbmc/qemu/qapi/machine.json
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qapi/misc-target.json
/openbmc/qemu/qapi/misc.json
/openbmc/qemu/qapi/net.json
/openbmc/qemu/qapi/qapi-type-helpers.c
/openbmc/qemu/qapi/qdev.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qapi/run-state.json
/openbmc/qemu/qapi/tpm.json
/openbmc/qemu/qapi/transaction.json
/openbmc/qemu/qapi/ui.json
/openbmc/qemu/qapi/yank.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/roms/Makefile
/openbmc/qemu/scripts/qapi/parser.py
/openbmc/qemu/semihosting/arm-compat-semi.c
/openbmc/qemu/system/globals.c
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/alpha/cpu-param.h
/openbmc/qemu/target/arm/cpu-param.h
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/hppa/helper.c
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/op_helper.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/tcg/sysemu/excp_helper.c
/openbmc/qemu/target/i386/tcg/sysemu/misc_helper.c
/openbmc/qemu/target/i386/tcg/sysemu/svm_helper.c
/openbmc/qemu/target/loongarch/disas.c
/openbmc/qemu/target/ppc/cpu-param.h
insn_trans/trans_rvzce.c.inc
/openbmc/qemu/target/sparc/mmu_helper.c
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tests/plugin/bb.c
/openbmc/qemu/tests/plugin/inline.c
/openbmc/qemu/tests/plugin/insn.c
/openbmc/qemu/tests/plugin/mem.c
/openbmc/qemu/tests/plugin/meson.build
/openbmc/qemu/tests/qapi-schema/doc-good.json
/openbmc/qemu/tests/qapi-schema/doc-good.out
/openbmc/qemu/tests/qapi-schema/doc-good.txt
/openbmc/qemu/tests/qapi-schema/doc-invalid-return.err
/openbmc/qemu/tests/qapi-schema/doc-invalid-return2.err
/openbmc/qemu/tests/qapi-schema/doc-invalid-return2.json
/openbmc/qemu/tests/qapi-schema/doc-invalid-return2.out
/openbmc/qemu/tests/qapi-schema/meson.build
/openbmc/qemu/tests/qtest/bcm2835-i2c-test.c
/openbmc/qemu/tests/qtest/libqos/qgraph.h
/openbmc/qemu/tests/qtest/libqos/virtio.c
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/stm32l4x5_rcc-test.c
/openbmc/qemu/tests/tcg/Makefile.target
/openbmc/qemu/tests/tcg/alpha/Makefile.target
/openbmc/qemu/tests/tcg/arm/Makefile.target
/openbmc/qemu/tests/tcg/hppa/Makefile.target
/openbmc/qemu/tests/tcg/i386/Makefile.target
/openbmc/qemu/tests/tcg/m68k/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/follow-fork-mode.c
/openbmc/qemu/tests/tcg/multiarch/gdbstub/follow-fork-mode-child.py
/openbmc/qemu/tests/tcg/multiarch/gdbstub/follow-fork-mode-parent.py
/openbmc/qemu/tests/tcg/multiarch/linux/linux-madvise.c
/openbmc/qemu/tests/tcg/multiarch/linux/linux-shmat-maps.c
/openbmc/qemu/tests/tcg/sh4/Makefile.target
/openbmc/qemu/tests/unit/test-util-sockets.c
/openbmc/qemu/ui/spice-core.c
/openbmc/qemu/util/notify.c
eb37086f27-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

gdbstub: Add members to identify registers to GDBFeature

These members will be used to help plugins to identify registers.
The added members in instances of GDBFeature dynamically generated by
CPUs

gdbstub: Add members to identify registers to GDBFeature

These members will be used to help plugins to identify registers.
The added members in instances of GDBFeature dynamically generated by
CPUs will be filled in later changes.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20231213-gdb-v17-10-777047380591@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-15-alex.bennee@linaro.org>

show more ...

f1a5287f27-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

hw/core/cpu: Remove gdb_get_dynamic_xml member

This function is no longer used.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id:

hw/core/cpu: Remove gdb_get_dynamic_xml member

This function is no longer used.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231213-gdb-v17-9-777047380591@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-14-alex.bennee@linaro.org>

show more ...

ecd6f6a827-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

gdbstub: Infer number of core registers from XML

GDBFeature has the num_regs member so use it where applicable to
remove magic numbers.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Messa

gdbstub: Infer number of core registers from XML

GDBFeature has the num_regs member so use it where applicable to
remove magic numbers.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20231213-gdb-v17-8-777047380591@daynix.com>
[AJB: remove core reg check from microblaze read reg]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-13-alex.bennee@linaro.org>

show more ...

6626015927-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

gdbstub: Change gdb_get_reg_cb and gdb_set_reg_cb

Align the parameters of gdb_get_reg_cb and gdb_set_reg_cb with the
gdb_read_register and gdb_write_register members of CPUClass to allow
to unify th

gdbstub: Change gdb_get_reg_cb and gdb_set_reg_cb

Align the parameters of gdb_get_reg_cb and gdb_set_reg_cb with the
gdb_read_register and gdb_write_register members of CPUClass to allow
to unify the logic to access registers of the core and coprocessors
in the future.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231213-gdb-v17-6-777047380591@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-11-alex.bennee@linaro.org>

show more ...

ac1e867127-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

gdbstub: Use GDBFeature for gdb_register_coprocessor

This is a tree-wide change to introduce GDBFeature parameter to
gdb_register_coprocessor(). The new parameter just replaces num_regs
and xml para

gdbstub: Use GDBFeature for gdb_register_coprocessor

This is a tree-wide change to introduce GDBFeature parameter to
gdb_register_coprocessor(). The new parameter just replaces num_regs
and xml parameters for now. GDBFeature will be utilized to simplify XML
lookup in a following change.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Acked-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231213-gdb-v17-4-777047380591@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-9-alex.bennee@linaro.org>

show more ...

33a2491027-Feb-2024 Akihiko Odaki <akihiko.odaki@daynix.com>

target/riscv: Use GDBFeature for dynamic XML

In preparation for a change to use GDBFeature as a parameter of
gdb_register_coprocessor(), convert the internal representation of
dynamic feature from p

target/riscv: Use GDBFeature for dynamic XML

In preparation for a change to use GDBFeature as a parameter of
gdb_register_coprocessor(), convert the internal representation of
dynamic feature from plain XML to GDBFeature.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20231213-gdb-v17-3-777047380591@daynix.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240227144335.1196131-8-alex.bennee@linaro.org>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/build.yml
/openbmc/qemu/.gitlab-ci.d/container-cross.yml
/openbmc/qemu/.gitlab-ci.d/crossbuilds.yml
/openbmc/qemu/.gitlab-ci.d/windows.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/Kconfig
/openbmc/qemu/accel/tcg/ldst_atomicity.c.inc
/openbmc/qemu/audio/meson.build
/openbmc/qemu/chardev/char-parallel.c
/openbmc/qemu/chardev/char-socket.c
/openbmc/qemu/chardev/meson.build
/openbmc/qemu/configs/devices/arm-softmmu/default.mak
/openbmc/qemu/configure
/openbmc/qemu/contrib/vhost-user-gpu/virgl.c
/openbmc/qemu/cpu-target.c
/openbmc/qemu/disas/hppa.c
/openbmc/qemu/docs/about/build-platforms.rst
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/devel/ci-jobs.rst.inc
/openbmc/qemu/docs/devel/docs.rst
/openbmc/qemu/docs/devel/migration/main.rst
/openbmc/qemu/docs/devel/qapi-code-gen.rst
/openbmc/qemu/docs/devel/qom.rst
/openbmc/qemu/docs/devel/reset.rst
/openbmc/qemu/docs/devel/testing.rst
/openbmc/qemu/docs/interop/prl-xml.txt
/openbmc/qemu/docs/interop/vhost-user.rst
/openbmc/qemu/docs/sphinx/qapidoc.py
/openbmc/qemu/docs/system/arm/mps2.rst
/openbmc/qemu/docs/system/arm/raspi.rst
/openbmc/qemu/docs/system/device-emulation.rst
/openbmc/qemu/docs/system/devices/canokey.rst
/openbmc/qemu/docs/system/devices/cxl.rst
/openbmc/qemu/docs/system/devices/vhost-user-input.rst
/openbmc/qemu/docs/system/devices/vhost-user-rng.rst
/openbmc/qemu/docs/system/devices/vhost-user.rst
/openbmc/qemu/docs/system/keys.rst.inc
/openbmc/qemu/hw/acpi/cpu_hotplug.c
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/aspeed_ast10x0.c
/openbmc/qemu/hw/arm/aspeed_ast2400.c
/openbmc/qemu/hw/arm/aspeed_ast2600.c
/openbmc/qemu/hw/arm/aspeed_soc_common.c
/openbmc/qemu/hw/arm/bcm2835_peripherals.c
/openbmc/qemu/hw/arm/bcm2836.c
/openbmc/qemu/hw/arm/bcm2838.c
/openbmc/qemu/hw/arm/bcm2838_peripherals.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/meson.build
/openbmc/qemu/hw/arm/mps3r.c
/openbmc/qemu/hw/arm/npcm7xx.c
/openbmc/qemu/hw/arm/raspi.c
/openbmc/qemu/hw/arm/raspi4b.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/smmu-common.c
/openbmc/qemu/hw/arm/smmuv3-internal.h
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/stm32l4x5_soc.c
/openbmc/qemu/hw/arm/trace-events
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/xlnx-versal-virt.c
/openbmc/qemu/hw/block/fdc-internal.h
/openbmc/qemu/hw/block/fdc-isa.c
/openbmc/qemu/hw/block/fdc-sysbus.c
/openbmc/qemu/hw/block/m25p80.c
/openbmc/qemu/hw/block/m25p80_sfdp.c
/openbmc/qemu/hw/block/m25p80_sfdp.h
/openbmc/qemu/hw/block/tc58128.c
/openbmc/qemu/hw/char/grlib_apbuart.c
/openbmc/qemu/hw/char/parallel-isa.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/serial-isa.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/meson.build
/openbmc/qemu/hw/core/reset.c
/openbmc/qemu/hw/core/resetcontainer.c
/openbmc/qemu/hw/core/sysbus.c
/openbmc/qemu/hw/cxl/cxl-cdat.c
/openbmc/qemu/hw/cxl/cxl-component-utils.c
/openbmc/qemu/hw/cxl/cxl-device-utils.c
/openbmc/qemu/hw/cxl/cxl-events.c
/openbmc/qemu/hw/cxl/cxl-mailbox-utils.c
/openbmc/qemu/hw/display/Kconfig
/openbmc/qemu/hw/display/exynos4210_fimd.c
/openbmc/qemu/hw/display/pl110.c
/openbmc/qemu/hw/display/virtio-gpu-rutabaga.c
/openbmc/qemu/hw/display/virtio-gpu-virgl.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/dma/i82374.c
/openbmc/qemu/hw/dma/i8257.c
/openbmc/qemu/hw/gpio/bcm2838_gpio.c
/openbmc/qemu/hw/gpio/meson.build
/openbmc/qemu/hw/hppa/Kconfig
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i2c/smbus_slave.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/acpi-common.c
/openbmc/qemu/hw/i386/acpi-common.h
/openbmc/qemu/hw/i386/amd_iommu-stub.c
/openbmc/qemu/hw/i386/amd_iommu.c
/openbmc/qemu/hw/i386/amd_iommu.h
/openbmc/qemu/hw/i386/fw_cfg.c
/openbmc/qemu/hw/i386/fw_cfg.h
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/kvm/apic.c
/openbmc/qemu/hw/i386/kvm/ioapic.c
/openbmc/qemu/hw/i386/kvm/xen_evtchn.c
/openbmc/qemu/hw/i386/kvmvapic.c
/openbmc/qemu/hw/i386/meson.build
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/i386/pc_sysfw.c
/openbmc/qemu/hw/i386/port92.c
/openbmc/qemu/hw/i386/sgx.c
/openbmc/qemu/hw/i386/x86-iommu.c
/openbmc/qemu/hw/i386/x86.c
/openbmc/qemu/hw/i386/xen/xen_apic.c
/openbmc/qemu/hw/ide/Kconfig
/openbmc/qemu/hw/ide/ahci-allwinner.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/ahci_internal.h
/openbmc/qemu/hw/ide/atapi.c
/openbmc/qemu/hw/ide/cf.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/ich.c
/openbmc/qemu/hw/ide/ide-bus.c
/openbmc/qemu/hw/ide/ide-dev.c
/openbmc/qemu/hw/ide/ide-internal.h
/openbmc/qemu/hw/ide/ioport.c
/openbmc/qemu/hw/ide/isa.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/ide/meson.build
/openbmc/qemu/hw/ide/microdrive.c
/openbmc/qemu/hw/ide/mmio.c
/openbmc/qemu/hw/ide/pci.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/sii3112.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/input/meson.build
/openbmc/qemu/hw/input/pckbd.c
/openbmc/qemu/hw/intc/apic.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/intc/grlib_irqmp.c
/openbmc/qemu/hw/intc/s390_flic_kvm.c
/openbmc/qemu/hw/intc/trace-events
/openbmc/qemu/hw/isa/Kconfig
/openbmc/qemu/hw/isa/fdc37m81x-superio.c
/openbmc/qemu/hw/isa/isa-superio.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/meson.build
/openbmc/qemu/hw/isa/pc87312.c
/openbmc/qemu/hw/isa/piix.c
/openbmc/qemu/hw/isa/smc37c669-superio.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/mips/Kconfig
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/cps.c
/openbmc/qemu/hw/mips/jazz.c
/openbmc/qemu/hw/mips/loongson3_bootp.h
/openbmc/qemu/hw/mips/loongson3_virt.c
/openbmc/qemu/hw/mips/mipssim.c
/openbmc/qemu/hw/misc/Kconfig
/openbmc/qemu/hw/misc/bcm2835_property.c
/openbmc/qemu/hw/misc/lasi.c
/openbmc/qemu/hw/misc/macio/macio.c
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/mips_itu.c
/openbmc/qemu/hw/misc/mps2-scc.c
/openbmc/qemu/hw/misc/pca9552.c
/openbmc/qemu/hw/misc/pca9554.c
/openbmc/qemu/hw/net/tulip.c
/openbmc/qemu/hw/nubus/meson.build
/openbmc/qemu/hw/nubus/nubus-device.c
/openbmc/qemu/hw/nubus/nubus-virtio-mmio.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/pci-bridge/cxl_downstream.c
/openbmc/qemu/hw/pci-bridge/cxl_root_port.c
/openbmc/qemu/hw/pci-bridge/cxl_upstream.c
/openbmc/qemu/hw/pci-host/Kconfig
/openbmc/qemu/hw/pci-host/astro.c
/openbmc/qemu/hw/pci-host/meson.build
/openbmc/qemu/hw/pci-host/ppc440_pcix.c
/openbmc/qemu/hw/pci-host/ppc4xx_pci.c
/openbmc/qemu/hw/pci-host/ppce500.c
/openbmc/qemu/hw/pci-host/raven.c
/openbmc/qemu/hw/pci-host/trace-events
/openbmc/qemu/hw/ppc/Kconfig
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/meson.build
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_bmc.c
/openbmc/qemu/hw/ppc/pnv_chiptod.c
/openbmc/qemu/hw/ppc/pnv_i2c.c
/openbmc/qemu/hw/ppc/pnv_n1_chiplet.c
/openbmc/qemu/hw/ppc/pnv_nest_pervasive.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_irq.c
/openbmc/qemu/hw/ppc/spapr_vhyp_mmu.c
/openbmc/qemu/hw/ppc/trace-events
/openbmc/qemu/hw/rtc/m48t59.c
/openbmc/qemu/hw/rtc/pl031.c
/openbmc/qemu/hw/rx/rx-gdbsim.c
/openbmc/qemu/hw/rx/rx62n.c
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/trace-events
/openbmc/qemu/hw/sh4/Kconfig
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sh4/sh7750_regs.h
/openbmc/qemu/hw/smbios/smbios.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc64/sparc64.c
/openbmc/qemu/hw/ssi/xlnx-versal-ospi.c
/openbmc/qemu/hw/timer/grlib_gptimer.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/timer/pxa2xx_timer.c
/openbmc/qemu/hw/tricore/tricore_testboard.c
/openbmc/qemu/hw/usb/Kconfig
/openbmc/qemu/hw/usb/bus.c
/openbmc/qemu/hw/usb/hcd-ehci-pci.c
/openbmc/qemu/hw/usb/hcd-ehci-sysbus.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/usb/hcd-ehci.h
/openbmc/qemu/hw/usb/hcd-ohci-sysbus.c
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/usb/hcd-uhci.c
/openbmc/qemu/hw/usb/hcd-uhci.h
/openbmc/qemu/hw/usb/meson.build
/openbmc/qemu/hw/virtio/Kconfig
/openbmc/qemu/hw/virtio/meson.build
/openbmc/qemu/hw/virtio/vhost-user-base.c
/openbmc/qemu/hw/virtio/vhost-user-device-pci.c
/openbmc/qemu/hw/virtio/vhost-user-device.c
/openbmc/qemu/hw/virtio/vhost-user-gpio.c
/openbmc/qemu/hw/virtio/vhost-user-i2c.c
/openbmc/qemu/hw/virtio/vhost-user-input-pci.c
/openbmc/qemu/hw/virtio/vhost-user-input.c
/openbmc/qemu/hw/virtio/vhost-user-rng.c
/openbmc/qemu/hw/virtio/vhost-user-snd-pci.c
/openbmc/qemu/hw/virtio/vhost-user-snd.c
/openbmc/qemu/hw/virtio/virtio-iommu.c
/openbmc/qemu/include/exec/ioport.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/hw/acpi/cpu.h
/openbmc/qemu/include/hw/acpi/ich9_tco.h
/openbmc/qemu/include/hw/acpi/memory_hotplug.h
/openbmc/qemu/include/hw/arm/allwinner-a10.h
/openbmc/qemu/include/hw/arm/allwinner-r40.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/arm/bcm2835_peripherals.h
/openbmc/qemu/include/hw/arm/bcm2836.h
/openbmc/qemu/include/hw/arm/bcm2838.h
/openbmc/qemu/include/hw/arm/bcm2838_peripherals.h
/openbmc/qemu/include/hw/arm/omap.h
/openbmc/qemu/include/hw/arm/raspberrypi-fw-defs.h
/openbmc/qemu/include/hw/arm/raspi_platform.h
/openbmc/qemu/include/hw/arm/smmu-common.h
/openbmc/qemu/include/hw/arm/stm32l4x5_soc.h
/openbmc/qemu/include/hw/arm/virt.h
/openbmc/qemu/include/hw/arm/xlnx-zynqmp.h
/openbmc/qemu/include/hw/block/fdc.h
/openbmc/qemu/include/hw/char/grlib_uart.h
/openbmc/qemu/include/hw/char/parallel-isa.h
/openbmc/qemu/include/hw/char/parallel.h
/openbmc/qemu/include/hw/char/serial.h
/openbmc/qemu/include/hw/core/resetcontainer.h
/openbmc/qemu/include/hw/cxl/cxl_cdat.h
/openbmc/qemu/include/hw/cxl/cxl_component.h
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/cxl/cxl_events.h
/openbmc/qemu/include/hw/cxl/cxl_pci.h
/openbmc/qemu/include/hw/display/bcm2835_fb.h
/openbmc/qemu/include/hw/dma/i8257.h
/openbmc/qemu/include/hw/gpio/bcm2838_gpio.h
/openbmc/qemu/include/hw/i2c/pnv_i2c_regs.h
/openbmc/qemu/include/hw/i386/apic.h
/openbmc/qemu/include/hw/i386/apic_internal.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/i386/x86.h
/openbmc/qemu/include/hw/ide/ahci-pci.h
/openbmc/qemu/include/hw/ide/ahci-sysbus.h
/openbmc/qemu/include/hw/ide/ahci.h
/openbmc/qemu/include/hw/ide/ide-bus.h
/openbmc/qemu/include/hw/ide/ide-dev.h
/openbmc/qemu/include/hw/ide/ide-dma.h
/openbmc/qemu/include/hw/ide/pci.h
/openbmc/qemu/include/hw/input/i8042.h
/openbmc/qemu/include/hw/intc/grlib_irqmp.h
/openbmc/qemu/include/hw/misc/lasi.h
/openbmc/qemu/include/hw/misc/macio/macio.h
/openbmc/qemu/include/hw/misc/mips_itu.h
/openbmc/qemu/include/hw/misc/mps2-scc.h
/openbmc/qemu/include/hw/misc/pca9552.h
/openbmc/qemu/include/hw/misc/pca9554.h
/openbmc/qemu/include/hw/misc/pca9554_regs.h
/openbmc/qemu/include/hw/net/npcm_gmac.h
/openbmc/qemu/include/hw/nubus/nubus-virtio-mmio.h
/openbmc/qemu/include/hw/nubus/nubus.h
/openbmc/qemu/include/hw/pci-host/astro.h
/openbmc/qemu/include/hw/pci-host/ppc4xx.h
/openbmc/qemu/include/hw/ppc/pnv.h
/openbmc/qemu/include/hw/ppc/pnv_chip.h
/openbmc/qemu/include/hw/ppc/pnv_chiptod.h
/openbmc/qemu/include/hw/ppc/pnv_n1_chiplet.h
/openbmc/qemu/include/hw/ppc/pnv_nest_pervasive.h
/openbmc/qemu/include/hw/ppc/pnv_xscom.h
/openbmc/qemu/include/hw/ppc/ppc4xx.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/ppc/spapr_irq.h
/openbmc/qemu/include/hw/riscv/virt.h
/openbmc/qemu/include/hw/rx/rx62n.h
/openbmc/qemu/include/hw/scsi/esp.h
/openbmc/qemu/include/hw/sysbus.h
/openbmc/qemu/include/hw/timer/grlib_gptimer.h
/openbmc/qemu/include/hw/timer/hpet.h
/openbmc/qemu/include/hw/tricore/tricore_testdevice.h
/openbmc/qemu/include/hw/usb.h
/openbmc/qemu/include/hw/virtio/vhost-user-base.h
/openbmc/qemu/include/hw/virtio/vhost-user-gpio.h
/openbmc/qemu/include/hw/virtio/vhost-user-i2c.h
/openbmc/qemu/include/hw/virtio/vhost-user-rng.h
/openbmc/qemu/include/hw/virtio/vhost-user-snd.h
/openbmc/qemu/include/hw/virtio/vhost-vsock-common.h
/openbmc/qemu/include/hw/virtio/virtio-gpu.h
/openbmc/qemu/include/hw/virtio/virtio-input.h
/openbmc/qemu/include/net/filter.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qom/object.h
/openbmc/qemu/include/sysemu/reset.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/iothread.c
/openbmc/qemu/linux-user/aarch64/target_prctl.h
/openbmc/qemu/meson.build
/openbmc/qemu/monitor/hmp-cmds-target.c
/openbmc/qemu/pc-bios/README
/openbmc/qemu/pc-bios/edk2-aarch64-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-arm-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-i386-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-i386-secure-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-riscv-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-riscv-vars.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-microvm.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-secure-code.fd.bz2
/openbmc/qemu/pc-bios/hppa-firmware.img
/openbmc/qemu/pc-bios/hppa-firmware64.img
/openbmc/qemu/pc-bios/skiboot.lid
/openbmc/qemu/qapi/acpi.json
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/block.json
/openbmc/qemu/qapi/char.json
/openbmc/qemu/qapi/common.json
/openbmc/qemu/qapi/control.json
/openbmc/qemu/qapi/crypto.json
/openbmc/qemu/qapi/dump.json
/openbmc/qemu/qapi/machine-target.json
/openbmc/qemu/qapi/machine.json
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qapi/misc-target.json
/openbmc/qemu/qapi/misc.json
/openbmc/qemu/qapi/net.json
/openbmc/qemu/qapi/pci.json
/openbmc/qemu/qapi/pragma.json
/openbmc/qemu/qapi/qdev.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qapi/rdma.json
/openbmc/qemu/qapi/replay.json
/openbmc/qemu/qapi/rocker.json
/openbmc/qemu/qapi/run-state.json
/openbmc/qemu/qapi/sockets.json
/openbmc/qemu/qapi/stats.json
/openbmc/qemu/qapi/tpm.json
/openbmc/qemu/qapi/trace.json
/openbmc/qemu/qapi/transaction.json
/openbmc/qemu/qapi/ui.json
/openbmc/qemu/qapi/virtio.json
/openbmc/qemu/qapi/yank.json
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/qom/object.c
/openbmc/qemu/roms/edk2
/openbmc/qemu/roms/seabios-hppa
/openbmc/qemu/scripts/ci/gitlab-pipeline-status
/openbmc/qemu/scripts/qapi/parser.py
/openbmc/qemu/scripts/qapi/schema.py
/openbmc/qemu/scripts/qapi/source.py
/openbmc/qemu/system/bootdevice.c
/openbmc/qemu/system/ioport.c
/openbmc/qemu/system/memory_ldst.c.inc
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/cpu64.c
/openbmc/qemu/target/arm/gdbstub.c
/openbmc/qemu/target/arm/gdbstub64.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/cpu32.c
/openbmc/qemu/target/arm/tcg/op_helper.c
/openbmc/qemu/target/arm/tcg/sme_helper.c
/openbmc/qemu/target/arm/tcg/sve_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.h
/openbmc/qemu/target/arm/tcg/translate-sme.c
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/hexagon/idef-parser/macros.inc
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/hppa/helper.h
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/sys_helper.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/cpu-sysemu.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/monitor.c
/openbmc/qemu/target/i386/tcg/sysemu/misc_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/i386/whpx/whpx-apic.c
/openbmc/qemu/target/m68k/cpu.c
/openbmc/qemu/target/m68k/cpu.h
/openbmc/qemu/target/m68k/op_helper.c
/openbmc/qemu/target/mips/cpu.h
/openbmc/qemu/target/mips/internal.h
/openbmc/qemu/target/mips/sysemu/machine.c
/openbmc/qemu/target/mips/tcg/sysemu/cp0_helper.c
/openbmc/qemu/target/mips/tcg/sysemu_helper.h.inc
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/mips/tcg/translate.h
/openbmc/qemu/target/ppc/cpu-qom.h
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/excp_helper.c
/openbmc/qemu/target/ppc/gdbstub.c
/openbmc/qemu/target/ppc/helper_regs.c
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/ppc-qmp-cmds.c
/openbmc/qemu/target/ppc/tcg-stub.c
/openbmc/qemu/target/ppc/timebase_helper.c
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/ppc/translate/vmx-impl.c.inc
/openbmc/qemu/target/ppc/translate/vsx-impl.c.inc
cpu.c
cpu.h
gdbstub.c
/openbmc/qemu/target/s390x/cpu_features_def.h.inc
/openbmc/qemu/target/sparc/asi.h
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/helper.c
/openbmc/qemu/target/sparc/helper.h
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tests/avocado/acpi-bits/bits-tests/smbios.py2
/openbmc/qemu/tests/avocado/boot_linux.py
/openbmc/qemu/tests/avocado/boot_linux_console.py
/openbmc/qemu/tests/avocado/mem-addr-space-check.py
/openbmc/qemu/tests/avocado/migration.py
/openbmc/qemu/tests/avocado/ppc_hv_tests.py
/openbmc/qemu/tests/avocado/ppc_powernv.py
/openbmc/qemu/tests/avocado/ppc_pseries.py
/openbmc/qemu/tests/avocado/reverse_debugging.py
/openbmc/qemu/tests/data/acpi/q35/DSDT.cxl
/openbmc/qemu/tests/data/acpi/q35/IVRS.ivrs
/openbmc/qemu/tests/data/acpi/virt/FACP
/openbmc/qemu/tests/data/acpi/virt/GTDT
/openbmc/qemu/tests/lcitool/refresh
/openbmc/qemu/tests/qapi-schema/doc-bad-alternate-member.err
/openbmc/qemu/tests/qapi-schema/doc-bad-alternate-member.json
/openbmc/qemu/tests/qapi-schema/doc-bad-boxed-command-arg.err
/openbmc/qemu/tests/qapi-schema/doc-bad-command-arg.err
/openbmc/qemu/tests/qapi-schema/doc-bad-enum-member.err
/openbmc/qemu/tests/qapi-schema/doc-bad-event-arg.err
/openbmc/qemu/tests/qapi-schema/doc-bad-feature.err
/openbmc/qemu/tests/qapi-schema/doc-bad-union-member.err
/openbmc/qemu/tests/qapi-schema/doc-duplicate-features.err
/openbmc/qemu/tests/qapi-schema/doc-duplicate-features.json
/openbmc/qemu/tests/qapi-schema/doc-duplicate-features.out
/openbmc/qemu/tests/qapi-schema/doc-duplicated-arg.err
/openbmc/qemu/tests/qapi-schema/doc-duplicated-return.err
/openbmc/qemu/tests/qapi-schema/doc-duplicated-return.json
/openbmc/qemu/tests/qapi-schema/doc-duplicated-since.err
/openbmc/qemu/tests/qapi-schema/doc-duplicated-since.json
/openbmc/qemu/tests/qapi-schema/doc-empty-arg.err
/openbmc/qemu/tests/qapi-schema/doc-empty-features.err
/openbmc/qemu/tests/qapi-schema/doc-empty-features.json
/openbmc/qemu/tests/qapi-schema/doc-empty-features.out
/openbmc/qemu/tests/qapi-schema/doc-empty-section.err
/openbmc/qemu/tests/qapi-schema/doc-good.json
/openbmc/qemu/tests/qapi-schema/doc-good.out
/openbmc/qemu/tests/qapi-schema/doc-good.txt
/openbmc/qemu/tests/qapi-schema/doc-invalid-return.err
/openbmc/qemu/tests/qapi-schema/doc-invalid-return.json
/openbmc/qemu/tests/qapi-schema/doc-non-first-section.err
/openbmc/qemu/tests/qapi-schema/doc-non-first-section.json
/openbmc/qemu/tests/qapi-schema/doc-non-first-section.out
/openbmc/qemu/tests/qapi-schema/meson.build
/openbmc/qemu/tests/qapi-schema/test-qapi.py
/openbmc/qemu/tests/qemu-iotests/144
/openbmc/qemu/tests/qemu-iotests/144.out
/openbmc/qemu/tests/qtest/boot-serial-test.c
/openbmc/qemu/tests/qtest/cdrom-test.c
/openbmc/qemu/tests/qtest/dbus-display-test.c
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/npcm7xx_emc-test.c
/openbmc/qemu/tests/qtest/npcm_gmac-test.c
/openbmc/qemu/tests/qtest/pca9552-test.c
/openbmc/qemu/tests/qtest/pnv-host-i2c-test.c
/openbmc/qemu/tests/qtest/pnv-xscom-test.c
/openbmc/qemu/tests/qtest/pnv-xscom.h
/openbmc/qemu/tests/qtest/stm32l4x5_exti-test.c
/openbmc/qemu/tests/tcg/Makefile.target
/openbmc/qemu/tests/tcg/aarch64/semicall.h
/openbmc/qemu/tests/tcg/arm/semicall.h
/openbmc/qemu/tests/tcg/i386/system/boot.S
/openbmc/qemu/tests/tcg/multiarch/arm-compat-semi/semiconsole.c
/openbmc/qemu/tests/tcg/multiarch/arm-compat-semi/semihosting.c
/openbmc/qemu/tests/tcg/multiarch/float_convd.c
/openbmc/qemu/tests/tcg/multiarch/float_convs.c
/openbmc/qemu/tests/tcg/multiarch/float_helpers.h
/openbmc/qemu/tests/tcg/multiarch/float_madds.c
/openbmc/qemu/tests/tcg/multiarch/libs/float_helpers.c
/openbmc/qemu/tests/tcg/riscv64/semicall.h
/openbmc/qemu/tests/tcg/x86_64/system/boot.S
/openbmc/qemu/tests/unit/test-char.c
/openbmc/qemu/tests/vm/Makefile.include
/openbmc/qemu/tests/vm/basevm.py
/openbmc/qemu/tests/vm/openbsd
/openbmc/qemu/ui/clipboard.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/meson.build
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/qemu-sockets.c
2df1eb2707-Feb-2024 Paolo Bonzini <pbonzini@redhat.com>

kconfig: use "select" to enable semihosting

Just like all other dependencies, these can be expressed in Kconfig
files rather than in the default configurations.

Signed-off-by: Paolo Bonzini <pbonzi

kconfig: use "select" to enable semihosting

Just like all other dependencies, these can be expressed in Kconfig
files rather than in the default configurations.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20240129115809.1039924-1-pbonzini@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240207163812.3231697-10-alex.bennee@linaro.org>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/stubs/kvm-stub.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/ldst_common.c.inc
/openbmc/qemu/backends/hostmem.c
/openbmc/qemu/block/blkio.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/configs/devices/m68k-softmmu/default.mak
/openbmc/qemu/configs/devices/mips-softmmu/common.mak
/openbmc/qemu/configs/devices/nios2-softmmu/default.mak
/openbmc/qemu/configs/devices/riscv32-softmmu/default.mak
/openbmc/qemu/configs/devices/riscv64-softmmu/default.mak
/openbmc/qemu/configs/devices/xtensa-softmmu/default.mak
/openbmc/qemu/configure
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/devel/docs.rst
/openbmc/qemu/docs/devel/tcg-ops.rst
/openbmc/qemu/docs/sphinx/hxtool.py
/openbmc/qemu/docs/system/arm/raspi.rst
/openbmc/qemu/docs/system/i386/xen.rst
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/bcm2835_peripherals.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/msf2-soc.c
/openbmc/qemu/hw/arm/msf2-som.c
/openbmc/qemu/hw/arm/musca.c
/openbmc/qemu/hw/arm/npcm7xx.c
/openbmc/qemu/hw/arm/npcm7xx_boards.c
/openbmc/qemu/hw/arm/strongarm.c
/openbmc/qemu/hw/arm/trace-events
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/xen_arm.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/core/bus.c
/openbmc/qemu/hw/hyperv/hv-balloon.c
/openbmc/qemu/hw/hyperv/vmbus.c
/openbmc/qemu/hw/input/adb.c
/openbmc/qemu/hw/mem/memory-device.c
/openbmc/qemu/hw/net/meson.build
/openbmc/qemu/hw/net/npcm_gmac.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/s390x/css-bridge.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/ssi/Kconfig
/openbmc/qemu/hw/ssi/bcm2835_spi.c
/openbmc/qemu/hw/ssi/meson.build
/openbmc/qemu/hw/usb/dev-storage-classic.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/xen/trace-events
/openbmc/qemu/hw/xen/xen-hvm-common.c
/openbmc/qemu/hw/xen/xen-mapcache.c
/openbmc/qemu/include/block/aio.h
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/hw/arm/bcm2835_peripherals.h
/openbmc/qemu/include/hw/arm/msf2-soc.h
/openbmc/qemu/include/hw/arm/npcm7xx.h
/openbmc/qemu/include/hw/elf_ops.h
/openbmc/qemu/include/hw/net/npcm_gmac.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/ssi/bcm2835_spi.h
/openbmc/qemu/include/hw/virtio/virtio-blk.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/tcg/tcg-cond.h
/openbmc/qemu/linux-user/aarch64/vdso-be.so
/openbmc/qemu/linux-user/aarch64/vdso-le.so
/openbmc/qemu/linux-user/aarch64/vdso.S
/openbmc/qemu/linux-user/sparc/cpu_loop.c
/openbmc/qemu/linux-user/sparc/signal.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/multifd-zlib.c
/openbmc/qemu/migration/multifd-zstd.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/introspect.json
/openbmc/qemu/qapi/misc-target.json
/openbmc/qemu/qapi/qmp-dispatch.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/qom/object.c
/openbmc/qemu/semihosting/uaccess.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/syndrome.h
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/op_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/loongarch/cpu_helper.c
/openbmc/qemu/target/loongarch/tcg/tlb_helper.c
/openbmc/qemu/target/m68k/Kconfig
/openbmc/qemu/target/m68k/op_helper.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/helper.c
/openbmc/qemu/target/microblaze/mmu.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/Kconfig
/openbmc/qemu/target/nios2/Kconfig
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/cpu-models.c
Kconfig
/openbmc/qemu/target/s390x/cpu-dump.c
/openbmc/qemu/target/s390x/gdbstub.c
/openbmc/qemu/target/s390x/helper.c
/openbmc/qemu/target/s390x/helper.h
/openbmc/qemu/target/s390x/kvm/kvm.c
/openbmc/qemu/target/s390x/tcg/excp_helper.c
/openbmc/qemu/target/s390x/tcg/insn-data.h.inc
/openbmc/qemu/target/s390x/tcg/int_helper.c
/openbmc/qemu/target/s390x/tcg/misc_helper.c
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/sparc/cpu.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/fop_helper.c
/openbmc/qemu/target/sparc/gdbstub.c
/openbmc/qemu/target/sparc/helper.h
/openbmc/qemu/target/sparc/ldst_helper.c
/openbmc/qemu/target/sparc/machine.c
/openbmc/qemu/target/sparc/mmu_helper.c
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/tricore/helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/xtensa/Kconfig
/openbmc/qemu/target/xtensa/mmu_helper.c
/openbmc/qemu/tcg/aarch64/tcg-target-con-set.h
/openbmc/qemu/tcg/aarch64/tcg-target-con-str.h
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.h
/openbmc/qemu/tcg/i386/tcg-target-con-set.h
/openbmc/qemu/tcg/i386/tcg-target-con-str.h
/openbmc/qemu/tcg/i386/tcg-target.c.inc
/openbmc/qemu/tcg/i386/tcg-target.h
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.h
/openbmc/qemu/tcg/mips/tcg-target.c.inc
/openbmc/qemu/tcg/mips/tcg-target.h
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/ppc/tcg-target-con-set.h
/openbmc/qemu/tcg/ppc/tcg-target-con-str.h
/openbmc/qemu/tcg/ppc/tcg-target.c.inc
/openbmc/qemu/tcg/ppc/tcg-target.h
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.h
/openbmc/qemu/tcg/s390x/tcg-target-con-set.h
/openbmc/qemu/tcg/s390x/tcg-target-con-str.h
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/s390x/tcg-target.h
/openbmc/qemu/tcg/sparc64/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target.h
/openbmc/qemu/tcg/tcg-internal.h
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
/openbmc/qemu/tcg/tci/tcg-target.c.inc
/openbmc/qemu/tcg/tci/tcg-target.h
/openbmc/qemu/tests/docker/dockerfiles/opensuse-leap.docker
/openbmc/qemu/tests/lcitool/mappings.yml
/openbmc/qemu/tests/lcitool/projects/qemu.yml
/openbmc/qemu/tests/qemu-iotests/check
/openbmc/qemu/tests/qemu-iotests/testenv.py
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/npcm_gmac-test.c
/openbmc/qemu/tests/qtest/xlnx-versal-trng-test.c
/openbmc/qemu/tests/tcg/aarch64/sysregs.c
/openbmc/qemu/tests/tcg/multiarch/gdbstub/prot-none.py
/openbmc/qemu/tests/tcg/s390x/Makefile.target
/openbmc/qemu/tests/tcg/s390x/cvb.c
/openbmc/qemu/tests/tcg/s390x/cvd.c
/openbmc/qemu/tests/unit/test-util-filemonitor.c
/openbmc/qemu/tests/vm/basevm.py
/openbmc/qemu/tests/vm/freebsd
/openbmc/qemu/util/meson.build
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/oslib-win32.c
deb0ff0c22-Jan-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv: add rv32i, rv32e and rv64e CPUs

A bare bones 32 bit RVI CPU, rv32i, will make users lives easier when a
full customized 32 bit CPU is desired, and users won't need to disable
defaults

target/riscv: add rv32i, rv32e and rv64e CPUs

A bare bones 32 bit RVI CPU, rv32i, will make users lives easier when a
full customized 32 bit CPU is desired, and users won't need to disable
defaults by hand as they would with the rv32 CPU. [1] has an example of
a situation that would be avoided with rv32i.

In fact, add bare bones CPUs for RVE as well. Trying to use RVE in QEMU
requires one to disable every single default extension, including RVI,
and then add the desirable extension set. Adding rv32e/rv64e makes it
more pleasant to use embedded CPUs in QEMU.

[1] https://lore.kernel.org/qemu-riscv/258be47f-97be-4308-bed5-dc34ef7ff954@Spark/

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240122123348.973288-3-dbarboza@ventanamicro.com>
[ Changes by AF:
- Rebase on latest changes
]
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

b077aec922-Jan-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

target/riscv/cpu.c: add riscv_bare_cpu_init()

Next patch will add more bare CPUs. Their cpu_init() functions would be
glorified copy/pastes of rv64i_bare_cpu_init(), differing only by a
riscv_cpu_se

target/riscv/cpu.c: add riscv_bare_cpu_init()

Next patch will add more bare CPUs. Their cpu_init() functions would be
glorified copy/pastes of rv64i_bare_cpu_init(), differing only by a
riscv_cpu_set_misa() call.

Add a new .instance_init for the TYPE_RISCV_BARE_CPU typ to avoid this
code repetition. While we're at it, add a better explanation on why
we're disabling the timing extensions for bare CPUs.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240122123348.973288-2-dbarboza@ventanamicro.com>
[ Changes by AF:
- Rebase on latest changes
]
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

a65d517003-Feb-2024 LIU Zhiwei <zhiwei_liu@linux.alibaba.com>

target/riscv: Enable xtheadsync under user mode

According to xtheadsync[1][2] documentation, it can be used in user mode and
the behavior is same with other priviledges.

[1]:https://github.com/T-he

target/riscv: Enable xtheadsync under user mode

According to xtheadsync[1][2] documentation, it can be used in user mode and
the behavior is same with other priviledges.

[1]:https://github.com/T-head-Semi/thead-extension-spec/blob/master/xtheadsync/sync.adoc
[2]:https://github.com/T-head-Semi/thead-extension-spec/blob/master/xtheadsync/sync_i.adoc

Signed-off-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240204055228.900-1-zhiwei_liu@linux.alibaba.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

1c8e491c24-Jan-2024 Conor Dooley <conor.dooley@microchip.com>

target/riscv: support new isa extension detection devicetree properties

A few months ago I submitted a patch to various lists, deprecating
"riscv,isa" with a lengthy commit message [0] that is now c

target/riscv: support new isa extension detection devicetree properties

A few months ago I submitted a patch to various lists, deprecating
"riscv,isa" with a lengthy commit message [0] that is now commit
aeb71e42caae ("dt-bindings: riscv: deprecate riscv,isa") in the Linux
kernel tree. Primarily, the goal was to replace "riscv,isa" with a new
set of properties that allowed for strictly defining the meaning of
various extensions, where "riscv,isa" was tied to whatever definitions
inflicted upon us by the ISA manual, which have seen some variance over
time.

Two new properties were introduced: "riscv,isa-base" and
"riscv,isa-extensions". The former is a simple string to communicate the
base ISA implemented by a hart and the latter an array of strings used
to communicate the set of ISA extensions supported, per the definitions
of each substring in extensions.yaml [1]. A beneficial side effect was
also the ability to define vendor extensions in a more "official" way,
as the ISA manual and other RVI specifications only covered the format
for vendor extensions in the ISA string, but not the meaning of vendor
extensions, for obvious reasons.

Add support for setting these two new properties in the devicetrees for
the various devicetree platforms supported by QEMU for RISC-V. The Linux
kernel already supports parsing ISA extensions from these new
properties, and documenting them in the dt-binding is a requirement for
new extension detection being added to the kernel.

A side effect of the implementation is that the meaning for elements in
"riscv,isa" and in "riscv,isa-extensions" are now tied together as they
are constructed from the same source. The same applies to the ISA string
provided in ACPI tables, but there does not appear to be any strict
definitions of meanings in ACPI land either.

Link: https://lore.kernel.org/qemu-riscv/20230702-eats-scorebook-c951f170d29f@spud/ [0]
Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/riscv/extensions.yaml [1]
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240124-unvarying-foothold-9dde2aaf95d4@spud>
[ Changes by AF:
- Rebase on recent changes
]
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

afa42c2124-Jan-2024 Conor Dooley <conor.dooley@microchip.com>

target/riscv: use misa_mxl_max to populate isa string rather than TARGET_LONG_BITS

A cpu may not have the same xlen as the compile time target, and
misa_mxl_max is the source of truth for what the h

target/riscv: use misa_mxl_max to populate isa string rather than TARGET_LONG_BITS

A cpu may not have the same xlen as the compile time target, and
misa_mxl_max is the source of truth for what the hart supports.

The conversion from misa_mxl_max to xlen already has one user, so
introduce a helper and use that to populate the isa string.

Link: https://lore.kernel.org/qemu-riscv/20240108-efa3f83dcd3997dc0af458d7@orel/
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240124-swear-monthly-56c281f809a6@spud>
[ Changes by AF:
- Convert to use RISCVCPUClass *mcc
]
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

79b50e2c23-Jan-2024 Rob Bradford <rbradford@rivosinc.com>

target/riscv: Expose Zaamo and Zalrsc extensions

Expose the newly added extensions to the guest and allow their control
through the CPU properties.

Signed-off-by: Rob Bradford <rbradford@rivosinc.c

target/riscv: Expose Zaamo and Zalrsc extensions

Expose the newly added extensions to the guest and allow their control
through the CPU properties.

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240123111030.15074-4-rbradford@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

4f75d81223-Jan-2024 Rob Bradford <rbradford@rivosinc.com>

target/riscv: Check 'A' and split extensions for atomic instructions

Following the pattern for 'M' and Zmmul check if either the 'A'
extension is enabled or the appropriate split extension for the
i

target/riscv: Check 'A' and split extensions for atomic instructions

Following the pattern for 'M' and Zmmul check if either the 'A'
extension is enabled or the appropriate split extension for the
instruction.

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240123111030.15074-3-rbradford@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

8caeda5b23-Jan-2024 Rob Bradford <rbradford@rivosinc.com>

target/riscv: Add Zaamo and Zalrsc extension infrastructure

These extensions represent the atomic operations from A (Zaamo) and the
Load-Reserved/Store-Conditional operations from A (Zalrsc)

Signed

target/riscv: Add Zaamo and Zalrsc extension infrastructure

These extensions represent the atomic operations from A (Zaamo) and the
Load-Reserved/Store-Conditional operations from A (Zalrsc)

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240123111030.15074-2-rbradford@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

a5cb044c30-Jan-2024 LIU Zhiwei <zhiwei_liu@linux.alibaba.com>

target/riscv: Use RISCVException as return type for all csr ops

The real return value type has been converted to RISCVException,
but some function declarations still not. This patch makes all
csr op

target/riscv: Use RISCVException as return type for all csr ops

The real return value type has been converted to RISCVException,
but some function declarations still not. This patch makes all
csr operation declarations use RISCVExcetion.

Signed-off-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240130110844.437-1-zhiwei_liu@linux.alibaba.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

ac8c8b6d30-Jan-2024 LIU Zhiwei <zhiwei_liu@linux.alibaba.com>

target/riscv: FCSR doesn't contain vxrm and vxsat

vxrm and vxsat have been moved into a special register vcsr since
RVV v1.0. So remove them from FCSR for vector 1.0.

Signed-off-by: LIU Zhiwei <zhi

target/riscv: FCSR doesn't contain vxrm and vxsat

vxrm and vxsat have been moved into a special register vcsr since
RVV v1.0. So remove them from FCSR for vector 1.0.

Signed-off-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com>
Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Message-ID: <20240130110945.486-1-zhiwei_liu@linux.alibaba.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...

12345678910>>...67