Qemu
QEMU 4個以上的串口
我有 5 個不同的串列設備連接到 debian 拉伸電腦上的物理串列埠,內部應該轉發到 QEMU 機器。qemu 內部是 QNX 6.5.0 系統,所以我不確定是否可以使用 virtio-seral 驅動程序或類似的解決方案。
4 個串口的 Linux 標準限制通過以下方式解決:
/etc/default/grub: 8250.nr_uarts=8
所以我現在唯一的問題是 QEMU 最大串列埠 = 4。
這可以通過重新編譯qemu來解決嗎,還有其他解決方案嗎?
重新編譯似乎適用於所有 8 個埠。
linux-host 限制通過以下方式解決:
/etc/default/grub: 8250.nr_uarts=8 ... update grub
qemu 限制通過以下方式解決:
git clone git://git.qemu-project.org/qemu.git; cd qemu include/sysemu/sysemu.h: changing MAX_SERIAL_PORTS 4->8 hw/char/serial-isa.c: adding 4 values to each of 2 arrays: isa_serial_io [MAX_SERIAL_PORTS] = {0x3f8, 0x2f8, 0x3e8, 0x2e8, 0x5f8, 0x4f8, 0x5e8, 0x4e8} isa_serial_irq[MAX_SERIAL_PORTS] = {4,3,4,3,4,3,4,3} ... ./configure --target-list=x86_64-softmmu make; sudo make install
- qnx-guest 限制通過執行解決:
devc-ser8250 5f8,4 4f8,3 5e8,4 4e8,3
筆記:
sudo apt-get install libpixman-1-dev
是唯一缺少的依賴項- 初始
make
時間約為 10 分鐘- io 地址和 irqs 隨機選擇並嘗試了哪些工作(對原因沒有真正的了解,一些 io/irq 組合有效,有些無效)