History log of /openbmc/qemu/rust/hw/ (Results 51 – 75 of 131)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
9ee4886717-Feb-2025 Zhao Liu <zhao1.liu@intel.com>

i386: Fix the missing Rust HPET configuration option

The configuration option of Rust HPET is missing, so that PC machine
can't boot with "hpet=on" when QEMU Rust support is enabled.

Add the Rust H

i386: Fix the missing Rust HPET configuration option

The configuration option of Rust HPET is missing, so that PC machine
can't boot with "hpet=on" when QEMU Rust support is enabled.

Add the Rust HPET configuration option.

Fixes: d128c341a744 ("i386: enable rust hpet for pc when rust is enabled")
Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250217154416.3144571-1-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/tcg-all.c
/openbmc/qemu/backends/cryptodev-vhost.c
/openbmc/qemu/backends/tpm/tpm_util.c
/openbmc/qemu/configs/devices/aarch64-softmmu/default.mak
/openbmc/qemu/crypto/hash-afalg.c
/openbmc/qemu/crypto/tlssession.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/devel/multi-thread-tcg.rst
/openbmc/qemu/docs/devel/reset.rst
/openbmc/qemu/docs/devel/tcg-ops.rst
/openbmc/qemu/docs/pcie_sriov.txt
/openbmc/qemu/docs/system/arm/nuvoton.rst
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/allwinner-a10.c
/openbmc/qemu/hw/arm/allwinner-h3.c
/openbmc/qemu/hw/arm/allwinner-r40.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/bananapi_m2u.c
/openbmc/qemu/hw/arm/cubieboard.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/fby35.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/imx25_pdk.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/mcimx6ul-evk.c
/openbmc/qemu/hw/arm/mcimx7d-sabre.c
/openbmc/qemu/hw/arm/meson.build
/openbmc/qemu/hw/arm/npcm7xx.c
/openbmc/qemu/hw/arm/npcm7xx_boards.c
/openbmc/qemu/hw/arm/npcm8xx.c
/openbmc/qemu/hw/arm/npcm8xx_boards.c
/openbmc/qemu/hw/arm/omap_sx1.c
/openbmc/qemu/hw/arm/orangepi.c
/openbmc/qemu/hw/arm/raspi.c
/openbmc/qemu/hw/arm/raspi4b.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/smmu-common.c
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/trace-events
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/xlnx-versal-virt.c
/openbmc/qemu/hw/arm/xlnx-zcu102.c
/openbmc/qemu/hw/arm/xlnx-zynqmp.c
/openbmc/qemu/hw/char/xilinx_uartlite.c
/openbmc/qemu/hw/core/cpu-system.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/core/machine-smp.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/null-machine.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/core/sysbus.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cpu/a9mpcore.c
/openbmc/qemu/hw/cxl/cxl-component-utils.c
/openbmc/qemu/hw/cxl/cxl-device-utils.c
/openbmc/qemu/hw/cxl/switch-mailbox-cci.c
/openbmc/qemu/hw/display/apple-gfx.m
/openbmc/qemu/hw/display/ramfb-standalone.c
/openbmc/qemu/hw/i2c/allwinner-i2c.c
/openbmc/qemu/hw/i386/amd_iommu.c
/openbmc/qemu/hw/i386/amd_iommu.h
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/trace-events
/openbmc/qemu/hw/i386/x86-iommu.c
/openbmc/qemu/hw/intc/allwinner-a10-pic.c
/openbmc/qemu/hw/intc/apic.c
/openbmc/qemu/hw/intc/arm_gicv3_cpuif.c
/openbmc/qemu/hw/intc/xilinx_intc.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/microblaze/petalogix_ml605_mmu.c
/openbmc/qemu/hw/microblaze/petalogix_s3adsp1800_mmu.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/loongson3_virt.c
/openbmc/qemu/hw/misc/allwinner-a10-ccm.c
/openbmc/qemu/hw/misc/allwinner-a10-dramc.c
/openbmc/qemu/hw/misc/allwinner-cpucfg.c
/openbmc/qemu/hw/misc/allwinner-h3-ccu.c
/openbmc/qemu/hw/misc/allwinner-h3-dramc.c
/openbmc/qemu/hw/misc/allwinner-h3-sysctrl.c
/openbmc/qemu/hw/misc/allwinner-r40-ccu.c
/openbmc/qemu/hw/misc/allwinner-r40-dramc.c
/openbmc/qemu/hw/misc/allwinner-sid.c
/openbmc/qemu/hw/misc/allwinner-sramc.c
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/npcm_clk.c
/openbmc/qemu/hw/misc/npcm_gcr.c
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/net/allwinner-sun8i-emac.c
/openbmc/qemu/hw/net/allwinner_emac.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.c
/openbmc/qemu/hw/net/igb.c
/openbmc/qemu/hw/net/meson.build
/openbmc/qemu/hw/net/npcm_pcs.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/xilinx_ethlite.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/pci-host/versatile.c
/openbmc/qemu/hw/pci/msix.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pcie_sriov.c
/openbmc/qemu/hw/pci/trace-events
/openbmc/qemu/hw/ppc/spapr_caps.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/remote/mpqemu-link.c
/openbmc/qemu/hw/remote/vfio-user-obj.c
/openbmc/qemu/hw/riscv/microblaze-v-generic.c
/openbmc/qemu/hw/riscv/microchip_pfsoc.c
/openbmc/qemu/hw/riscv/opentitan.c
/openbmc/qemu/hw/riscv/sifive_u.c
/openbmc/qemu/hw/rtc/allwinner-rtc.c
/openbmc/qemu/hw/rtc/m48t59-isa.c
/openbmc/qemu/hw/rtc/m48t59.c
/openbmc/qemu/hw/rx/rx-gdbsim.c
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/sd/allwinner-sdhost.c
/openbmc/qemu/hw/sd/sdhci-internal.h
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sensor/emc141x.c
/openbmc/qemu/hw/sensor/isl_pmbus_vr.c
/openbmc/qemu/hw/sensor/tmp421.c
/openbmc/qemu/hw/ssi/allwinner-a10-spi.c
/openbmc/qemu/hw/ssi/npcm7xx_fiu.c
/openbmc/qemu/hw/ssi/xilinx_spi.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/timer/xilinx_timer.c
/openbmc/qemu/hw/tpm/tpm_tis_sysbus.c
/openbmc/qemu/hw/ufs/ufs.c
/openbmc/qemu/hw/usb/Kconfig
/openbmc/qemu/hw/usb/hcd-ehci-pci.c
/openbmc/qemu/hw/usb/hcd-uhci.c
/openbmc/qemu/hw/usb/meson.build
/openbmc/qemu/hw/usb/xen-usb.c
/openbmc/qemu/hw/vfio/amd-xgbe.c
/openbmc/qemu/hw/vfio/calxeda-xgmac.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/hw/virtio/trace-events
/openbmc/qemu/hw/virtio/vhost-iova-tree.c
/openbmc/qemu/hw/virtio/vhost-iova-tree.h
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.h
/openbmc/qemu/hw/virtio/vhost-user-snd.c
/openbmc/qemu/hw/virtio/vhost-vdpa.c
/openbmc/qemu/hw/virtio/virtio-balloon.c
/openbmc/qemu/hw/virtio/virtio-iommu.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio-nsm.c
/openbmc/qemu/hw/watchdog/allwinner-wdt.c
/openbmc/qemu/hw/xen/xen-legacy-backend.c
/openbmc/qemu/hw/xen/xen_pvdev.c
/openbmc/qemu/include/crypto/tlssession.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/exec/memattrs.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/tlb-common.h
/openbmc/qemu/include/exec/vaddr.h
/openbmc/qemu/include/hw/arm/npcm7xx.h
/openbmc/qemu/include/hw/arm/npcm8xx.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/misc/npcm_clk.h
/openbmc/qemu/include/hw/misc/npcm_gcr.h
/openbmc/qemu/include/hw/net/npcm_pcs.h
/openbmc/qemu/include/hw/pci/pcie_sriov.h
/openbmc/qemu/include/hw/qdev-properties-system.h
/openbmc/qemu/include/hw/ssi/npcm7xx_fiu.h
/openbmc/qemu/include/hw/sysbus.h
/openbmc/qemu/include/hw/virtio/virtio-balloon.h
/openbmc/qemu/include/hw/xen/xen_pvdev.h
/openbmc/qemu/include/io/channel-tls.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/qemu/atomic.h
/openbmc/qemu/include/qemu/iova-tree.h
/openbmc/qemu/include/qemu/timer.h
/openbmc/qemu/include/system/os-posix.h
/openbmc/qemu/include/system/os-win32.h
/openbmc/qemu/include/system/system.h
/openbmc/qemu/include/tcg/tcg-opc.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/io/channel-tls.c
/openbmc/qemu/io/channel.c
/openbmc/qemu/io/trace-events
/openbmc/qemu/linux-user/aarch64/target_signal.h
/openbmc/qemu/linux-user/arm/target_signal.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/generic/signal.h
/openbmc/qemu/linux-user/i386/target_signal.h
/openbmc/qemu/linux-user/m68k/target_signal.h
/openbmc/qemu/linux-user/microblaze/target_signal.h
/openbmc/qemu/linux-user/ppc/target_signal.h
/openbmc/qemu/linux-user/s390x/target_signal.h
/openbmc/qemu/linux-user/sh4/target_signal.h
/openbmc/qemu/linux-user/x86_64/target_signal.h
/openbmc/qemu/linux-user/xtensa/target_signal.h
/openbmc/qemu/meson.build
/openbmc/qemu/migration/channel.c
/openbmc/qemu/migration/cpr.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/postcopy-ram.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/tls.c
/openbmc/qemu/migration/tls.h
/openbmc/qemu/migration/trace-events
/openbmc/qemu/monitor/hmp-cmds-target.c
/openbmc/qemu/net/vhost-user.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/os-posix.c
/openbmc/qemu/pc-bios/README
/openbmc/qemu/pc-bios/meson.build
/openbmc/qemu/pc-bios/npcm7xx_bootrom.bin
/openbmc/qemu/pc-bios/npcm8xx_bootrom.bin
/openbmc/qemu/plugins/api.c
/openbmc/qemu/plugins/loader.c
/openbmc/qemu/qapi/common.json
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qapi/net.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qom/object_interfaces.c
/openbmc/qemu/roms/Makefile
/openbmc/qemu/roms/vbootrom
timer/Kconfig
/openbmc/qemu/rust/qemu-api/src/assertions.rs
/openbmc/qemu/rust/qemu-api/src/bindings.rs
/openbmc/qemu/rust/qemu-api/src/c_str.rs
/openbmc/qemu/rust/qemu-api/src/offset_of.rs
/openbmc/qemu/rust/qemu-api/src/prelude.rs
/openbmc/qemu/rust/qemu-api/src/sysbus.rs
/openbmc/qemu/rust/qemu-api/src/vmstate.rs
/openbmc/qemu/rust/qemu-api/src/zeroable.rs
/openbmc/qemu/scripts/make-release
/openbmc/qemu/scripts/qemu-trace-stap
/openbmc/qemu/system/globals.c
/openbmc/qemu/system/memory_ldst.c.inc
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/arm/cpregs.h
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/debug_helper.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/op_helper.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/loongarch/tcg/insn_trans/trans_atomic.c.inc
/openbmc/qemu/target/loongarch/tcg/translate.c
/openbmc/qemu/target/mips/tcg/octeon_translate.c
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/sparc/gdbstub.c
/openbmc/qemu/target/sparc/insns.decode
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target-con-set.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/i386/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target-con-set.h
/openbmc/qemu/tcg/loongarch64/tcg-target-con-str.h
/openbmc/qemu/tcg/loongarch64/tcg-target-has.h
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.h
/openbmc/qemu/tcg/mips/tcg-target-con-set.h
/openbmc/qemu/tcg/mips/tcg-target-con-str.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.c.inc
/openbmc/qemu/tcg/riscv/tcg-target-con-set.h
/openbmc/qemu/tcg/riscv/tcg-target-con-str.h
/openbmc/qemu/tcg/riscv/tcg-target-has.h
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.h
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target-con-set.h
/openbmc/qemu/tcg/sparc64/tcg-target-con-str.h
/openbmc/qemu/tcg/sparc64/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target.h
/openbmc/qemu/tcg/tcg-op-ldst.c
/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/functional/meson.build
/openbmc/qemu/tests/functional/test_microblaze_s3adsp1800.py
/openbmc/qemu/tests/functional/test_microblazeel_s3adsp1800.py
/openbmc/qemu/tests/functional/test_virtio_balloon.py
/openbmc/qemu/tests/migration-stress/guestperf/comparison.py
/openbmc/qemu/tests/migration-stress/guestperf/engine.py
/openbmc/qemu/tests/migration-stress/guestperf/report.py
/openbmc/qemu/tests/migration-stress/guestperf/scenario.py
/openbmc/qemu/tests/migration-stress/guestperf/shell.py
/openbmc/qemu/tests/qemu-iotests/172.out
/openbmc/qemu/tests/qtest/libqos/pci.c
/openbmc/qemu/tests/qtest/migration/migration-util.c
/openbmc/qemu/tests/qtest/migration/migration-util.h
/openbmc/qemu/tests/qtest/migration/precopy-tests.c
/openbmc/qemu/tests/qtest/ufs-test.c
/openbmc/qemu/tests/unit/test-crypto-tlssession.c
/openbmc/qemu/trace/simple.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/meson.build
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/util/iova-tree.c
/openbmc/qemu/util/module.c
d128c34109-Feb-2025 Zhao Liu <zhao1.liu@intel.com>

