cloud-hypervisor/devices/src/legacy
Jianyong Wu 6dbc13627a devices: Emulate debug I/O based on pl011
To emulate debug I/O port on arm64, we need trap from guest to VMM.
Generally, there are 3 ways to go:
1) execute a privilege intruction like "wfi";
2) access a system register;
3) access device MMIO region;
However, 1) and 2) often handled in kvm, thus 3) it's the choice.

There maybe lots of repeated work and enlarge the size of clh to develop
a new device, so it's better to reuse the current device. Luckily, I
find that pl011 is the eariest device initialized in kernel and, there
is reserved region in it which we can reuse for emulating debug I/O.

Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
2022-03-23 18:25:48 +08:00
..
cmos.rs devices: legacy: cmos: Fix register D emulation 2021-11-30 09:08:44 -08:00
fwdebug.rs misc: Make Bus::write() return an Option<Arc<Barrier>> 2020-12-17 11:23:53 +00:00
gpio_pl061.rs clippy: Fix redundant allocations 2021-07-29 13:28:57 +02:00
i8042.rs devices, vmm: Upgrade exit reasons to info!() level debugging 2021-09-03 09:30:55 -07:00
mod.rs aarch64: Address Rust 1.51.0 clippy issue (upper_case_acroynms) 2021-03-26 11:32:09 +00:00
rtc_pl031.rs devices: legacy: Fix beta clippy issues 2022-01-14 14:33:18 +00:00
serial.rs devices: Add utility functions for the serial output buffer 2021-09-27 14:18:21 +01:00
uart_pl011.rs devices: Emulate debug I/O based on pl011 2022-03-23 18:25:48 +08:00