You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下QEMU模拟Raspberry Pi3时键鼠无响应问题咨询

QEMU模拟Raspberry Pi 3键鼠无响应问题排查

问题根本原因

  • -usb是适配x86等带PCI总线机型的参数,作用是生成一个挂载在PCI总线上的USB主控制器。但Raspberry Pi 3是ARM架构开发板,硬件上没有PCI总线,QEMU的raspi3b机型启动时已经自动模拟了板载原生的DesignWare USB控制器,额外加-usb参数会虚构出一套真实硬件不存在的USB控制器。
  • 命令中手动添加的usb-kbd、usb-mouse设备,默认会被挂载到-usb参数生成的这套虚构USB控制器上。但你传入的官方bcm2710-rpi-3-b.dtb设备树只记录了板载原生USB控制器的硬件信息,Guest系统启动后根本不会枚举识别这套虚构的控制器,自然无法响应挂载在上面的键鼠输入。
  • 其余功能运行正常,是因为CPU、内存、SD卡、串口、显示输出等其他硬件的模拟配置和设备树描述完全匹配,不受多余虚构USB控制器的影响。
  • 这个问题大多是直接照搬x86虚拟机的QEMU启动参数导致的。

解决方案

方案1:修正启动参数(推荐,无需修改现有镜像/内核)

删除原命令中多余的-usb参数,手动指定键鼠设备挂载到raspi3b内置的板载USB总线上,修改后的完整启动命令如下:

qemu-system-aarch64 -M raspi3b -append "rw earlyprintk loglevel=8 console=ttyAMA0,115200 dwc_otg.lpm_enable=0 root=/dev/mmcblk0p2 rootdelay=1" -dtb bcm2710-rpi-3-b.dtb -sd 2023.img -kernel kernel8.img -m 1G -smp 4 -device usb-kbd,bus=usb-bus.0 -device usb-mouse,bus=usb-bus.0

执行命令启动后,系统会正常枚举到板载USB总线上的键鼠设备,输入功能即可恢复。

方案2:版本适配(若方案1无效)

你当前使用的QEMU是7.0.0的开发快照版本(v7.0.0-2530-g8482ab545e),这个版本的raspi3bUSB模拟存在已知的设备枚举bug,将QEMU升级到7.2及以上的正式稳定版后,再使用方案1的启动参数即可解决问题。


内容的提问来源于stack exchange,提问作者Helmuth Schmitz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 17:51:13