i386: enable rust hpet for pc when rust is enabled

Add HPET configuration in PC's Kconfig options, and select HPET device
(Rust version) if Rust is supported.

Signed-off-by: Zhao Liu <zhao1.liu@int

i386: enable rust hpet for pc when rust is enabled

Add HPET configuration in PC's Kconfig options, and select HPET device
(Rust version) if Rust is supported.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250210030051.2562726-11-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

6e90a8f809-Feb-2025 Zhao Liu <zhao1.liu@intel.com>

rust/timer/hpet: add qom and qdev APIs support

Implement QOM & QAPI support for HPET device.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250210030051.2562726-10-

rust/timer/hpet: add qom and qdev APIs support

Implement QOM & QAPI support for HPET device.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250210030051.2562726-10-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

269a8f1509-Feb-2025 Zhao Liu <zhao1.liu@intel.com>

rust/timer/hpet: add basic HPET timer and HPETState

Add the HPETTimer and HPETState (HPET timer block), along with their
basic methods and register definitions.

This is in preparation for supportin

rust/timer/hpet: add basic HPET timer and HPETState

Add the HPETTimer and HPETState (HPET timer block), along with their
basic methods and register definitions.

This is in preparation for supporting the QAPI interfaces.

Note, wrap all items in HPETState that may be changed in the callback
called by C code into the BqlCell/BqlRefCell.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250210030051.2562726-9-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

0534248a09-Feb-2025 Zhao Liu <zhao1.liu@intel.com>

rust/timer/hpet: define hpet_fw_cfg

Define HPETFwEntry structure with the same memory layout as
hpet_fw_entry in C.

Further, define the global hpet_cfg variable in Rust which is the
same as the C v

rust/timer/hpet: define hpet_fw_cfg

Define HPETFwEntry structure with the same memory layout as
hpet_fw_entry in C.

Further, define the global hpet_cfg variable in Rust which is the
same as the C version. This hpet_cfg variable in Rust will replace
the C version one and allows both Rust code and C code to access it.

The Rust version of hpet_cfg is self-contained, avoiding unsafe
access to C code.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250210030051.2562726-8-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

7630ca2a10-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: convert pl011_create to safe Rust

