All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Fulghum <paulkf@microgate.com>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	johannes@erdfelt.com,
	USB development list <linux-usb-devel@lists.sourceforge.net>
Subject: Re: Test Patch: 2.5.69 Interrupt Latency
Date: 15 May 2003 16:30:05 -0500	[thread overview]
Message-ID: <1053034205.2025.3.camel@diemos> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0305151709120.1125-100000@ida.rowland.org>

On Thu, 2003-05-15 at 16:13, Alan Stern wrote:
> My intention was to avoid resuming if the resume-detect bit is set only 
> on ports in an over-current condition, since that is the case mentioned in 
> the erratum.  Of course, this isn't as failsafe as your suggestion.  Which 
> do you think would work better?

This should be caught on the suspend side so
that you can still service the ports that do not
have the over current condition.

A single port in OC makes resume unreliable,
so the only thing to do is not suspend.

The following worked for me:

static int suspend_allowed(struct uhci_hcd *uhci)
{
	unsigned int io_addr = uhci->io_addr;
	int i;

	if (!uhci->hcd.pdev ||
	    (uhci->hcd.pdev->vendor != PCI_VENDOR_ID_INTEL) ||
	    (uhci->hcd.pdev->device != PCI_DEVICE_ID_INTEL_82371AB_2))
		return 1;

	/* This is a 82371AB/EB/MB USB controller which has a bug that
	 * causes false resume indications if any port has an
	 * over current condition. If we do a global suspend then
	 * the controller thrashes back and forth between suspend and wakeup.
	 *
	 * Some motherboards using the 82371AB/EB/MB (but not the USB portion)
	 * appear to hardwire the over current inputs active to disable
	 * the USB ports..
	 */

	/* check for over current condition on all ports */
	for (i = 0; i < uhci->rh_numports; i++) {
		if (inw(io_addr + USBPORTSC1 + i * 2) & 0x0400)
			return 0;
	}

	return 1;
}

static void suspend_hc(struct uhci_hcd *uhci)
{
	unsigned int io_addr = uhci->io_addr;

	if (!suspend_allowed(uhci))
		return;




-- 
Paul Fulghum, paulkf@microgate.com
Microgate Corporation, http://www.microgate.com



  reply	other threads:[~2003-05-15 21:19 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-07 16:12 2.5.69 Interrupt Latency Paul Fulghum
2003-05-07 19:41 ` Paul Fulghum
2003-05-07 22:28   ` Andrew Morton
2003-05-08  0:25     ` Paul Fulghum
2003-05-08 13:56     ` Paul Fulghum
2003-05-08 19:22       ` Andrew Morton
2003-05-08 19:35         ` Paul Fulghum
2003-05-08 23:20           ` Brian Gerst
2003-05-09 18:12         ` Paul Fulghum
2003-05-09 20:30           ` Paul Fulghum
2003-05-09 21:28             ` Andrew Morton
2003-05-12 13:57               ` Paul Fulghum
2003-05-12 14:06                 ` Paul Fulghum
2003-05-12 16:24                 ` Greg KH
2003-05-12 17:08                   ` Paul Fulghum
2003-05-12 17:30                     ` Greg KH
2003-05-12 17:49                       ` Paul Fulghum
2003-05-12 18:01                         ` Greg KH
2003-05-12 18:15                           ` Paul Fulghum
2003-05-13 15:26                       ` Alan Stern
2003-05-13 15:35                         ` Paul Fulghum
2003-05-13 17:30                           ` Greg KH
2003-05-13 13:01                             ` Paul Fulghum
2003-05-13 18:09                               ` Greg KH
2003-05-13 18:11                                 ` Greg KH
2003-05-13 21:35                                   ` Alan Stern
2003-05-13 21:48                                     ` Helge Hafting
2003-05-13 22:09                                       ` Alan Stern
2003-05-14 21:06                                   ` Paul Fulghum
2003-05-14 21:15                                     ` Johannes Erdfelt
2003-05-14 21:30                                     ` Greg KH
2003-05-14 21:45                                       ` Paul Fulghum
2003-05-13 20:17                           ` Bill Davidsen
2003-05-13 22:39                             ` Paul Fulghum
2003-05-14 20:52                           ` Test Patch: " Alan Stern
2003-05-15 13:45                             ` Paul Fulghum
2003-05-15 14:12                             ` Paul Fulghum
2003-05-15 21:07                               ` Alan Stern
2003-05-15 15:26                             ` Paul Fulghum
2003-05-15 18:11                               ` Alan Stern
2003-05-15 18:40                                 ` Paul Fulghum
2003-05-15 19:42                                 ` Paul Fulghum
2003-05-15 19:59                                   ` Paul Fulghum
2003-05-15 21:13                                   ` Alan Stern
2003-05-15 21:30                                     ` Paul Fulghum [this message]
2003-05-15 19:17                                       ` Paul Fulghum
2003-05-16 15:33                                         ` Alan Stern
2003-05-16 15:58                                           ` Paul Fulghum
2003-05-16 16:18                                             ` Paul Fulghum
2003-05-16 17:16                                               ` Alan Stern
2003-05-16 17:48                                                 ` Paul Fulghum
2003-05-16 18:31                                                   ` Paul Fulghum
2003-05-16 18:40                                                   ` Alan Stern
2003-05-16 19:05                                                     ` Paul Fulghum
2003-05-18  0:57                                                     ` Andrew McGregor
2003-05-16 17:20                                             ` Alan Stern
2003-05-16 17:51                                               ` Paul Fulghum
2003-05-19 16:41                                             ` Alan Stern
2003-05-19 18:20                                               ` Paul Fulghum
2003-05-19 18:49                                                 ` Alan Stern
2003-05-16 18:10                                           ` Paul Fulghum
2003-05-14 17:50               ` Paul Fulghum
2003-05-09 21:07           ` Andrew Morton
2003-05-09 21:28             ` Paul Fulghum
2003-05-08 14:47     ` Paul Fulghum

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=1053034205.2025.3.camel@diemos \
    --to=paulkf@microgate.com \
    --cc=johannes@erdfelt.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb-devel@lists.sourceforge.net \
    --cc=stern@rowland.harvard.edu \
    /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.