From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DBA0BC41604 for ; Tue, 6 Oct 2020 08:36:40 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D04DF2080A for ; Tue, 6 Oct 2020 08:36:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D04DF2080A Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bugs.launchpad.net Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:41394 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kPiSc-0003ch-ET for qemu-devel@archiver.kernel.org; Tue, 06 Oct 2020 04:36:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54386) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kPiRk-0003D3-C5 for qemu-devel@nongnu.org; Tue, 06 Oct 2020 04:35:44 -0400 Received: from indium.canonical.com ([91.189.90.7]:59234) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kPiRi-0002IW-22 for qemu-devel@nongnu.org; Tue, 06 Oct 2020 04:35:44 -0400 Received: from loganberry.canonical.com ([91.189.90.37]) by indium.canonical.com with esmtp (Exim 4.86_2 #2 (Debian)) id 1kPiRg-0007rr-3d for ; Tue, 06 Oct 2020 08:35:40 +0000 Received: from loganberry.canonical.com (localhost [127.0.0.1]) by loganberry.canonical.com (Postfix) with ESMTP id 1A4872E80E9 for ; Tue, 6 Oct 2020 08:35:40 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Date: Tue, 06 Oct 2020 08:27:12 -0000 From: Paul Zimmerman <1772165@bugs.launchpad.net> To: qemu-devel@nongnu.org X-Launchpad-Notification-Type: bug X-Launchpad-Bug: product=qemu; status=Confirmed; importance=Wishlist; assignee=None; X-Launchpad-Bug-Tags: arm usb X-Launchpad-Bug-Information-Type: Public X-Launchpad-Bug-Private: no X-Launchpad-Bug-Security-Vulnerability: no X-Launchpad-Bug-Commenters: aditya-govardhan andrew-pennebaker clemd davbac dims dougrabson kraxel-redhat pauldzim pmaydell vortelf weberkai X-Launchpad-Bug-Reporter: George (vortelf) X-Launchpad-Bug-Modifier: Paul Zimmerman (pauldzim) References: <152673688616.9061.7617411809661975686.malonedeb@chaenomeles.canonical.com> Message-Id: <160197283236.9718.5332984148780804081.malone@wampee.canonical.com> Subject: [Bug 1772165] Re: arm raspi2/raspi3 emulation has no USB support X-Launchpad-Message-Rationale: Subscriber (QEMU) @qemu-devel-ml X-Launchpad-Message-For: qemu-devel-ml Precedence: bulk X-Generated-By: Launchpad (canonical.com); Revision="d50d1e75c500726862802414f880ee3e3bb759bf"; Instance="production" X-Launchpad-Hash: 9c5b23ca30a195df564159804ea4b9e3e9dbe066 Received-SPF: none client-ip=91.189.90.7; envelope-from=bounces@canonical.com; helo=indium.canonical.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/06 03:50:54 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -65 X-Spam_score: -6.6 X-Spam_bar: ------ X-Spam_report: (-6.6 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Bug 1772165 <1772165@bugs.launchpad.net> Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" You need to use -M raspi2 (or -M raspi3 for 64-bit kernels) to enable the Raspberry Pi emulation. And you need version 5.1 or newer of Qemu to get the dwc2 USB emulation. I don't think any Linux distributions provide that new of a Qemu, so you might have to build it yourself. Here is the command line I use to run the Raspbian image 2019-09-26 -raspbian-buster.img. I extracted bcm2709-rpi-2-b.dtb and kernel7.img from the FAT partition inside the image file. qemu-system-arm -M raspi2 -drive file=3D2019-09-26-raspbian- buster.img,format=3Draw,if=3Dsd -dtb bcm2709-rpi-2-b.dtb -kernel kernel7.img -append 'rw earlycon=3Dpl011,0x3f201000 console=3DttyAMA0 loglevel=3D8 root=3D/dev/mmcblk0p2 fsck.repair=3Dyes net.ifnames=3D0 rootwait memtest=3D1 dwc_otg.fiq_fsm_enable=3D0' -serial stdio -no-reboot -netdev user,id=3Dnet0 -usb -device usb-kbd -device usb-tablet -device usb-net,netdev=3Dnet0 That should give you a graphical emulation with working keyboard, mouse and networking. Mass-storage also works, but I left that out for simplicity. But note that if you absolutely must pass-through a USB device from the host, it probably won't work. That's because the dwc2 controller emulation is connected through a full-speed hub emulation, so unless your USB device is connected at full-speed on the host, it probably won't work. -- = You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1772165 Title: arm raspi2/raspi3 emulation has no USB support Status in QEMU: Confirmed Bug description: Using Qemu 2.12.0 on ArchLinux. Trying to emulate arm device with `qemu-system-arm` and attach usb device for unput using ` -usb -device usb-host,bus=3D001,vendorid=3D0x1d6b,productid=3D0x0002 ` # lsusb returns Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 014: ID 13d3:3487 IMC Networks = Bus 001 Device 004: ID 0457:11af Silicon Integrated Systems Corp. = Bus 001 Device 003: ID 0bda:57e6 Realtek Semiconductor Corp. = Bus 001 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card= Reader Controller Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub # qemu returns qemu-system-arm: -device usb-host,bus=3D001,vendorid=3D0x1d6b,productid= =3D0x0002: Bus '001' not found = Tried with connecting external usb keyboard but that didn't seem to work = either. To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/1772165/+subscriptions