Not a major change but, as a small but significant step in creating
qdev bindings, show how pl011_create can be written without "unsafe"
calls (apart f

rust: pl011: convert pl011_create to safe Rust

Not a major change but, as a small but significant step in creating
qdev bindings, show how pl011_create can be written without "unsafe"
calls (apart from converting pointers to references).

This also provides a starting point for creating Error** bindings.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

a22bd55f03-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: chardev, qdev: add bindings to qdev_prop_set_chr

Because the argument to the function is an Owned<Chardev>, this also
adds an ObjectType implementation to Chardev.

Reviewed-by: Zhao Liu <zhao

rust: chardev, qdev: add bindings to qdev_prop_set_chr

Because the argument to the function is an Owned<Chardev>, this also
adds an ObjectType implementation to Chardev.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

590faa0317-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: bindings for MemoryRegionOps

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

5472a38c17-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: qdev: switch from legacy reset to Resettable

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

201ef00117-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: qdev: add clock creation

Add a Rust version of qdev_init_clock_in, which can be used in
instance_init. There are a couple differences with the C
version:

- in Rust the object keeps its own r

rust: qdev: add clock creation

Add a Rust version of qdev_init_clock_in, which can be used in
instance_init. There are a couple differences with the C
version:

- in Rust the object keeps its own reference to the clock (in addition to
the one embedded in the NamedClockList), and the reference is dropped
automatically by instance_finalize(); this is encoded in the signature
of DeviceClassMethods::init_clock_in, which makes the lifetime of the
clock independent of that of the object it holds. This goes unnoticed
in the C version and is due to the existence of aliases.

- also, anything that happens during instance_init uses the pinned_init
framework to operate on a partially initialized object, and is done
through class methods (i.e. through DeviceClassMethods rather than
DeviceMethods) because the device does not exist yet. Therefore, Rust
code *must* create clocks from instance_init, which is stricter than C.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

ec3eba9831-Oct-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: qom: add object creation functionality

The basic object lifecycle test can now be implemented using safe code!

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzi

rust: qom: add object creation functionality

The basic object lifecycle test can now be implemented using safe code!

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/cirrus.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/build.yml
/openbmc/qemu/.gitlab-ci.d/crossbuilds.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/meson.build
/openbmc/qemu/audio/audio-hmp-cmds.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/authz/listfile.c
/openbmc/qemu/backends/cryptodev-hmp-cmds.c
/openbmc/qemu/backends/iommufd.c
/openbmc/qemu/block.c
/openbmc/qemu/block/blkdebug.c
/openbmc/qemu/block/blkio.c
/openbmc/qemu/block/blklogwrites.c
/openbmc/qemu/block/blkverify.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/copy-before-write.c
/openbmc/qemu/block/copy-on-read.c
/openbmc/qemu/block/curl.c
/openbmc/qemu/block/export/export.c
/openbmc/qemu/block/file-posix.c
/openbmc/qemu/block/file-win32.c
/openbmc/qemu/block/gluster.c
/openbmc/qemu/block/iscsi.c
/openbmc/qemu/block/monitor/block-hmp-cmds.c
/openbmc/qemu/block/nbd.c
/openbmc/qemu/block/nfs.c
/openbmc/qemu/block/null.c
/openbmc/qemu/block/nvme.c
/openbmc/qemu/block/parallels.c
/openbmc/qemu/block/qapi-system.c
/openbmc/qemu/block/qapi.c
/openbmc/qemu/block/qcow.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/qed.c
/openbmc/qemu/block/quorum.c
/openbmc/qemu/block/rbd.c
/openbmc/qemu/block/replication.c
/openbmc/qemu/block/snapshot.c
/openbmc/qemu/block/ssh.c
/openbmc/qemu/block/stream.c
/openbmc/qemu/block/vhdx.c
/openbmc/qemu/block/vmdk.c
/openbmc/qemu/block/vpc.c
/openbmc/qemu/block/vvfat.c
/openbmc/qemu/blockdev-nbd.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/bsd-user/main.c
/openbmc/qemu/bsd-user/signal-common.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/chardev/char-hmp-cmds.c
/openbmc/qemu/configs/targets/aarch64-bsd-user.mak
/openbmc/qemu/configs/targets/aarch64-linux-user.mak
/openbmc/qemu/configs/targets/aarch64-softmmu.mak
/openbmc/qemu/configs/targets/aarch64_be-linux-user.mak
/openbmc/qemu/configs/targets/alpha-linux-user.mak
/openbmc/qemu/configs/targets/alpha-softmmu.mak
/openbmc/qemu/configs/targets/arm-bsd-user.mak
/openbmc/qemu/configs/targets/arm-linux-user.mak
/openbmc/qemu/configs/targets/arm-softmmu.mak
/openbmc/qemu/configs/targets/armeb-linux-user.mak
/openbmc/qemu/configs/targets/avr-softmmu.mak
/openbmc/qemu/configs/targets/hexagon-linux-user.mak
/openbmc/qemu/configs/targets/hppa-linux-user.mak
/openbmc/qemu/configs/targets/hppa-softmmu.mak
/openbmc/qemu/configs/targets/i386-bsd-user.mak
/openbmc/qemu/configs/targets/i386-linux-user.mak
/openbmc/qemu/configs/targets/i386-softmmu.mak
/openbmc/qemu/configs/targets/loongarch64-linux-user.mak
/openbmc/qemu/configs/targets/loongarch64-softmmu.mak
/openbmc/qemu/configs/targets/m68k-linux-user.mak
/openbmc/qemu/configs/targets/m68k-softmmu.mak
/openbmc/qemu/configs/targets/microblaze-linux-user.mak
/openbmc/qemu/configs/targets/microblaze-softmmu.mak
/openbmc/qemu/configs/targets/microblazeel-linux-user.mak
/openbmc/qemu/configs/targets/microblazeel-softmmu.mak
/openbmc/qemu/configs/targets/mips-linux-user.mak
/openbmc/qemu/configs/targets/mips-softmmu.mak
/openbmc/qemu/configs/targets/mips64-linux-user.mak
/openbmc/qemu/configs/targets/mips64-softmmu.mak
/openbmc/qemu/configs/targets/mips64el-linux-user.mak
/openbmc/qemu/configs/targets/mips64el-softmmu.mak
/openbmc/qemu/configs/targets/mipsel-linux-user.mak
/openbmc/qemu/configs/targets/mipsel-softmmu.mak
/openbmc/qemu/configs/targets/mipsn32-linux-user.mak
/openbmc/qemu/configs/targets/mipsn32el-linux-user.mak
/openbmc/qemu/configs/targets/or1k-linux-user.mak
/openbmc/qemu/configs/targets/or1k-softmmu.mak
/openbmc/qemu/configs/targets/ppc-linux-user.mak
/openbmc/qemu/configs/targets/ppc-softmmu.mak
/openbmc/qemu/configs/targets/ppc64-linux-user.mak
/openbmc/qemu/configs/targets/ppc64-softmmu.mak
/openbmc/qemu/configs/targets/ppc64le-linux-user.mak
/openbmc/qemu/configs/targets/riscv32-linux-user.mak
/openbmc/qemu/configs/targets/riscv32-softmmu.mak
/openbmc/qemu/configs/targets/riscv64-bsd-user.mak
/openbmc/qemu/configs/targets/riscv64-linux-user.mak
/openbmc/qemu/configs/targets/riscv64-softmmu.mak
/openbmc/qemu/configs/targets/rx-softmmu.mak
/openbmc/qemu/configs/targets/s390x-linux-user.mak
/openbmc/qemu/configs/targets/s390x-softmmu.mak
/openbmc/qemu/configs/targets/sh4-linux-user.mak
/openbmc/qemu/configs/targets/sh4-softmmu.mak
/openbmc/qemu/configs/targets/sh4eb-linux-user.mak
/openbmc/qemu/configs/targets/sh4eb-softmmu.mak
/openbmc/qemu/configs/targets/sparc-linux-user.mak
/openbmc/qemu/configs/targets/sparc-softmmu.mak
/openbmc/qemu/configs/targets/sparc32plus-linux-user.mak
/openbmc/qemu/configs/targets/sparc64-linux-user.mak
/openbmc/qemu/configs/targets/sparc64-softmmu.mak
/openbmc/qemu/configs/targets/tricore-softmmu.mak
/openbmc/qemu/configs/targets/x86_64-bsd-user.mak
/openbmc/qemu/configs/targets/x86_64-linux-user.mak
/openbmc/qemu/configs/targets/x86_64-softmmu.mak
/openbmc/qemu/configs/targets/xtensa-linux-user.mak
/openbmc/qemu/configs/targets/xtensa-softmmu.mak
/openbmc/qemu/configs/targets/xtensaeb-linux-user.mak
/openbmc/qemu/configs/targets/xtensaeb-softmmu.mak
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/devel/qapi-code-gen.rst
/openbmc/qemu/docs/devel/rust.rst
/openbmc/qemu/docs/system/arm/emulation.rst
/openbmc/qemu/docs/tools/qemu-nbd.rst
/openbmc/qemu/docs/user/main.rst
/openbmc/qemu/dump/dump-hmp-cmds.c
/openbmc/qemu/fpu/softfloat-parts.c.inc
/openbmc/qemu/fpu/softfloat.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/hw/9pfs/9p-local.c
/openbmc/qemu/hw/9pfs/9p-util-generic.c
/openbmc/qemu/hw/9pfs/9p-util.h
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/9pfs/meson.build
/openbmc/qemu/hw/9pfs/trace-events
/openbmc/qemu/hw/arm/aspeed_ast27x0.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/fsl-imx6ul.c
/openbmc/qemu/hw/arm/fsl-imx7.c
/openbmc/qemu/hw/arm/mps2-tz.c
/openbmc/qemu/hw/arm/mps2.c
/openbmc/qemu/hw/arm/mps3r.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xlnx-versal.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/Kconfig
/openbmc/qemu/hw/char/diva-gsp.c
/openbmc/qemu/hw/char/meson.build
/openbmc/qemu/hw/core/machine-hmp-cmds.c
/openbmc/qemu/hw/core/machine-qmp-cmds.c
/openbmc/qemu/hw/core/qdev-properties.c
/openbmc/qemu/hw/core/qdev.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cpu/a9mpcore.c
/openbmc/qemu/hw/cpu/arm11mpcore.c
/openbmc/qemu/hw/cpu/realview_mpcore.c
/openbmc/qemu/hw/display/artist.c
/openbmc/qemu/hw/hppa/Kconfig
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/hyperv/hv-balloon.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/kvm/xen_evtchn.c
/openbmc/qemu/hw/i386/monitor.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/loongarch/meson.build
/openbmc/qemu/hw/loongarch/virt-acpi-build.c
/openbmc/qemu/hw/loongarch/virt-fdt-build.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/rocker/rocker-hmp-cmds.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/xen_nic.c
/openbmc/qemu/hw/pci-host/astro.c
/openbmc/qemu/hw/pci/pci-hmp-cmds.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/riscv/riscv_hart.c
/openbmc/qemu/hw/rx/rx62n.c
/openbmc/qemu/hw/s390x/s390-skeys.c
/openbmc/qemu/hw/s390x/s390-stattrib.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/usb/xen-usb.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/container.c
/openbmc/qemu/hw/vfio/helpers.c
/openbmc/qemu/hw/vfio/igd.c
/openbmc/qemu/hw/vfio/iommufd.c
/openbmc/qemu/hw/vfio/pci-quirks.c
/openbmc/qemu/hw/vfio/pci-quirks.h
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/virtio/virtio-hmp-cmds.c
/openbmc/qemu/hw/virtio/virtio-qmp.c
/openbmc/qemu/hw/xen/xen-bus.c
/openbmc/qemu/include/block/block-common.h
/openbmc/qemu/include/block/block-global-state.h
/openbmc/qemu/include/block/export.h
/openbmc/qemu/include/block/nbd.h
/openbmc/qemu/include/block/qdict.h
/openbmc/qemu/include/fpu/softfloat-helpers.h
/openbmc/qemu/include/fpu/softfloat-types.h
/openbmc/qemu/include/hw/arm/boot.h
/openbmc/qemu/include/hw/loongarch/virt.h
/openbmc/qemu/include/hw/pci-host/astro.h
/openbmc/qemu/include/hw/vfio/vfio-common.h
/openbmc/qemu/include/qapi/compat-policy.h
/openbmc/qemu/include/qapi/error.h
/openbmc/qemu/include/qapi/qmp-registry.h
/openbmc/qemu/include/qapi/util.h
/openbmc/qemu/include/qapi/visitor-impl.h
/openbmc/qemu/include/qapi/visitor.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qobject/json-parser.h
/openbmc/qemu/include/qobject/json-writer.h
/openbmc/qemu/include/qobject/qbool.h
/openbmc/qemu/include/qobject/qdict.h
/openbmc/qemu/include/qobject/qjson.h
/openbmc/qemu/include/qobject/qlist.h
/openbmc/qemu/include/qobject/qlit.h
/openbmc/qemu/include/qobject/qnull.h
/openbmc/qemu/include/qobject/qnum.h
/openbmc/qemu/include/qobject/qobject.h
/openbmc/qemu/include/qobject/qstring.h
/openbmc/qemu/include/system/block-backend-io.h
/openbmc/qemu/include/system/qtest.h
/openbmc/qemu/include/user/signal.h
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/signal-common.h
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/block-active.c
/openbmc/qemu/migration/dirtyrate.c
/openbmc/qemu/migration/migration-hmp-cmds.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/vmstate.c
/openbmc/qemu/monitor/hmp-cmds-target.c
/openbmc/qemu/monitor/hmp-cmds.c
/openbmc/qemu/monitor/hmp.c
/openbmc/qemu/monitor/monitor-internal.h
/openbmc/qemu/monitor/monitor.c
/openbmc/qemu/monitor/qemu-config-qmp.c
/openbmc/qemu/monitor/qmp.c
/openbmc/qemu/nbd/server.c
/openbmc/qemu/net/net-hmp-cmds.c
/openbmc/qemu/net/net.c
/openbmc/qemu/net/slirp.c
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/cxl.json
/openbmc/qemu/qapi/qapi-clone-visitor.c
/openbmc/qemu/qapi/qapi-dealloc-visitor.c
/openbmc/qemu/qapi/qapi-forward-visitor.c
/openbmc/qemu/qapi/qapi-util.c
/openbmc/qemu/qapi/qapi-visit-core.c
/openbmc/qemu/qapi/qmp-dispatch.c
/openbmc/qemu/qapi/qmp-event.c
/openbmc/qemu/qapi/qmp-registry.c
/openbmc/qemu/qapi/qobject-input-visitor.c
/openbmc/qemu/qapi/qobject-output-visitor.c
/openbmc/qemu/qapi/string-input-visitor.c
/openbmc/qemu/qapi/ui.json
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qemu-io-cmds.c
/openbmc/qemu/qemu-io.c
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qga/guest-agent-core.h
/openbmc/qemu/qga/main.c
/openbmc/qemu/qobject/block-qdict.c
/openbmc/qemu/qobject/json-parser-int.h
/openbmc/qemu/qobject/json-parser.c
/openbmc/qemu/qobject/json-writer.c
/openbmc/qemu/qobject/qbool.c
/openbmc/qemu/qobject/qdict.c
/openbmc/qemu/qobject/qjson.c
/openbmc/qemu/qobject/qlist.c
/openbmc/qemu/qobject/qlit.c
/openbmc/qemu/qobject/qnull.c
/openbmc/qemu/qobject/qnum.c
/openbmc/qemu/qobject/qobject-internal.h
/openbmc/qemu/qobject/qobject.c
/openbmc/qemu/qobject/qstring.c
/openbmc/qemu/qom/object.c
/openbmc/qemu/qom/object_interfaces.c
/openbmc/qemu/qom/qom-hmp-cmds.c
/openbmc/qemu/qom/qom-qmp-cmds.c
/openbmc/qemu/replay/replay-debugging.c
/openbmc/qemu/replay/replay-snapshot.c
/openbmc/qemu/roms/seabios-hppa
/openbmc/qemu/rust/Cargo.toml
char/pl011/src/device.rs
/openbmc/qemu/rust/qemu-api/src/lib.rs
/openbmc/qemu/rust/qemu-api/src/prelude.rs
/openbmc/qemu/rust/qemu-api/src/qom.rs
/openbmc/qemu/rust/qemu-api/src/vmstate.rs
/openbmc/qemu/rust/qemu-api/tests/tests.rs
/openbmc/qemu/scripts/qapi/commands.py
/openbmc/qemu/scripts/qapi/events.py
/openbmc/qemu/scripts/qapi/features.py
/openbmc/qemu/scripts/qapi/gen.py
/openbmc/qemu/scripts/qapi/introspect.py
/openbmc/qemu/scripts/qapi/main.py
/openbmc/qemu/scripts/qapi/schema.py
/openbmc/qemu/scripts/qapi/types.py
/openbmc/qemu/scripts/qapi/visit.py
/openbmc/qemu/scripts/qemu-gdb.py
/openbmc/qemu/scripts/qemugdb/coroutine.py
/openbmc/qemu/scsi/qemu-pr-helper.c
/openbmc/qemu/stats/stats-hmp-cmds.c
/openbmc/qemu/storage-daemon/qemu-storage-daemon.c
/openbmc/qemu/stubs/meson.build
/openbmc/qemu/stubs/monitor-fd.c
/openbmc/qemu/stubs/qmp-command-available.c
/openbmc/qemu/stubs/qmp-quit.c
/openbmc/qemu/system/device_tree.c
/openbmc/qemu/system/dirtylimit.c
/openbmc/qemu/system/qdev-monitor.c
/openbmc/qemu/system/qtest.c
/openbmc/qemu/system/runstate-hmp-cmds.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/alpha/cpu-param.h
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/alpha/fpu_helper.c
/openbmc/qemu/target/arm/arm-qmp-cmds.c
/openbmc/qemu/target/arm/cpu-features.h
/openbmc/qemu/target/arm/cpu-param.h
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/helper.h
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/tcg/cpu32.c
/openbmc/qemu/target/arm/tcg/cpu64.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/helper-sve.h
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/mve_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.c
/openbmc/qemu/target/arm/tcg/translate-a64.h
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/arm/tcg/vec_helper.c
/openbmc/qemu/target/arm/tcg/vec_internal.h
/openbmc/qemu/target/arm/vfp_helper.c
/openbmc/qemu/target/avr/cpu-param.h
/openbmc/qemu/target/hexagon/cpu-param.h
/openbmc/qemu/target/hppa/cpu-param.h
/openbmc/qemu/target/hppa/fpu_helper.c
/openbmc/qemu/target/i386/cpu-apic.c
/openbmc/qemu/target/i386/cpu-param.h
/openbmc/qemu/target/i386/cpu-system.c
/openbmc/qemu/target/i386/monitor.c
/openbmc/qemu/target/i386/tcg/fpu_helper.c
/openbmc/qemu/target/loongarch/cpu-param.h
/openbmc/qemu/target/loongarch/cpu.h
/openbmc/qemu/target/loongarch/loongarch-qmp-cmds.c
/openbmc/qemu/target/m68k/cpu-param.h
/openbmc/qemu/target/microblaze/cpu-param.h
/openbmc/qemu/target/mips/cpu-param.h
/openbmc/qemu/target/mips/fpu_helper.h
/openbmc/qemu/target/mips/msa.c
/openbmc/qemu/target/openrisc/cpu-param.h
/openbmc/qemu/target/ppc/cpu-param.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/riscv/cpu-param.h
/openbmc/qemu/target/riscv/riscv-qmp-cmds.c
/openbmc/qemu/target/rx/cpu-param.h
/openbmc/qemu/target/rx/cpu.c
/openbmc/qemu/target/s390x/cpu-param.h
/openbmc/qemu/target/s390x/cpu_models_system.c
/openbmc/qemu/target/sh4/cpu-param.h
/openbmc/qemu/target/sh4/cpu.c
/openbmc/qemu/target/sparc/cpu-param.h
/openbmc/qemu/target/tricore/cpu-param.h
/openbmc/qemu/target/tricore/helper.c
/openbmc/qemu/target/xtensa/cpu-param.h
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/test-rust
/openbmc/qemu/tests/fp/fp-bench.c
/openbmc/qemu/tests/functional/meson.build
/openbmc/qemu/tests/functional/test_aarch64_virt.py
/openbmc/qemu/tests/functional/test_aarch64_xen.py
/openbmc/qemu/tests/functional/test_ppc_sam460ex.py
/openbmc/qemu/tests/functional/test_x86_64_hotplug_blk.py
/openbmc/qemu/tests/guest-debug/run-test.py
/openbmc/qemu/tests/meson.build
/openbmc/qemu/tests/qapi-schema/features-too-many.err
/openbmc/qemu/tests/qapi-schema/features-too-many.json
/openbmc/qemu/tests/qapi-schema/features-too-many.out
/openbmc/qemu/tests/qapi-schema/meson.build
/openbmc/qemu/tests/qemu-iotests/041
/openbmc/qemu/tests/qemu-iotests/165
/openbmc/qemu/tests/qemu-iotests/184.out
/openbmc/qemu/tests/qemu-iotests/191.out
/openbmc/qemu/tests/qemu-iotests/273.out
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/qemu-iotests/tests/copy-before-write
/openbmc/qemu/tests/qemu-iotests/tests/inactive-node-nbd
/openbmc/qemu/tests/qemu-iotests/tests/inactive-node-nbd.out
/openbmc/qemu/tests/qemu-iotests/tests/migrate-bitmaps-test
/openbmc/qemu/tests/qemu-iotests/tests/qsd-migrate
/openbmc/qemu/tests/qemu-iotests/tests/qsd-migrate.out
/openbmc/qemu/tests/qtest/adm1266-test.c
/openbmc/qemu/tests/qtest/adm1272-test.c
/openbmc/qemu/tests/qtest/ahci-test.c
/openbmc/qemu/tests/qtest/arm-cpu-features.c
/openbmc/qemu/tests/qtest/aspeed_gpio-test.c
/openbmc/qemu/tests/qtest/ast2700-gpio-test.c
/openbmc/qemu/tests/qtest/boot-order-test.c
/openbmc/qemu/tests/qtest/cdrom-test.c
/openbmc/qemu/tests/qtest/cpu-plug-test.c
/openbmc/qemu/tests/qtest/device-introspect-test.c
/openbmc/qemu/tests/qtest/device-plug-test.c
/openbmc/qemu/tests/qtest/drive_del-test.c
/openbmc/qemu/tests/qtest/emc141x-test.c
/openbmc/qemu/tests/qtest/fdc-test.c
/openbmc/qemu/tests/qtest/hd-geo-test.c
/openbmc/qemu/tests/qtest/ide-test.c
/openbmc/qemu/tests/qtest/isl_pmbus_vr-test.c
/openbmc/qemu/tests/qtest/libqmp.c
/openbmc/qemu/tests/qtest/libqmp.h
/openbmc/qemu/tests/qtest/libqos/generic-pcihost.c
/openbmc/qemu/tests/qtest/libqos/libqos.c
/openbmc/qemu/tests/qtest/libqos/pci-pc.c
/openbmc/qemu/tests/qtest/libqos/qos_external.c
/openbmc/qemu/tests/qtest/libqos/virtio-pci-modern.c
/openbmc/qemu/tests/qtest/libqos/virtio-pci.c
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/libqtest.h
/openbmc/qemu/tests/qtest/lsm303dlhc-mag-test.c
/openbmc/qemu/tests/qtest/machine-none-test.c
/openbmc/qemu/tests/qtest/max34451-test.c
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-helpers.c
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/migration/compression-tests.c
/openbmc/qemu/tests/qtest/migration/cpr-tests.c
/openbmc/qemu/tests/qtest/migration/file-tests.c
/openbmc/qemu/tests/qtest/migration/framework.c
/openbmc/qemu/tests/qtest/migration/framework.h
/openbmc/qemu/tests/qtest/migration/migration-qmp.c
/openbmc/qemu/tests/qtest/migration/migration-util.c
/openbmc/qemu/tests/qtest/migration/misc-tests.c
/openbmc/qemu/tests/qtest/migration/postcopy-tests.c
/openbmc/qemu/tests/qtest/migration/precopy-tests.c
/openbmc/qemu/tests/qtest/migration/tls-tests.c
/openbmc/qemu/tests/qtest/netdev-socket.c
/openbmc/qemu/tests/qtest/npcm7xx_adc-test.c
/openbmc/qemu/tests/qtest/npcm7xx_emc-test.c
/openbmc/qemu/tests/qtest/npcm7xx_pwm-test.c
/openbmc/qemu/tests/qtest/npcm7xx_timer-test.c
/openbmc/qemu/tests/qtest/npcm7xx_watchdog_timer-test.c
/openbmc/qemu/tests/qtest/numa-test.c
/openbmc/qemu/tests/qtest/pvpanic-pci-test.c
/openbmc/qemu/tests/qtest/pvpanic-test.c
/openbmc/qemu/tests/qtest/q35-test.c
/openbmc/qemu/tests/qtest/qmp-cmd-test.c
/openbmc/qemu/tests/qtest/qmp-test.c
/openbmc/qemu/tests/qtest/qom-test.c
/openbmc/qemu/tests/qtest/qos-test.c
/openbmc/qemu/tests/qtest/readconfig-test.c
/openbmc/qemu/tests/qtest/tco-test.c
/openbmc/qemu/tests/qtest/test-filter-mirror.c
/openbmc/qemu/tests/qtest/test-filter-redirector.c
/openbmc/qemu/tests/qtest/test-netfilter.c
/openbmc/qemu/tests/qtest/test-x86-cpuid-compat.c
/openbmc/qemu/tests/qtest/tmp105-test.c
/openbmc/qemu/tests/qtest/tpm-emu.c
/openbmc/qemu/tests/qtest/tpm-util.c
/openbmc/qemu/tests/qtest/vhost-user-test.c
/openbmc/qemu/tests/qtest/virtio-net-failover.c
/openbmc/qemu/tests/qtest/virtio-net-test.c
/openbmc/qemu/tests/qtest/vmgenid-test.c
/openbmc/qemu/tests/qtest/wdt_ib700-test.c
/openbmc/qemu/tests/tcg/arm/Makefile.target
/openbmc/qemu/tests/tcg/arm/README
/openbmc/qemu/tests/tcg/multiarch/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/gdbstub/late-attach.py
/openbmc/qemu/tests/tcg/multiarch/late-attach.c
/openbmc/qemu/tests/unit/check-block-qdict.c
/openbmc/qemu/tests/unit/check-qdict.c
/openbmc/qemu/tests/unit/check-qjson.c
/openbmc/qemu/tests/unit/check-qlist.c
/openbmc/qemu/tests/unit/check-qlit.c
/openbmc/qemu/tests/unit/check-qnull.c
/openbmc/qemu/tests/unit/check-qnum.c
/openbmc/qemu/tests/unit/check-qobject.c
/openbmc/qemu/tests/unit/check-qom-proplist.c
/openbmc/qemu/tests/unit/check-qstring.c
/openbmc/qemu/tests/unit/test-block-iothread.c
/openbmc/qemu/tests/unit/test-blockjob-txn.c
/openbmc/qemu/tests/unit/test-blockjob.c
/openbmc/qemu/tests/unit/test-char.c
/openbmc/qemu/tests/unit/test-forward-visitor.c
/openbmc/qemu/tests/unit/test-image-locking.c
/openbmc/qemu/tests/unit/test-keyval.c
/openbmc/qemu/tests/unit/test-qemu-opts.c
/openbmc/qemu/tests/unit/test-qga.c
/openbmc/qemu/tests/unit/test-qmp-cmds.c
/openbmc/qemu/tests/unit/test-qmp-event.c
/openbmc/qemu/tests/unit/test-qobject-input-visitor.c
/openbmc/qemu/tests/unit/test-qobject-output-visitor.c
/openbmc/qemu/tests/unit/test-replication.c
/openbmc/qemu/tests/unit/test-visitor-serialization.c
/openbmc/qemu/trace/trace-hmp-cmds.c
/openbmc/qemu/ui/ui-hmp-cmds.c
/openbmc/qemu/util/error.c
/openbmc/qemu/util/keyval.c
/openbmc/qemu/util/meson.build
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/qemu-config.c
/openbmc/qemu/util/qemu-option.c
/openbmc/qemu/util/qemu-timer.c
9955093b07-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: use default set of lints

Being the first crate added to QEMU, pl011 has a rather restrictive
Clippy setup. This can be sometimes a bit too heavy on its suggestions,
for example

error:

rust: pl011: use default set of lints

Being the first crate added to QEMU, pl011 has a rather restrictive
Clippy setup. This can be sometimes a bit too heavy on its suggestions,
for example

error: this could be a `const fn`
--> hw/char/pl011/src/device.rs:382:5
|
382 | / fn set_read_trigger(&mut self) {
383 | | self.read_trigger = 1;
384 | | }
| |_____^

Just use the standard set that is present in rust/Cargo.toml, with
just a small adjustment to allow upper case acronyms which are used
for register names.

Reported-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

669fab6a27-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: include rust_version in Cargo.toml

Tell clippy the minimum supported Rust version for QEMU.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

f261378927-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: remove unnecessary Cargo.toml metadata

Some items of Cargo.toml (readme, homepage, repository) are
only present because of clippy::cargo warnings being enabled in
rust/hw/char/pl011/src/lib.rs

rust: remove unnecessary Cargo.toml metadata

Some items of Cargo.toml (readme, homepage, repository) are
only present because of clippy::cargo warnings being enabled in
rust/hw/char/pl011/src/lib.rs. But these items are not
particularly useful and would be all the same for all Cargo.toml
files in the QEMU workspace. Clean them up.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest-template.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/internal-target.h
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/vcpu-state.h
/openbmc/qemu/audio/dbusaudio.c
/openbmc/qemu/backends/hostmem-epc.c
/openbmc/qemu/backends/hostmem-file.c
/openbmc/qemu/backends/hostmem-memfd.c
/openbmc/qemu/backends/hostmem-ram.c
/openbmc/qemu/backends/hostmem-shm.c
/openbmc/qemu/block/parallels.c
/openbmc/qemu/block/vvfat.c
/openbmc/qemu/chardev/char-hub.c
/openbmc/qemu/chardev/char-pty.c
/openbmc/qemu/chardev/char.c
/openbmc/qemu/chardev/chardev-internal.h
/openbmc/qemu/chardev/meson.build
/openbmc/qemu/contrib/plugins/cache.c
/openbmc/qemu/crypto/pbkdf.c
/openbmc/qemu/disas/hppa.c
/openbmc/qemu/disas/riscv.c
/openbmc/qemu/docs/devel/migration/CPR.rst
/openbmc/qemu/docs/devel/tcg-ops.rst
/openbmc/qemu/docs/devel/testing/functional.rst
/openbmc/qemu/docs/system/arm/aspeed.rst
/openbmc/qemu/fpu/softfloat-parts.c.inc
/openbmc/qemu/fpu/softfloat.c
/openbmc/qemu/gdbstub/user-target.c
/openbmc/qemu/host/include/riscv/host/cpuinfo.h
/openbmc/qemu/hw/alpha/dp264.c
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/aspeed_ast27x0.c
/openbmc/qemu/hw/arm/b-l475e-iot01a.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/fsl-imx7.c
/openbmc/qemu/hw/arm/microbit.c
/openbmc/qemu/hw/arm/mps2-tz.c
/openbmc/qemu/hw/arm/mps2.c
/openbmc/qemu/hw/arm/msf2-som.c
/openbmc/qemu/hw/arm/musca.c
/openbmc/qemu/hw/arm/netduino2.c
/openbmc/qemu/hw/arm/netduinoplus2.c
/openbmc/qemu/hw/arm/nrf51_soc.c
/openbmc/qemu/hw/arm/olimex-stm32-h405.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/stm32vldiscovery.c
/openbmc/qemu/hw/avr/boot.c
/openbmc/qemu/hw/char/Kconfig
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/ipoctal232.c
/openbmc/qemu/hw/char/meson.build
/openbmc/qemu/hw/char/serial-pci-multi.c
/openbmc/qemu/hw/core/generic-loader.c
/openbmc/qemu/hw/core/irq.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/hppa/hppa_hardware.h
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/multiboot.c
/openbmc/qemu/hw/i386/x86-common.c
/openbmc/qemu/hw/ipack/Kconfig
/openbmc/qemu/hw/ipack/ipack.c
/openbmc/qemu/hw/ipack/meson.build
/openbmc/qemu/hw/ipack/tpci200.c
/openbmc/qemu/hw/loongarch/boot.c
/openbmc/qemu/hw/m68k/an5206.c
/openbmc/qemu/hw/m68k/mcf5208.c
/openbmc/qemu/hw/m68k/q800.c
/openbmc/qemu/hw/m68k/virt.c
/openbmc/qemu/hw/microblaze/boot.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/fuloong2e.c
/openbmc/qemu/hw/mips/loongson3_bootp.c
/openbmc/qemu/hw/mips/loongson3_bootp.h
/openbmc/qemu/hw/mips/loongson3_virt.c
/openbmc/qemu/hw/mips/malta.c
/openbmc/qemu/hw/mips/meson.build
/openbmc/qemu/hw/mips/mipssim.c
/openbmc/qemu/hw/misc/i2c-echo.c
/openbmc/qemu/hw/misc/ivshmem-flat.c
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/openrisc/boot.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/raven.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/ppc405_boards.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/riscv/boot.c
/openbmc/qemu/hw/rx/rx-gdbsim.c
/openbmc/qemu/hw/s390x/ipl.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/sd/omap_mmc.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/timer/aspeed_timer.c
/openbmc/qemu/hw/timer/trace-events
/openbmc/qemu/hw/tricore/triboard.c
/openbmc/qemu/hw/tricore/tricore_testboard.c
/openbmc/qemu/hw/usb/canokey.c
/openbmc/qemu/hw/usb/canokey.h
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/virtio/virtio-balloon-pci.c
/openbmc/qemu/hw/virtio/virtio-mem-pci.c
/openbmc/qemu/hw/watchdog/wdt_aspeed.c
/openbmc/qemu/hw/xtensa/sim.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/chardev/char.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/fpu/softfloat-helpers.h
/openbmc/qemu/include/fpu/softfloat-types.h
/openbmc/qemu/include/hw/arm/aspeed.h
/openbmc/qemu/include/hw/arm/fsl-imx6.h
/openbmc/qemu/include/hw/arm/fsl-imx7.h
/openbmc/qemu/include/hw/arm/nrf51_soc.h
/openbmc/qemu/include/hw/arm/omap.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/char/imx_serial.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/ipack/ipack.h
/openbmc/qemu/include/hw/irq.h
/openbmc/qemu/include/hw/loader.h
/openbmc/qemu/include/hw/misc/ivshmem-flat.h
/openbmc/qemu/include/hw/pci-host/designware.h
/openbmc/qemu/include/hw/sd/sd.h
/openbmc/qemu/include/hw/sd/sdhci.h
/openbmc/qemu/include/hw/timer/aspeed_timer.h
/openbmc/qemu/include/migration/cpr.h
/openbmc/qemu/include/migration/misc.h
/openbmc/qemu/include/migration/vmstate.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/tcg/tcg-opc.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/linux-user/fd-trans.c
/openbmc/qemu/linux-user/sparc/target_proc.h
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/linux-user/syscall_defs.h
/openbmc/qemu/meson.build
/openbmc/qemu/migration/cpr-transfer.c
/openbmc/qemu/migration/cpr.c
/openbmc/qemu/migration/meson.build
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/savevm.h
/openbmc/qemu/migration/trace-events
/openbmc/qemu/migration/vmstate-types.c
/openbmc/qemu/migration/vmstate.c
/openbmc/qemu/net/dump.c
/openbmc/qemu/net/net.c
/openbmc/qemu/net/slirp.c
/openbmc/qemu/pc-bios/hppa-firmware.img
/openbmc/qemu/pc-bios/hppa-firmware64.img
/openbmc/qemu/pc-bios/s390-ccw.img
/openbmc/qemu/pc-bios/s390-ccw/bootmap.c
/openbmc/qemu/pc-bios/s390-ccw/netmain.c
/openbmc/qemu/pc-bios/s390-ccw/virtio-net.c
/openbmc/qemu/pc-bios/s390-ccw/virtio.c
/openbmc/qemu/pc-bios/s390-ccw/virtio.h
/openbmc/qemu/qapi/audio.json
/openbmc/qemu/qapi/char.json
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/roms/seabios-hppa
char/pl011/Cargo.toml
char/pl011/src/lib.rs
/openbmc/qemu/rust/qemu-api-macros/Cargo.toml
/openbmc/qemu/rust/qemu-api/src/zeroable.rs
/openbmc/qemu/rust/qemu-api/tests/tests.rs
/openbmc/qemu/scripts/qom-cast-macro-clean-cocci-gen.py
/openbmc/qemu/stubs/vmstate.c
/openbmc/qemu/system/memory.c
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/trace-events
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/sme_helper.c
/openbmc/qemu/target/arm/tcg/sve_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-sme.c
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate-vfp.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/arm/tcg/vec_helper.c
/openbmc/qemu/target/arm/vfp_helper.c
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/hppa/helper.c
/openbmc/qemu/target/hppa/helper.h
/openbmc/qemu/target/hppa/insns.decode
/openbmc/qemu/target/hppa/int_helper.c
/openbmc/qemu/target/hppa/machine.c
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/sys_helper.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/i386/tcg/fpu_helper.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/csr.c
/openbmc/qemu/target/loongarch/csr.h
/openbmc/qemu/target/loongarch/meson.build
/openbmc/qemu/target/loongarch/tcg/insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/loongarch/tcg/tcg_loongarch.h
/openbmc/qemu/target/loongarch/tcg/translate.c
/openbmc/qemu/target/m68k/fpu_helper.c
/openbmc/qemu/target/m68k/semihosting-stub.c
/openbmc/qemu/target/mips/tcg/msa_helper.c
/openbmc/qemu/target/mips/tcg/system/semihosting-stub.c
/openbmc/qemu/target/rx/op_helper.c
/openbmc/qemu/target/s390x/tcg/insn-data.h.inc
/openbmc/qemu/target/s390x/tcg/mem_helper.c
/openbmc/qemu/target/tricore/fpu_helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target-has.h
/openbmc/qemu/tcg/aarch64/tcg-target-mo.h
/openbmc/qemu/tcg/aarch64/tcg-target-opc.h.inc
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/arm/tcg-target-has.h
/openbmc/qemu/tcg/arm/tcg-target-mo.h
/openbmc/qemu/tcg/arm/tcg-target-opc.h.inc
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.h
/openbmc/qemu/tcg/i386/tcg-target-has.h
/openbmc/qemu/tcg/i386/tcg-target-mo.h
/openbmc/qemu/tcg/i386/tcg-target-opc.h.inc
/openbmc/qemu/tcg/i386/tcg-target.c.inc
/openbmc/qemu/tcg/i386/tcg-target.h
/openbmc/qemu/tcg/loongarch64/tcg-target-has.h
/openbmc/qemu/tcg/loongarch64/tcg-target-mo.h
/openbmc/qemu/tcg/loongarch64/tcg-target-opc.h.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.h
/openbmc/qemu/tcg/mips/tcg-target-has.h
/openbmc/qemu/tcg/mips/tcg-target-mo.h
/openbmc/qemu/tcg/mips/tcg-target-opc.h.inc
/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-has.h
/openbmc/qemu/tcg/ppc/tcg-target-mo.h
/openbmc/qemu/tcg/ppc/tcg-target-opc.h.inc
/openbmc/qemu/tcg/ppc/tcg-target.c.inc
/openbmc/qemu/tcg/ppc/tcg-target.h
/openbmc/qemu/tcg/riscv/tcg-target-has.h
/openbmc/qemu/tcg/riscv/tcg-target-mo.h
/openbmc/qemu/tcg/riscv/tcg-target-opc.h.inc
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.h
/openbmc/qemu/tcg/s390x/tcg-target-has.h
/openbmc/qemu/tcg/s390x/tcg-target-mo.h
/openbmc/qemu/tcg/s390x/tcg-target-opc.h.inc
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/s390x/tcg-target.h
/openbmc/qemu/tcg/sparc64/tcg-target-has.h
/openbmc/qemu/tcg/sparc64/tcg-target-mo.h
/openbmc/qemu/tcg/sparc64/tcg-target-opc.h.inc
/openbmc/qemu/tcg/sparc64/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target.h
/openbmc/qemu/tcg/tcg-common.c
/openbmc/qemu/tcg/tcg-has.h
/openbmc/qemu/tcg/tcg-internal.h
/openbmc/qemu/tcg/tcg-op-gvec.c
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg-op-vec.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci.c
/openbmc/qemu/tcg/tci/tcg-target-has.h
/openbmc/qemu/tcg/tci/tcg-target-mo.h
/openbmc/qemu/tcg/tci/tcg-target-opc.h.inc
/openbmc/qemu/tcg/tci/tcg-target.c.inc
/openbmc/qemu/tcg/tci/tcg-target.h
/openbmc/qemu/tests/avocado/replay_kernel.py
/openbmc/qemu/tests/functional/aspeed.py
/openbmc/qemu/tests/functional/meson.build
/openbmc/qemu/tests/functional/qemu_test/__init__.py
/openbmc/qemu/tests/functional/qemu_test/decorators.py
/openbmc/qemu/tests/functional/replay_kernel.py
/openbmc/qemu/tests/functional/test_aarch64_aspeed.py
/openbmc/qemu/tests/functional/test_aarch64_sbsaref.py
/openbmc/qemu/tests/functional/test_aarch64_sbsaref_alpine.py
/openbmc/qemu/tests/functional/test_aarch64_sbsaref_freebsd.py
/openbmc/qemu/tests/functional/test_aarch64_tcg_plugins.py
/openbmc/qemu/tests/functional/test_arm_aspeed_ast2500.py
/openbmc/qemu/tests/functional/test_arm_aspeed_ast2600.py
/openbmc/qemu/tests/functional/test_arm_microbit.py
/openbmc/qemu/tests/functional/test_arm_quanta_gsj.py
/openbmc/qemu/tests/functional/test_migration.py
/openbmc/qemu/tests/functional/test_mips64el_replay.py
/openbmc/qemu/tests/functional/test_mips_malta.py
/openbmc/qemu/tests/functional/test_mips_replay.py
/openbmc/qemu/tests/functional/test_mipsel_replay.py
/openbmc/qemu/tests/functional/test_ppc64_mac99.py
/openbmc/qemu/tests/functional/test_ppc_40p.py
/openbmc/qemu/tests/functional/test_x86_64_kvm_xen.py
/openbmc/qemu/tests/qemu-iotests/194.out
/openbmc/qemu/tests/qemu-iotests/203.out
/openbmc/qemu/tests/qemu-iotests/234.out
/openbmc/qemu/tests/qemu-iotests/262.out
/openbmc/qemu/tests/qemu-iotests/280.out
/openbmc/qemu/tests/qtest/libqos/fw_cfg.c
/openbmc/qemu/tests/qtest/libqos/fw_cfg.h
/openbmc/qemu/tests/qtest/libqos/libqos.c
/openbmc/qemu/tests/qtest/libqos/meson.build
/openbmc/qemu/tests/qtest/libqos/virtio-scmi.c
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/libqtest.h
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration/cpr-tests.c
/openbmc/qemu/tests/qtest/migration/framework.c
/openbmc/qemu/tests/qtest/migration/framework.h
/openbmc/qemu/tests/qtest/migration/migration-qmp.c
/openbmc/qemu/tests/qtest/migration/migration-qmp.h
/openbmc/qemu/tests/qtest/migration/migration-util.c
/openbmc/qemu/tests/qtest/migration/misc-tests.c
/openbmc/qemu/tests/qtest/migration/precopy-tests.c
/openbmc/qemu/tests/qtest/vhost-user-test.c
/openbmc/qemu/tests/qtest/virtio-net-failover.c
/openbmc/qemu/tests/qtest/vmcoreinfo-test.c
/openbmc/qemu/tests/tcg/s390x/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/s390x/mvc-smc.c
/openbmc/qemu/tests/unit/test-char.c
/openbmc/qemu/ui/dbus-console.c
/openbmc/qemu/ui/dbus-display1.xml
/openbmc/qemu/ui/dbus.c
/openbmc/qemu/util/cpuinfo-riscv.c
/openbmc/qemu/util/memfd.c
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/oslib-win32.c
af7edb1d02-Dec-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: qdev: make reset take a shared reference

Because register reset is within a borrow_mut() call, reset
does not need anymore a mut reference to the PL011State.

Reviewed-by: Zhao Liu <zhao1.liu@

rust: qdev: make reset take a shared reference

Because register reset is within a borrow_mut() call, reset
does not need anymore a mut reference to the PL011State.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

20bcc96f17-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: drop use of ControlFlow

It is a poor match for what the code is doing, anyway.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

b3a29b3d17-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: pull device-specific code out of MemoryRegionOps callbacks

read() can now return a simple u64.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat

rust: pl011: pull device-specific code out of MemoryRegionOps callbacks

read() can now return a simple u64.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

c44818a502-Dec-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: remove duplicate definitions

Unify the "Interrupt" enum and the "INT_*" constants with a struct
that contains the bits. The "int_level" and "int_enabled" fields
could use a crate such

rust: pl011: remove duplicate definitions

Unify the "Interrupt" enum and the "INT_*" constants with a struct
that contains the bits. The "int_level" and "int_enabled" fields
could use a crate such as "bitflags".

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

a1ab4eed24-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: wrap registers with BqlRefCell

This is a step towards making memory ops use a shared reference to the
device type; it's not yet possible due to the calls to character device
functions.

rust: pl011: wrap registers with BqlRefCell

This is a step towards making memory ops use a shared reference to the
device type; it's not yet possible due to the calls to character device
functions.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

49bfe63f24-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: extract PL011Registers

Pull all the mutable fields of PL011State into a separate struct.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

ab6b6a8a24-Jan-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: pull interrupt updates out of read/write ops

qemu_irqs are not part of the vmstate, therefore they will remain in
PL011State. Update them if needed after regs_read()/regs_write().

App

rust: pl011: pull interrupt updates out of read/write ops

qemu_irqs are not part of the vmstate, therefore they will remain in
PL011State. Update them if needed after regs_read()/regs_write().

Apply #[must_use] to functions that return whether the interrupt state
could have changed, so that it's harder to forget the call to update().

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

1376127706-Dec-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: extract CharBackend receive logic into a separate function

Prepare for moving all references to the registers and the FIFO into a
separate struct.

Reviewed-by: Zhao Liu <zhao1.liu@inte

rust: pl011: extract CharBackend receive logic into a separate function

Prepare for moving all references to the registers and the FIFO into a
separate struct.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

6d314cc010-Dec-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: extract conversion to RegisterOffset

As an added bonus, this also makes the new function return u32 instead
of u64, thus factoring some casts into a single place.

Reviewed-by: Zhao Liu

rust: pl011: extract conversion to RegisterOffset

As an added bonus, this also makes the new function return u32 instead
of u64, thus factoring some casts into a single place.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

d1f27ae914-Nov-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: hide unnecessarily "pub" items from outside pl011::device

The only public interfaces for pl011 are TYPE_PL011 and pl011_create.
Remove pub from everything else.

Note: the "allow(dead_c

rust: pl011: hide unnecessarily "pub" items from outside pl011::device

The only public interfaces for pl011 are TYPE_PL011 and pl011_create.
Remove pub from everything else.

Note: the "allow(dead_code)" is removed later.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

efe5719c12-Nov-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: pl011: remove unnecessary "extern crate"

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

123456