docs/devel/rust.rst | 36 ++- meson.build | 15 +- meson_options.txt | 2 + rust/Cargo.toml | 2 + rust/hw/char/pl011/src/device.rs | 155 ++++------- rust/hw/char/pl011/src/lib.rs | 511 +----------------------------------- rust/hw/char/pl011/src/registers.rs | 506 +++++++++++++++++++++++++++++++++++ rust/hw/timer/hpet/src/hpet.rs | 291 ++++++++++---------- rust/qemu-api-macros/src/lib.rs | 90 ++++++- rust/qemu-api/meson.build | 24 +- rust/qemu-api/src/bindings.rs | 26 +- rust/qemu-api/src/cell.rs | 277 ++++++++++++++++++- rust/qemu-api/src/chardev.rs | 248 ++++++++++++++++- rust/qemu-api/src/irq.rs | 15 +- rust/qemu-api/src/memory.rs | 32 +-- rust/qemu-api/src/prelude.rs | 1 - rust/qemu-api/src/qdev.rs | 75 ++++-- rust/qemu-api/src/qom.rs | 118 ++------- rust/qemu-api/src/sysbus.rs | 40 ++- rust/qemu-api/src/timer.rs | 47 +++- rust/qemu-api/src/vmstate.rs | 3 +- rust/qemu-api/src/zeroable.rs | 1 + rust/qemu-api/tests/tests.rs | 34 +-- scripts/meson-buildoptions.py | 10 +- scripts/meson-buildoptions.sh | 2 + 25 files changed, 1551 insertions(+), 1010 deletions(-) create mode 100644 rust/hw/char/pl011/src/registers.rs