All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lonnie Mendez <lmendez19@austin.rr.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH] hw/usb-uhci.c: set hchalt bit of status register when run/stop bit unset
Date: Thu, 16 Mar 2006 03:00:09 -0600	[thread overview]
Message-ID: <44192919.6090102@austin.rr.com> (raw)

   Hello list.  Linked is a patch that fixes a bug that occurs on 
Windows XP sp1a - sp2 and perhaps earlier.  Windows 2000 seems 
unaffected.  This patch sets the hchalted bit of the status I/O register 
when the run/stop bit is unset during a write to the usb command I/O 
register of the emulated uhci host controller.

   To test simply start Windows XP with '-usb' option and bring up the 
device manager.  The 'generic usb hub' will disappear and appear over 
and over again.  The host controller driver expects hchalted to be set 
and continues to poll status until it gives up and resets the controller 
and therefore bus state.  Some log output from the transaction below.

http://gnome.dnsalias.net/patches/qemu-hchalt.patch

uhci readw port=0x0006 val=0x03e5
uhci readw port=0x0000 val=0x0081
uhci writew port=0x0000 val=0x0080  (clears Run/Stop bit)
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000   ... doesn't see hchalted being set
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci readw port=0x0002 val=0x0000
uhci writew port=0x0000 val=0x0084  (perform global reset)
uhci writew port=0x0000 val=0x0080

             reply	other threads:[~2006-03-16  9:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-16  9:00 Lonnie Mendez [this message]
2006-03-16 16:09 ` [Qemu-devel] [PATCH] hw/usb-uhci.c: set hchalt bit of status register when run/stop bit unset Lonnie Mendez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44192919.6090102@austin.rr.com \
    --to=lmendez19@austin.rr.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.