mbox

[PULL,00/27] rust, Windows patches for 2025-02-13

Message ID 20250213160054.3937012-1-pbonzini@redhat.com (mailing list archive)
State New
Headers show

Pull-request

https://gitlab.com/bonzini/qemu.git tags/for-upstream

Message

Paolo Bonzini Feb. 13, 2025, 4 p.m. UTC
The following changes since commit de278e54aefed143526174335f8286f7437d20be:

  Merge tag 'pull-loongarch-20250212' of https://gitlab.com/bibo-mao/qemu into staging (2025-02-12 09:16:36 -0500)

are available in the Git repository at:

  https://gitlab.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to 4dafba778aa3e5f5fd3b2c6333afd7650dcf54e2:

  ui/sdl2: reenable the SDL2 Windows keyboard hook procedure (2025-02-13 13:50:45 +0100)

----------------------------------------------------------------
* rust: more qdev bindings
* rust: HPET device model with timer and GPIO bindings
* rust: small cleanups and fixes; run doctests during CI
* ui/sdl2: reenable the SDL2 Windows keyboard hook procedure

----------------------------------------------------------------
Paolo Bonzini (16):
      rust: docs: document naming convention
      rust: qom: add reference counting functionality
      rust: qom: add object creation functionality
      rust: callbacks: allow passing optional callbacks as ()
      rust: qdev: add clock creation
      rust: qom: allow initializing interface vtables
      rust: qdev: make ObjectImpl a supertrait of DeviceImpl
      rust: qdev: switch from legacy reset to Resettable
      rust: bindings: add Send and Sync markers for types that have bindings
      rust: bindings for MemoryRegionOps
      rust: irq: define ObjectType for IRQState
      rust: chardev, qdev: add bindings to qdev_prop_set_chr
      rust: pl011: convert pl011_create to safe Rust
      rust: qemu_api: add a documentation header for all modules
      rust: vmstate: remove redundant link targets
      rust: fix doctests

Volker RĂ¼melin (1):
      ui/sdl2: reenable the SDL2 Windows keyboard hook procedure

Zhao Liu (10):
      i386/fw_cfg: move hpet_cfg definition to hpet.c
      rust/qdev: add the macro to define bit property
      rust/irq: Add a helper to convert [InterruptSource] to pointer
      rust: add bindings for gpio_{in|out} initialization
      rust: add bindings for memattrs
      rust: add bindings for timer
      rust/timer/hpet: define hpet_fw_cfg
      rust/timer/hpet: add basic HPET timer and HPETState
      rust/timer/hpet: add qom and qdev APIs support
      i386: enable rust hpet for pc when rust is enabled

 docs/devel/rust.rst                      |  46 ++
 configs/devices/i386-softmmu/default.mak |   1 +
 meson.build                              |   8 +
 include/hw/timer/hpet.h                  |   2 +-
 rust/wrapper.h                           |   3 +
 hw/i386/fw_cfg.c                         |   6 +-
 hw/i386/pc.c                             |   2 +-
 hw/timer/hpet.c                          |  16 +-
 ui/sdl2.c                                |  26 -
 .gitlab-ci.d/buildtest.yml               |   6 +
 hw/timer/Kconfig                         |   2 +-
 rust/Cargo.lock                          |   8 +
 rust/Cargo.toml                          |   1 +
 rust/hw/Kconfig                          |   1 +
 rust/hw/char/pl011/src/device.rs         | 121 +++--
 rust/hw/char/pl011/src/lib.rs            |   1 -
 rust/hw/char/pl011/src/memory_ops.rs     |  34 --
 rust/hw/meson.build                      |   1 +
 rust/hw/timer/Kconfig                    |   2 +
 rust/hw/timer/hpet/Cargo.toml            |  18 +
 rust/hw/timer/hpet/meson.build           |  18 +
 rust/hw/timer/hpet/src/fw_cfg.rs         |  69 +++
 rust/hw/timer/hpet/src/hpet.rs           | 889 +++++++++++++++++++++++++++++++
 rust/hw/timer/hpet/src/lib.rs            |  15 +
 rust/hw/timer/meson.build                |   1 +
 rust/qemu-api/meson.build                |   3 +
 rust/qemu-api/src/assertions.rs          |   4 +
 rust/qemu-api/src/bindings.rs            |  48 ++
 rust/qemu-api/src/c_str.rs               |   8 +
 rust/qemu-api/src/callbacks.rs           |  97 ++++
 rust/qemu-api/src/chardev.rs             |  19 +
 rust/qemu-api/src/irq.rs                 |  23 +-
 rust/qemu-api/src/lib.rs                 |   3 +
 rust/qemu-api/src/memory.rs              | 203 +++++++
 rust/qemu-api/src/offset_of.rs           |   7 +
 rust/qemu-api/src/prelude.rs             |   6 +
 rust/qemu-api/src/qdev.rs                | 276 +++++++++-
 rust/qemu-api/src/qom.rs                 | 226 +++++++-
 rust/qemu-api/src/sysbus.rs              |  41 +-
 rust/qemu-api/src/timer.rs               |  98 ++++
 rust/qemu-api/src/vmstate.rs             |  13 +-
 rust/qemu-api/src/zeroable.rs            |  12 +-
 rust/qemu-api/tests/tests.rs             |  45 +-
 tests/qtest/meson.build                  |   3 +-
 ui/meson.build                           |   4 -
 45 files changed, 2232 insertions(+), 204 deletions(-)
 delete mode 100644 rust/hw/char/pl011/src/memory_ops.rs
 create mode 100644 rust/hw/timer/Kconfig
 create mode 100644 rust/hw/timer/hpet/Cargo.toml
 create mode 100644 rust/hw/timer/hpet/meson.build
 create mode 100644 rust/hw/timer/hpet/src/fw_cfg.rs
 create mode 100644 rust/hw/timer/hpet/src/hpet.rs
 create mode 100644 rust/hw/timer/hpet/src/lib.rs
 create mode 100644 rust/hw/timer/meson.build
 create mode 100644 rust/qemu-api/src/chardev.rs
 create mode 100644 rust/qemu-api/src/memory.rs
 create mode 100644 rust/qemu-api/src/timer.rs

Comments

Stefan Hajnoczi Feb. 14, 2025, 4:58 p.m. UTC | #1
Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/10.0 for any user-visible changes.