Brian Beardall wrote:

>Brian Beardall wrote:
>
>  
>
>>David Brownell wrote:
>>
>> 
>>
>>    
>>
>>>On Monday 02 May 2005 12:36 pm, Brian Beardall wrote:
>>>
>>>
>>>   
>>>
>>>      
>>>
>>>>David Brownell wrote:
>>>>I enabled the CONFIG_USB_DEBUG, and this is what I get:
>>>>
>>>>ohci_hcd 0000:00:07.4: bogus NDP=255, rereads as NDP=4
>>>>irq 10: nobody cared!
>>>>[<c01356aa>] __report_bad_irq+0x2a/0x90
>>>>...
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>Well that's strange.  It would appear that maybe on your
>>>board, the erratum #4 workaround isn't adequate.  There
>>>were multiple revisions of that chip ... maybe you're
>>>looking at early ones, with additional errata?
>>>
>>>
>>>
>>>   
>>>
>>>      
>>>
>>I checked the revision of the southbridge, and it is a revision D, but I
>>am not sure whether it is a revision D2, or D4.
>>
>> 
>>
>>    
>>
>>>>handlers:
>>>>[<c0335650>] (ohci_irq_handler+0x0/0x7a0)
>>>>[<c034db70>] (usb_hcd_irq+0x0/0x70)
>>>>Disabling IRQ #10
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>In that case it appears like maybe part of the problem is that
>>>you've got a FireWire controller on the same IRQ.  Try moving
>>>that card to another PCI slot; maybe that's making trouble too.
>>>
>>>
>>>
>>>   
>>>
>>>      
>>>
>>I have taken everything out of the computer but the network card, and
>>video card, and it still crashes exactly the same.  The other computer
>>also crashes exactly the same so I doubt that the IEEE 1394 OHCI
>>card/driver is causing any problem.
>>
>> 
>>
>>    
>>
>>>>The last message before the IRQ nobody cared is either the NDP error or
>>>>I get the hub_port_status failed message.  It depends on it attitude at
>>>>the time of crash.  This may be able to be explained by Erratum #4.  If
>>>>the root hub were to be reset during use
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>That should never happen.
>>>
>>>
>>>   
>>>
>>>      
>>>
>>It should never happen, but the crash doesn't make sense.
>>
>> 
>>
>>    
>>
>>>   
>>>
>>>      
>>>
>>>>usb usb1: Product: Advanced Micro Devices [AMD] AMD-756 [Viper] USB
>>>>usb usb1: Manufacturer: Linux 2.6.11-gentoo-r6 ohci_hcd
>>>>  
>>>>
>>>>     
>>>>
>>>>        
>>>>
>>>How does 2.6.12-rc2 behave?
>>>
>>>For the usual reasons, most of us don't want to hear about kernels
>>>with random patches we didn't provide ... :)
>>>
>>>- Dave
>>>
>>>
>>>   
>>>
>>>      
>>>
>>The 2.6.12-rc3 behaves exactly the same so I went back to the
>>gentoo-sources so I could I my splash screen at boot time.  I was hoping
>>that the 2.6.12-rc3 would fix the usb issues, and I was dissappointed. 
>>It would be nice to see what exactly is causing it to crash.
>> 
>>
>>    
>>
>I did some further testing, and here is the result.  The device it self
>seems to respond still after the IRQ crash.
>
>
>ohci_hcd 0000:00:07.4: bogus NDP=255, rereads as NDP=4
>irq 10: nobody cared!
> [<c01356aa>] __report_bad_irq+0x2a/0x90
> [<c0134fe0>] handle_IRQ_event+0x30/0x70
> [<c013579c>] note_interrupt+0x6c/0xd0
> [<c0135166>] __do_IRQ+0x146/0x160
> [<c0104e03>] do_IRQ+0x23/0x40
> [<c01033ca>] common_interrupt+0x1a/0x20
> [<c011d8b0>] __do_softirq+0x30/0x90
> [<c011d936>] do_softirq+0x26/0x30
> [<c011da05>] irq_exit+0x35/0x40
> [<c0104e08>] do_IRQ+0x28/0x40
> [<c01033ca>] common_interrupt+0x1a/0x20
> [<c019a29d>] ext3_get_inode_block+0xad/0x150
> [<c01a82db>] start_this_handle+0x16b/0x410
> [<c019a368>] __ext3_get_inode_loc+0x28/0x260
> [<c019a5c7>] ext3_get_inode_loc+0x27/0x30
> [<c019b0d1>] ext3_reserve_inode_write+0x31/0xd0
> [<c019b19b>] ext3_mark_inode_dirty+0x2b/0x60
> [<c019b25b>] ext3_dirty_inode+0x8b/0x90
> [<c017a171>] __mark_inode_dirty+0x1b1/0x1c0
> [<c011d751>] current_fs_time+0x51/0x70
> [<c0171a23>] inode_update_time+0xb3/0xe0
> [<c0138d9e>] __generic_file_aio_write_nolock+0x2ae/0x590
> [<c027898e>] scrup+0x7e/0x100
> [<c027c5bb>] do_con_write+0x25b/0x680
> [<c0139332>] generic_file_aio_write+0x72/0xe0
> [<c0195d34>] ext3_file_write+0x44/0xd0
> [<c0155dde>] do_sync_write+0xbe/0xf0
> [<c0114f95>] __wake_up+0x55/0x80
> [<c026bc0b>] tty_write+0x20b/0x270
> [<c012d8e0>] autoremove_wake_function+0x0/0x60
> [<c0271780>] write_chan+0x0/0x210
> [<c0155eb7>] vfs_write+0xa7/0x160
> [<c0156041>] sys_write+0x51/0x80
> [<c010325b>] syscall_call+0x7/0xb
>handlers:
>[<c0335650>] (ohci_irq_handler+0x0/0x7a0)
>[<d516ebe0>] (usb_hcd_irq+0x0/0x70 [usbcore])
>[<d516ebe0>] (usb_hcd_irq+0x0/0x70 [usbcore])
>Disabling IRQ #10
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>Set packet size: set interface error
>usb 2-1: new full speed USB device using ohci_hcd and address 2
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>USB SPCA5XX camera found. Type Flexcam 100 (SPCA561A)
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>[spca5xx_probe:8174] Camera type GBRG
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca561.h:
>[spca561_init:662] Find spca561 USB Product ID 561
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>Set packet size: set interface error
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>init isoc: usb_submit_urb(0) ret -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>init isoc: usb_submit_urb(1) ret -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>Set packet size: set interface error
>ehci_hcd 0000:00:0b.3: remove, state 1
>usb usb3: USB disconnect, address 1
>ehci_hcd 0000:00:0b.3: USB bus 3 deregistered
>usb 2-1: USB disconnect, address 2
>usb 2-1: new full speed USB device using ohci_hcd and address 3
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>USB SPCA5XX camera found. Type Flexcam 100 (SPCA561A)
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>[spca5xx_probe:8174] Camera type GBRG
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca561.h:
>[spca561_init:662] Find spca561 USB Product ID 561
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>Set packet size: set interface error
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>init isoc: usb_submit_urb(0) ret -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>init isoc: usb_submit_urb(1) ret -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spcausb.h:
>reg write: error -108
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>Set packet size: set interface error
>usbcore: deregistering driver spca5xx
>ohci_hcd 0000:00:07.4: leak ed d1a91040 (#81) state 0 (has tds)
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>driver spca5xx deregistered
>ohci_hcd 0000:00:07.4: remove, state 0
>usb usb1: USB disconnect, address 1
>usb 1-1: USB disconnect, address 2
>ohci_hcd 0000:00:07.4: dma_pool_destroy ohci_ed, d1a91000 busy
>ohci_hcd 0000:00:07.4: USB bus 1 deregistered
>ohci_hcd 0000:00:0b.0: remove, state 1
>usb usb2: USB disconnect, address 1
>usb 2-1: USB disconnect, address 3
>ohci_hcd 0000:00:0b.0: USB bus 2 deregistered
>ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
>ACPI: PCI interrupt 0000:00:07.4[D] -> GSI 10 (level, low) -> IRQ 10
>ohci_hcd 0000:00:07.4: Advanced Micro Devices [AMD] AMD-756 [Viper] USB
>ohci_hcd 0000:00:07.4: irq 10, pci mem 0xe1000000
>ohci_hcd 0000:00:07.4: new USB bus registered, assigned bus number 1
>ohci_hcd 0000:00:07.4: AMD756 erratum 4 workaround
>hub 1-0:1.0: USB hub found
>hub 1-0:1.0: 4 ports detected
>ACPI: PCI interrupt 0000:00:0b.0[B] -> GSI 11 (level, low) -> IRQ 11
>ohci_hcd 0000:00:0b.0: ALi Corporation USB 1.1 Controller
>ohci_hcd 0000:00:0b.0: irq 11, pci mem 0xe1004000
>ohci_hcd 0000:00:0b.0: new USB bus registered, assigned bus number 2
>hub 2-0:1.0: USB hub found
>hub 2-0:1.0: 2 ports detected
>usb 2-1: new full speed USB device using ohci_hcd and address 2
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>USB SPCA5XX camera found. Type Flexcam 100 (SPCA561A)
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>[spca5xx_probe:8174] Camera type GBRG
>usbcore: registered new driver spca5xx
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca5xx.c:
>spca5xx driver 00.56.01 registered
>/var/tmp/portage/spca5xx-20050419/work/spca5xx-20050419/drivers/usb/spca561.h:
>[spca561_init:662] Find spca561 USB Product ID 561
>usb 2-1: USB disconnect, address 2
>usb 1-1: new full speed USB device using ohci_hcd and address 2
>ohci_hcd 0000:00:07.4: Unlink after no-IRQ?  Controller is probably
>using the wrong IRQ.
>usbcore: deregistering driver spca5xx
>
>The other usb controller wouldn't respond when I tried to run the webcam
>from it after the onboard OHCI controller died.  I then unloaded the
>modules for USB, and reloaded them.  It then detected the ALi
>controller, and the AMD 756 controller.  The camera worked on the ALi
>Controller, but when I plugged the camera into the AMD controller it
>responded, except the the kernel driver was unable to completely detect
>the camera because the kernel had stopped listening to IRQ 10.  That is
>what I did in the bottom of the log.  This then locked-up the entire
>USBcore so I then had to restart the computer.  It seems like a timing
>issue where one request is being processed, and then another is sent in
>before the first is complete.  This results in erradic behavor of the
>registers which then makes the IRQ unresponsive for a jiffy which causes
>the kernel to stop listening to the IRQ.  Because the timing is slightly
>off if it did keep listening to that IRQ it would just lock-up the
>entire computer.  I did turn off the IRQ debug, and it did lock-up.
>
>  
>
I turned on USB_DEBUG for the 2.6.12-rc3 kernel.  This is the output:

ohci_hcd: 2004 Nov 08 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
ohci_hcd: block sizes: ed 64 td 64
ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 10
ACPI: PCI Interrupt 0000:00:07.4[D] -> Link [LNKD] -> GSI 10 (level,
low) -> IRQ 10
ohci_hcd 0000:00:07.4: Advanced Micro Devices [AMD] AMD-756 [Viper] USB
ohci_hcd 0000:00:07.4: new USB bus registered, assigned bus number 1
ohci_hcd 0000:00:07.4: irq 10, io mem 0xe1000000
ohci_hcd 0000:00:07.4: AMD756 erratum 4 workaround
ohci_hcd 0000:00:07.4: resetting from state 'reset', control = 0x600
ohci_hcd 0000:00:07.4: enabling initreset quirk
ohci_hcd 0000:00:07.4: OHCI controller state
ohci_hcd 0000:00:07.4: OHCI 1.0, NO legacy support registers
ohci_hcd 0000:00:07.4: control 0x683 RWE RWC HCFS=operational CBSR=3
ohci_hcd 0000:00:07.4: cmdstatus 0x00000 SOC=0
ohci_hcd 0000:00:07.4: intrstatus 0x00000004 SF
ohci_hcd 0000:00:07.4: intrenable 0x8000000a MIE RD WDH
ohci_hcd 0000:00:07.4: fminterval a7782edf
ohci_hcd 0000:00:07.4: hcca frame #0003
ohci_hcd 0000:00:07.4: roothub.a 01000204 POTPGT=1 NPS NDP=4
ohci_hcd 0000:00:07.4: roothub.b 00000000 PPCM=0000 DR=0000
ohci_hcd 0000:00:07.4: roothub.status 00008000 DRWE
ohci_hcd 0000:00:07.4: roothub.portstatus [0] 0x00000100 PPS
ohci_hcd 0000:00:07.4: roothub.portstatus [1] 0x00000100 PPS
ohci_hcd 0000:00:07.4: roothub.portstatus [2] 0x00000100 PPS
ohci_hcd 0000:00:07.4: roothub.portstatus [3] 0x00000100 PPS
usb usb1: default language 0x0409
usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: Advanced Micro Devices [AMD] AMD-756 [Viper] USB
usb usb1: Manufacturer: Linux 2.6.12-rc3 ohci_hcd
usb usb1: SerialNumber: 0000:00:07.4
usb usb1: hotplug
usb usb1: adding 1-0:1.0 (config #1, interface 0)
hub 1-0:1.0: usb_probe_interface
hub 1-0:1.0: usb_probe_interface - got id
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 4 ports detected
hub 1-0:1.0: standalone hub
hub 1-0:1.0: no power switching (usb 1.0)
hub 1-0:1.0: global over-current protection
hub 1-0:1.0: power on to power good time: 2ms
hub 1-0:1.0: local power source is good
hub 1-0:1.0: no over-current condition exists
usb 1-0:1.0: hotplug
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0000
ohci_hcd 0000:00:07.4: created debug files
usbcore: registered new driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.01:USB HID core driver
usbcore: registered new driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
drivers/usb/serial/usb-serial.c: USB Serial support registered for
PocketPC PDA
drivers/usb/serial/ipaq.c: USB PocketPC PDA driver v0.5
usbcore: registered new driver ipaq
drivers/usb/serial/usb-serial.c: USB Serial support registered for
Handspring Visor / Palm OS
drivers/usb/serial/usb-serial.c: USB Serial support registered for Sony
Clie 3.5
drivers/usb/serial/usb-serial.c: USB Serial support registered for Sony
Clie 5.0
usbcore: registered new driver visor
drivers/usb/serial/visor.c: USB HandSpring Visor / Palm OS driver v2.1
....

hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0002
ohci_hcd 0000:00:07.4: GetStatus roothub.portstatus [0] = 0x00010101 CSC
PPS CCS
hub 1-0:1.0: port 1, status 0101, change 0001, 12 Mb/s
hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101
ohci_hcd 0000:00:07.4: GetStatus roothub.portstatus [0] = 0x00100103
PRSC PPS PES CCS
usb 1-1: new full speed USB device using ohci_hcd and address 2
ohci_hcd 0000:00:07.4: GetStatus roothub.portstatus [0] = 0x00100103
PRSC PPS PES CCS
usb 1-1: ep0 maxpacket = 8
usb 1-1: default language 0x0409
usb 1-1: new device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1: Product: Generic Digital camera
usb 1-1: Manufacturer: Sunplus Technology Co., Ltd.
usb 1-1: hotplug
usb 1-1: adding 1-1:1.0 (config #1, interface 0)
usb 1-1:1.0: hotplug
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0002
spca5xx 1-1:1.0: usb_probe_interface
spca5xx 1-1:1.0: usb_probe_interface - got id
/home/brian/spca5xx-20050419/drivers/usb/spca5xx.c: USB SPCA5XX camera
found. Type Flexcam 100 (SPCA561A)
/home/brian/spca5xx-20050419/drivers/usb/spca5xx.c: [spca5xx_probe:8174]
Camera type GBRG
usbcore: registered new driver spca5xx
/home/brian/spca5xx-20050419/drivers/usb/spca5xx.c: spca5xx driver
00.56.01 registered
/home/brian/spca5xx-20050419/drivers/usb/spca561.h: [spca561_init:662]
Find spca561 USB Product ID 561
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0001
hub 1-0:1.0: resubmit --> -108
hub 1-0:1.0: state 5 ports 4 chg 0000 evt 0004
hub 1-0:1.0: hub_port_status failed (err = -108)
irq 10: nobody cared!
 [<c01379ea>] __report_bad_irq+0x2a/0x90
 [<c01373a0>] handle_IRQ_event+0x30/0x70
 [<c0137adc>] note_interrupt+0x6c/0xd0
 [<c0137510>] __do_IRQ+0x130/0x160
 [<c0104ef9>] do_IRQ+0x19/0x30
 [<c010339e>] common_interrupt+0x1a/0x20
 [<c011d2f0>] __do_softirq+0x30/0x90
 [<c011d376>] do_softirq+0x26/0x30
 [<c011d445>] irq_exit+0x35/0x40
 [<c0104efe>] do_IRQ+0x1e/0x30
 [<c010339e>] common_interrupt+0x1a/0x20
 [<c01a72c3>] journal_get_write_access+0x3/0x50
 [<c0198d87>] ext3_get_inode_loc+0x27/0x30
 [<c0199856>] ext3_reserve_inode_write+0x46/0xc0
 [<c01998fb>] ext3_mark_inode_dirty+0x2b/0x60
 [<c01999bb>] ext3_dirty_inode+0x8b/0x90
 [<c0179d2a>] __mark_inode_dirty+0x1aa/0x1b0
 [<c011d161>] current_fs_time+0x51/0x70
 [<c0171b23>] inode_update_time+0xb3/0xe0
 [<c013b09d>] __generic_file_aio_write_nolock+0x2cd/0x570
 [<c02a780d>] scrup+0x7d/0xf0
 [<c02aabb0>] do_con_write+0x230/0x590
 [<c03b00ff>] eisa_set_level_irq+0x3f/0x90
 [<c013b5f2>] generic_file_aio_write+0x72/0xe0
 [<c01943f4>] ext3_file_write+0x44/0xd0
 [<c0156b1e>] do_sync_write+0xbe/0xf0
 [<c029b12b>] tty_write+0x20b/0x270
 [<c012ccb0>] autoremove_wake_function+0x0/0x60
 [<c02a0960>] write_chan+0x0/0x210
 [<c0156bef>] vfs_write+0x9f/0x120
 [<c0156d41>] sys_write+0x51/0x80
 [<c01031e1>] syscall_call+0x7/0xb
handlers:
[<c0326410>] (ohci_irq_handler+0x0/0x780)
[<c033ecd0>] (usb_hcd_irq+0x0/0x70)
Disabling IRQ #10
usb 1-1: gqcam timed out on ep0in len=0/1




-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to