mirror of
https://github.com/rust-vmm/vhost-device.git
synced 2025-12-26 14:41:23 +00:00
Bumps the vhost-device group with 9 updates: | Package | From | To | | --- | --- | --- | | [thiserror](https://github.com/dtolnay/thiserror) | `1.0.68` | `2.0.3` | | [libc](https://github.com/rust-lang/libc) | `0.2.161` | `0.2.162` | | [tempfile](https://github.com/Stebalien/tempfile) | `3.13.0` | `3.14.0` | | [rstest](https://github.com/la10736/rstest) | `0.19.0` | `0.23.0` | | [cc](https://github.com/rust-lang/cc-rs) | `1.1.36` | `1.1.37` | | [fastrand](https://github.com/smol-rs/fastrand) | `2.1.1` | `2.2.0` | | [rstest_macros](https://github.com/la10736/rstest) | `0.19.0` | `0.23.0` | | [rustix](https://github.com/bytecodealliance/rustix) | `0.38.39` | `0.38.40` | | [thiserror-impl](https://github.com/dtolnay/thiserror) | `1.0.68` | `1.0.69` | Updates `thiserror` from 1.0.68 to 2.0.3 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.68...2.0.3) Updates `libc` from 0.2.161 to 0.2.162 - [Release notes](https://github.com/rust-lang/libc/releases) - [Changelog](https://github.com/rust-lang/libc/blob/0.2.162/CHANGELOG.md) - [Commits](https://github.com/rust-lang/libc/compare/0.2.161...0.2.162) Updates `tempfile` from 3.13.0 to 3.14.0 - [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stebalien/tempfile/compare/v3.13.0...v3.14.0) Updates `rstest` from 0.19.0 to 0.23.0 - [Release notes](https://github.com/la10736/rstest/releases) - [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md) - [Commits](https://github.com/la10736/rstest/compare/v0.19.0...v0.23.0) Updates `cc` from 1.1.36 to 1.1.37 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.1.36...cc-v1.1.37) Updates `fastrand` from 2.1.1 to 2.2.0 - [Release notes](https://github.com/smol-rs/fastrand/releases) - [Changelog](https://github.com/smol-rs/fastrand/blob/master/CHANGELOG.md) - [Commits](https://github.com/smol-rs/fastrand/compare/v2.1.1...v2.2.0) Updates `rstest_macros` from 0.19.0 to 0.23.0 - [Release notes](https://github.com/la10736/rstest/releases) - [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md) - [Commits](https://github.com/la10736/rstest/compare/v0.19.0...v0.23.0) Updates `rustix` from 0.38.39 to 0.38.40 - [Release notes](https://github.com/bytecodealliance/rustix/releases) - [Changelog](https://github.com/bytecodealliance/rustix/blob/main/CHANGELOG.md) - [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.39...v0.38.40) Updates `thiserror-impl` from 1.0.68 to 1.0.69 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.68...1.0.69) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-major dependency-group: vhost-device - dependency-name: libc dependency-type: direct:production update-type: version-update:semver-patch dependency-group: vhost-device - dependency-name: tempfile dependency-type: direct:production update-type: version-update:semver-minor dependency-group: vhost-device - dependency-name: rstest dependency-type: direct:production update-type: version-update:semver-minor dependency-group: vhost-device - dependency-name: cc dependency-type: indirect update-type: version-update:semver-patch dependency-group: vhost-device - dependency-name: fastrand dependency-type: indirect update-type: version-update:semver-minor dependency-group: vhost-device - dependency-name: rstest_macros dependency-type: indirect update-type: version-update:semver-minor dependency-group: vhost-device - dependency-name: rustix dependency-type: indirect update-type: version-update:semver-patch dependency-group: vhost-device - dependency-name: thiserror-impl dependency-type: indirect update-type: version-update:semver-patch dependency-group: vhost-device ... Signed-off-by: dependabot[bot] <support@github.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||
| CHANGELOG.md | ||
| LICENSE-APACHE | ||
| LICENSE-BSD-3-Clause | ||
| README.md | ||
vhost-device-spi - SPI emulation backend daemon
Description
This program is a vhost-user backend that emulates a VirtIO SPI bus.
This program takes the layout of the spi bus and its devices on the host
OS and then talks to them via the /dev/spidevX.Y interface when a request
comes from the guest OS for a SPI device.
Synopsis
vhost-device-spi [OPTIONS]
Options
-h, --help
Print help.
-s, --socket-path=PATH
Location of vhost-user Unix domain sockets, this path will be suffixed with
0,1,2..socket_count-1.
-c, --socket-count=INT
Number of guests (sockets) to attach to, default set to 1.
-l, --device=SPI-DEVICES
Spi device full path at the host OS in the format:
/dev/spidevX.Y
Here,
X: is spi controller's bus number.
Y: is chip select index.
Examples
Dependencies
For testing the device the required dependencies are:
- Linux:
- Integrate virtio-spi driver:
- Set
CONFIG_SPI_VIRTIO=y
- QEMU:
- Integrate vhost-user-spi QEMU device:
Test the device
First start the daemon on the host machine::
```console
vhost-device-spi --socket-path=vspi.sock --socket-count=1 --device "/dev/spidev0.0"
```
The QEMU invocation needs to create a chardev socket the device spi use to communicate as well as share the guests memory over a memfd.
```console
qemu-system-aarch64 -m 1G \
-chardev socket,path=/home/root/vspi.sock0,id=vspi \
-device vhost-user-spi-pci,chardev=vspi,id=spi \
-object memory-backend-file,id=mem,size=1G,mem-path=/dev/shm,share=on \
-numa node,memdev=mem \
...
```
License
This project is licensed under either of
- Apache License, Version 2.0
- BSD-3-Clause License