1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
# Changelog
# v0.7.0
## Changed
- Update vmm-sys-utili dependency to 0.11.0
- Switched to specifying dependencies using caret requirements
instead of comparision requirements
# v0.6.0
## Added
- Added `SerialState`, and support for saving and restoring the state of the
`Serial` device ([#73](https://github.com/rust-vmm/vm-superio/pull/73)).
- Added the `Debug` derive to the exported structures
([#75](https://github.com/rust-vmm/vm-superio/pull/75)).
## Fixed
- Fixed `enqueue_raw_bytes` for the corner case when 0 bytes were sent, and the
fifo was full ([#77](https://github.com/rust-vmm/vm-superio/pull/77)).
# v0.5.0
## Added
- Added `RtcState`, and support for saving and restoring the state of the `Rtc`
device. This support is useful for snapshot use cases, such as live
migration ([#65](https://github.com/rust-vmm/vm-superio/pull/65)).
## Fixed
- Fixed potential overflow in the `Rtc` implementation caused by an invalid
offset ([#65](https://github.com/rust-vmm/vm-superio/pull/65)).
# v0.4.0
## Added
- Added `in_buffer_empty` to SerialEvents trait. This helps with handling
the registration of I/O events related to the serial input
([#63](https://github.com/rust-vmm/vm-superio/pull/63)).
## Changed
- Changed `RTC` to `Rtc` and `RTCEvents` to `RtcEvents` as part of the Rust
version update to 1.52.1
([#57](https://github.com/rust-vmm/vm-superio/pull/57)).
# v0.3.0
## Fixed
- Fixed implementation of Data Register (DR) which caused the guest time to be
in the year 1970 ([#47](https://github.com/rust-vmm/vm-superio/issues/47)).
# v0.2.0
## Added
- Added emulation support for an i8042 controller that only handles the CPU
reset ([#11](https://github.com/rust-vmm/vm-superio/pull/11)).
- Added `SerialEvents` trait, which can be implemented by a backend that wants
to keep track of serial events using metrics, logs etc
([#5](https://github.com/rust-vmm/vm-superio/issues/5)).
- Added a threat model to the serial console documentation
([#16](https://github.com/rust-vmm/vm-superio/issues/16)).
- Added emulation support for an ARM PL031 Real Time Clock
([#22](https://github.com/rust-vmm/vm-superio/issues/22)), and the `RTCEvents`
trait, used for keeping track of RTC events
([#34](https://github.com/rust-vmm/vm-superio/issues/34)).
- Added an implementation for `Arc<EV>` for both serial console and RTC device
([#40](https://github.com/rust-vmm/vm-superio/pull/40)).
- Added methods for retrieving a reference to the events object for both serial
console and RTC device
([#40](https://github.com/rust-vmm/vm-superio/pull/40)).
## Changed
- Changed the notification mechanism from EventFd to the Trigger abstraction
for both serial console and i8042
([#7](https://github.com/rust-vmm/vm-superio/issues/7)).
## Fixed
- Limited the maximum number of bytes allowed at a time, when enqueuing input
for serial, to 64 (FIFO_SIZE) to avoid memory pressure
([#17](https://github.com/rust-vmm/vm-superio/issues/17)).
- Fixed possible indefinite blocking of the serial driver by always sending the
THR Empty interrupt to it when trying to write to the device
([#23](https://github.com/rust-vmm/vm-superio/issues/23)).
# v0.1.0
This is the first `vm-superio` release.
The `vm-superio` crate provides emulation for legacy devices. For now, it offers
this support only for the Linux serial console.
|