From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=35175 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OXcDK-0007fl-5c for qemu-devel@nongnu.org; Sat, 10 Jul 2010 11:43:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OXcDJ-0000ef-0s for qemu-devel@nongnu.org; Sat, 10 Jul 2010 11:43:38 -0400 Received: from sj-iport-4.cisco.com ([171.68.10.86]:4817) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OXcDI-0000eL-S0 for qemu-devel@nongnu.org; Sat, 10 Jul 2010 11:43:36 -0400 Message-ID: <4C3895AC.1090204@cisco.com> Date: Sat, 10 Jul 2010 09:45:48 -0600 From: "David S. Ahern" MIME-Version: 1.0 References: <1278701410-17963-1-git-send-email-daahern@cisco.com> <4C380CF7.1040109@web.de> In-Reply-To: <4C380CF7.1040109@web.de> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH] ehci: check controller state when setting list registers List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jan Kiszka Cc: qemu-devel On 07/10/10 00:02, Jan Kiszka wrote: > They improve disk pass-through for me as well. I'm now also able to boot > from some external USB disk. However, applying more heavy load, the disk > stops working at some point and even disconnects after a while. I saw that as well. On the TO-DO list. > The changes also modified the errors disk emulation give. I can attach > and write to such images now, but reading back seems to return different > data. One change msd needs is the ep_wMaxPacketSize. Also I cannot get msd to work with linux guests with either uhci or ehci. Some debugging is needed. e.g., impacts of the hack comments usb-msd.c (case insensitive search)? diff --git a/hw/usb-msd.c b/hw/usb-msd.c index 09a6a33..87c306e 100644 --- a/hw/usb-msd.c +++ b/hw/usb-msd.c @@ -124,7 +124,7 @@ static const uint8_t qemu_msd_config_descriptor[] = { 0x05, /* u8 ep_bDescriptorType; Endpoint */ 0x81, /* u8 ep_bEndpointAddress; IN Endpoint 1 */ 0x02, /* u8 ep_bmAttributes; Bulk */ - 0x40, 0x00, /* u16 ep_wMaxPacketSize; */ + 0x00, 0x02, /* u16 ep_wMaxPacketSize; */ 0x00, /* u8 ep_bInterval; */ /* Bulk-Out endpoint */ @@ -132,7 +132,7 @@ static const uint8_t qemu_msd_config_descriptor[] = { 0x05, /* u8 ep_bDescriptorType; Endpoint */ 0x02, /* u8 ep_bEndpointAddress; OUT Endpoint 2 */ 0x02, /* u8 ep_bmAttributes; Bulk */ - 0x40, 0x00, /* u16 ep_wMaxPacketSize; */ + 0x00, 0x02, /* u16 ep_wMaxPacketSize; */ 0x00 /* u8 ep_bInterval; */ };