1 个不稳定版本

0.1.0 2024年7月30日

#42硬件支持

Download history 77/week @ 2024-07-24 49/week @ 2024-07-31

126 每月下载量

Apache-2.0 OR BSD-3-Clause

105KB
2.5K SLoC

vhost-device-spi - SPI仿真后端守护进程

描述

此程序是一个vhost-user后端,模拟VirtIO SPI总线。当客户操作系统请求SPI设备时,该程序通过/dev/spidevX.Y接口与主机操作系统上的spi总线及其设备进行通信。

概要

vhost-device-spi [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.

示例

依赖项

测试设备所需的依赖项包括

测试设备

首先在主机机器上启动守护进程:

```console
vhost-device-spi --socket-path=vspi.sock --socket-count=1 --device "/dev/spidev0.0"
```

QEMU调用需要创建一个chardev套接字,该套接字用于设备spi进行通信,并通过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 \
    ...
```

许可证

此项目许可以下任一许可证

依赖项

~4MB
~73K SLoC