From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Colin Leroy <colin@colino.net>
Cc: Linux Kernel list <linux-kernel@vger.kernel.org>,
linuxppc-dev list <linuxppc-dev@lists.linuxppc.org>
Subject: Re: cdc-acm problems
Date: Thu, 15 Jan 2004 12:34:42 +1100 [thread overview]
Message-ID: <1074130473.5123.41.camel@gaston> (raw)
In-Reply-To: <20040113130529.03f5dbac.colin@colino.net>
On Tue, 2004-01-13 at 23:05, Colin Leroy wrote:
> Hi,
>
> I have problems with cdc-acm killing ohci. I tried to narrow down the problem,
> but didn't get far.
> Basically `killall -HUP pppd` gives (in dmesg):
>
> drivers/usb/class/cdc-acm.c: acm_ctrl_irq - urb shutting down with status: -2
> ohci_hcd 0001:01:1b.1: OHCI Unrecoverable Error, disabled
> ohci_hcd 0001:01:1b.1: HC died; cleaning up
The above is interesting, looks like a PCI error. I keep getting those
unrecoverable errors with those new USB2 capable chips, I don't know
what's going on yet. Can try this patch and tell me what it dumps ?
===== drivers/usb/host/ohci-hcd.c 1.53 vs edited =====
--- 1.53/drivers/usb/host/ohci-hcd.c Wed Dec 31 15:25:17 2003
+++ edited/drivers/usb/host/ohci-hcd.c Wed Jan 14 13:20:52 2004
@@ -316,6 +316,11 @@
/* ASSERT: any requests/urbs are being unlinked */
/* ASSERT: nobody can be submitting urbs for this any more */
+ if (!HCD_IS_RUNNING (ohci->hcd.state)) {
+ ed->state = ED_IDLE;
+ finish_unlinks (ohci, 0, 0);
+ }
+
epnum <<= 1;
if (epnum != 0 && !(ep & USB_DIR_IN))
epnum |= 1;
@@ -571,9 +576,17 @@
disable (ohci);
ohci_err (ohci, "OHCI Unrecoverable Error, disabled\n");
// e.g. due to PCI Master/Target Abort
+#if 1
+ if (hcd->pdev) {
+ u16 status;
+
+ pci_read_config_word(hcd->pdev, PCI_STATUS, &status);
+ printk(KERN_ERR "OHCI PCI Status: 0x%04x\n", status);
+ }
+#endif
ohci_dump (ohci, 1);
- hc_reset (ohci);
+ hc_reset (ohci);
}
if (ints & OHCI_INTR_WDH) {
===== drivers/usb/host/ohci-pci.c 1.20 vs edited =====
--- 1.20/drivers/usb/host/ohci-pci.c Tue Oct 28 15:36:00 2003
+++ edited/drivers/usb/host/ohci-pci.c Wed Jan 14 13:23:07 2004
@@ -36,6 +36,17 @@
int ret;
if (hcd->pdev) {
+#if 1
+ u16 status;
+
+ pci_read_config_word(hcd->pdev, PCI_STATUS, &status);
+ printk(KERN_ERR "OHCI PCI Status: 0x%04x\n", status);
+ if (status & 0xf900) {
+ printk(KERN_ERR "Initial error ! clearing ...\n");
+ pci_write_config_word(hcd->pdev, PCI_STATUS, status);
+ }
+#endif
+
ohci->hcca = pci_alloc_consistent (hcd->pdev,
sizeof *ohci->hcca, &ohci->hcca_dma);
if (!ohci->hcca)
prev parent reply other threads:[~2004-01-15 1:45 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-13 12:05 Colin Leroy
2004-01-13 20:46 ` [PATCH] " Colin Leroy
2004-01-15 1:34 ` Benjamin Herrenschmidt [this message]
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=1074130473.5123.41.camel@gaston \
--to=benh@kernel.crashing.org \
--cc=colin@colino.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.linuxppc.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®