aboutsummaryrefslogtreecommitdiff
path: root/rust/hw
diff options
context:
space:
mode:
authorZhao Liu <zhao1.liu@intel.com>2025-01-21 22:04:57 +0800
committerPaolo Bonzini <pbonzini@redhat.com>2025-01-23 11:50:53 +0100
commit06a1cfb5550a090b63c81cf5f44d2558010a8ed7 (patch)
treebc6ea7c64a93aad95c9b9ea7adfc9b1c98501cae /rust/hw
parent0f9eb0ff2b25787be62fceb036dba7c3f54fde2d (diff)
downloadqemu-06a1cfb5550a090b63c81cf5f44d2558010a8ed7.zip
qemu-06a1cfb5550a090b63c81cf5f44d2558010a8ed7.tar.gz
qemu-06a1cfb5550a090b63c81cf5f44d2558010a8ed7.tar.bz2
rust/pl011: Avoid bindings::*
List all the necessary bindings to better identify gaps in rust/qapi. And include the bindings wrapped by rust/qapi instead mapping the raw bindings directly. Inspired-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Zhao Liu <zhao1.liu@intel.com> Link: https://lore.kernel.org/r/20250121140457.84631-3-zhao1.liu@intel.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'rust/hw')
-rw-r--r--rust/hw/char/pl011/src/device.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/rust/hw/char/pl011/src/device.rs b/rust/hw/char/pl011/src/device.rs
index a0e0fbd..4f1080f 100644
--- a/rust/hw/char/pl011/src/device.rs
+++ b/rust/hw/char/pl011/src/device.rs
@@ -9,12 +9,19 @@ use std::{
};
use qemu_api::{
- bindings::{self, *},
+ bindings::{
+ error_fatal, hwaddr, memory_region_init_io, qdev_init_clock_in, qdev_new,
+ qdev_prop_set_chr, qemu_chr_fe_ioctl, qemu_chr_fe_set_handlers, qemu_chr_fe_write_all,
+ qemu_irq, sysbus_connect_irq, sysbus_mmio_map, sysbus_realize_and_unref, CharBackend,
+ Chardev, Clock, ClockEvent, MemoryRegion, QEMUChrEvent, CHR_IOCTL_SERIAL_SET_BREAK,
+ },
c_str,
irq::InterruptSource,
prelude::*,
- qdev::DeviceImpl,
+ qdev::{DeviceImpl, DeviceState, Property},
qom::{ClassInitImpl, ObjectImpl, ParentField},
+ sysbus::{SysBusDevice, SysBusDeviceClass},
+ vmstate::VMStateDescription,
};
use crate::{
@@ -494,7 +501,7 @@ impl PL011State {
}
pub fn event(&mut self, event: QEMUChrEvent) {
- if event == bindings::QEMUChrEvent::CHR_EVENT_BREAK && !self.loopback_enabled() {
+ if event == QEMUChrEvent::CHR_EVENT_BREAK && !self.loopback_enabled() {
self.put_fifo(registers::Data::BREAK.into());
}
}