QEMU 主机和客户机之间的串行通信

QEMU 主机和客户机之间的串行通信

我正在尝试在我的 QEMU 主机 (Debian Jessie x86_64) 和客户机 (也是 Debian Jessie,但在 ARM 上) 之间设置一对串行端口。除串行端口部分外,其他所有功能均正常。

我对 QEMU 还很陌生,所以可能有更好的方法,但我在运行 QEMU 时测试了以下标志:

-chardev tty,id=mytty,path=/dev/pts/2(/dev/pts/2 和 3 与 socat 一起运行)

-chardev pty,id=myptyQEMU 打开一个 PTY,但是当我尝试从主机读取或写入时,权限被拒绝。

无论如何,我都无法在我的客户机中找到端口。/dev/pts 是空的,而 /dev 中只有 tty 和 ttyAMA3。因此,我的问题是设置一般通信,我特别好奇我的客户机上的端口在哪里。

答案1

我找到了自己问题的解决方案。首先,设备树不完整,所以我需要添加 3 个额外的 uart 端口。这就是我在客户机中找不到端口的原因。

其次,我需要告诉 QEMU 将其中一个端口用作 stdio:-append ... console=ttyAMA3-serial mon:stdio。然后,我能够-serial pty使用 将 QEMU ttyAMA* 链接到主机上的 pts/*。

相关内容