* [patch] usb-uhci.c: fix for PCI-lockups/IRQ problems
@ 2000-11-30 10:08 Georg Acher
2000-12-01 1:25 ` [linux-usb-devel] " Miles Lane
0 siblings, 1 reply; 4+ messages in thread
From: Georg Acher @ 2000-11-30 10:08 UTC (permalink / raw)
To: linux-usb-devel; +Cc: johannes, linux-kernel, linux-usb-users
[-- Attachment #1: Type: text/plain, Size: 443 bytes --]
Hi,
test12-pre3 had a large set of patches to usb-uhci.c. One small detail of
this patch can make the driver to lockup the PCI bus with certain UHCI-chips
(only Intel but not VIA, of course not on my machines...). This patch should
fix that.
It also includes Linus' patch for the IRQ-setup.
--
Georg Acher, acher@in.tum.de
http://www.in.tum.de/~acher/
"Oh no, not again !" The bowl of petunias
[-- Attachment #2: usb-uhci.patch --]
[-- Type: text/plain, Size: 1419 bytes --]
diff -u linux/drivers/usb/usb-uhci.c linux.afs/drivers/usb/usb-uhci.c
--- linux/drivers/usb/usb-uhci.c Thu Nov 30 10:49:54 2000
+++ linux.afs/drivers/usb/usb-uhci.c Thu Nov 30 10:47:54 2000
@@ -16,7 +16,7 @@
* (C) Copyright 1999 Randy Dunlap
* (C) Copyright 1999 Gregory P. Smith
*
- * $Id: usb-uhci.c,v 1.249 2000/11/21 12:03:34 acher Exp $
+ * $Id: usb-uhci.c,v 1.251 2000/11/30 09:47:54 acher Exp $
*/
#include <linux/config.h>
@@ -52,7 +52,7 @@
/* This enables an extra UHCI slab for memory debugging */
#define DEBUG_SLAB
-#define VERSTR "$Revision: 1.249 $ time " __TIME__ " " __DATE__
+#define VERSTR "$Revision: 1.251 $ time " __TIME__ " " __DATE__
#include <linux/usb.h>
#include "usb-uhci.h"
@@ -582,6 +582,7 @@
fill_td (td, 0 * TD_CTRL_IOC, 0, 0); // generate 1ms interrupt (enabled on demand)
insert_td (s, qh, td, 0);
+ qh->hw.qh.element &= ~UHCI_PTR_TERM; // remove TERM bit
s->td1ms=td;
dbg("allocating qh: bulk_chain");
@@ -2916,6 +2917,9 @@
return -1;
}
+ /* Enable PIRQ */
+ pci_write_config_word (dev, USBLEGSUP, USBLEGSUP_DEFAULT);
+
s->irq = irq;
if(uhci_start_usb (s) < 0) {
@@ -2951,7 +2955,7 @@
if (check_region (io_addr, io_size))
break;
/* disable legacy emulation */
- pci_write_config_word (dev, USBLEGSUP, USBLEGSUP_DEFAULT);
+ pci_write_config_word (dev, USBLEGSUP, 0);
return alloc_uhci(dev, dev->irq, io_addr, io_size);
}
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-usb-devel] [patch] usb-uhci.c: fix for PCI-lockups/IRQ problems
2000-11-30 10:08 [patch] usb-uhci.c: fix for PCI-lockups/IRQ problems Georg Acher
@ 2000-12-01 1:25 ` Miles Lane
2000-12-12 10:56 ` linux-2.4.0-test12 problem with init Bill Maidment
0 siblings, 1 reply; 4+ messages in thread
From: Miles Lane @ 2000-12-01 1:25 UTC (permalink / raw)
To: linux-usb-devel; +Cc: johannes, linux-kernel, linux-usb-users
Georg Acher wrote:
> Hi,
> test12-pre3 had a large set of patches to usb-uhci.c. One small detail of
> this patch can make the driver to lockup the PCI bus with certain UHCI-chips
> (only Intel but not VIA, of course not on my machines...). This patch should
> fix that.
> It also includes Linus' patch for the IRQ-setup.
>
I am testing with this patch applied.
Here's an OOPS I got when plugging and unplugging my USB
mouse multiple times.
Unable to handle kernel paging request at virtual address 01cc0035
c589352c
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c589352c>]
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010206
eax: 01cc0011 ebx: 5508ec83 ecx: c4d39ef4 edx: c4a22b20
esi: c4a22b20 edi: c4d39f18 ebp: 00000064 esp: c4d39eb4
ds: 0018 es: 0018 ss: 0018
Process khubd (pid: 104, stackpage=c4d39000)
Stack: c4d39f08 c4a22b20 c4d39f18 00000064 00000000 00000286 c5825f46
c4a22b20
c582605a c4a22b20 c1fbd400 80000180 c1d39600 c4d39fdc c4d38000
c4d39f08
c4d39f08 00000000 00000000 c4d39f0c c4d39f0c 00000000 c4d39f20
c4d39f20
Call Trace: [<c5825f46>] [<c582605a>] [<c5826183>] [<c5826210>]
[<c582855d>] [<c5829324>] [<c582fcc8>]
[<c58310cc>] [<c5829515>] [<c0108f0f>] [<c5825000>] [<c5827dbc>]
Code: 8b 40 24 89 44 24 14 83 78 10 00 75 0a b8 ed ff ff ff e9 4f
>>EIP; c589352c <[usb-uhci]uhci_submit_urb+1c/28c> <=====
Trace; c5825f46 <[usbcore]usb_submit_urb+1e/30>
Trace; c582605a <[usbcore]usb_start_wait_urb+aa/174>
Trace; c5826183 <[usbcore]usb_internal_control_msg+5f/74>
Trace; c5826210 <[usbcore]usb_control_msg+78/98>
Trace; c582855d <[usbcore]usb_get_port_status+35/3c>
Trace; c5829324 <[usbcore]usb_hub_events+b0/27c>
Trace; c582fcc8 <[usbcore]usb_bandwidth_option+26e0/271c>
Trace; c58310cc <[usbcore]khubd_wait+4/c>
Trace; c5829515 <[usbcore]usb_hub_thread+25/4c>
Trace; c0108f0f <kernel_thread+23/30>
Trace; c5825000 <[nls_iso8859-1].data.end+15e5/1645>
Trace; c5827dbc <[usbcore]init_module+0/0>
Code; c589352c <[usb-uhci]uhci_submit_urb+1c/28c>
00000000 <_EIP>:
Code; c589352c <[usb-uhci]uhci_submit_urb+1c/28c> <=====
0: 8b 40 24 mov 0x24(%eax),%eax <=====
Code; c589352f <[usb-uhci]uhci_submit_urb+1f/28c>
3: 89 44 24 14 mov %eax,0x14(%esp,1)
Code; c5893533 <[usb-uhci]uhci_submit_urb+23/28c>
7: 83 78 10 00 cmpl $0x0,0x10(%eax)
Code; c5893537 <[usb-uhci]uhci_submit_urb+27/28c>
b: 75 0a jne 17 <_EIP+0x17> c5893543
<[usb-uhci]uhci_submit_urb+33/28c>
Code; c5893539 <[usb-uhci]uhci_submit_urb+29/28c>
d: b8 ed ff ff ff mov $0xffffffed,%eax
Code; c589353e <[usb-uhci]uhci_submit_urb+2e/28c>
12: e9 4f 00 00 00 jmp 66 <_EIP+0x66> c5893592
<[usb-uhci]uhci_submit_urb+82/28c>
I hope this helps,
Miles
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 4+ messages in thread
* linux-2.4.0-test12 problem with init
2000-12-01 1:25 ` [linux-usb-devel] " Miles Lane
@ 2000-12-12 10:56 ` Bill Maidment
2000-12-12 13:09 ` Mike Galbraith
0 siblings, 1 reply; 4+ messages in thread
From: Bill Maidment @ 2000-12-12 10:56 UTC (permalink / raw)
Cc: linux-kernel
Hi
I reported a problem with using 'init 1' with 2.4.0-test12-pre8 and was
told it wasn't a kernel problem. I beg to differ, as it still happens
with 2.4.0-test12 but not with 2.4.0-test12-pre7. What changed between
pre7 and pre8 to make 'init 1' behave like 'init 5'? 'init 3' works
correctly. The only change I've made is to build the new kernel.
The screen messages say it is going into single user mode, but it just
doesn't.
Have I missed something that should be changed in the configuration?
--
Regards
Bill Maidment
Computer Systems Consultant
_________________________________________
Maidment Enterprises Pty Ltd
42 Woy Woy Bay Road
Woy Woy Bay NSW 2256
_________________________________________
Home Phone 02 4342 6716
Work Phone 02 9927 3234
Mobile 0418 682 993
Home Email bill@maidment.com.au
Work Email bill.maidment@elgas.com.au
Web Page www.maidment.com.au
_________________________________________
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: linux-2.4.0-test12 problem with init
2000-12-12 10:56 ` linux-2.4.0-test12 problem with init Bill Maidment
@ 2000-12-12 13:09 ` Mike Galbraith
0 siblings, 0 replies; 4+ messages in thread
From: Mike Galbraith @ 2000-12-12 13:09 UTC (permalink / raw)
To: Bill Maidment; +Cc: linux-kernel
On Tue, 12 Dec 2000, Bill Maidment wrote:
> Hi
>
> I reported a problem with using 'init 1' with 2.4.0-test12-pre8 and was
> told it wasn't a kernel problem. I beg to differ, as it still happens
> with 2.4.0-test12 but not with 2.4.0-test12-pre7. What changed between
> pre7 and pre8 to make 'init 1' behave like 'init 5'? 'init 3' works
> correctly. The only change I've made is to build the new kernel.
>
> The screen messages say it is going into single user mode, but it just
> doesn't.
Ding. Plz send me ps lawx output at failure time via private mail.
-Mike
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2000-12-12 13:40 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-30 10:08 [patch] usb-uhci.c: fix for PCI-lockups/IRQ problems Georg Acher
2000-12-01 1:25 ` [linux-usb-devel] " Miles Lane
2000-12-12 10:56 ` linux-2.4.0-test12 problem with init Bill Maidment
2000-12-12 13:09 ` Mike Galbraith
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).