[lkml]   [2004]   [Apr]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: mark_offset_tsc() hangs usb

I wrote:

> I have been trying to fix a problem related to usb, with the help of the
> usb-dev list. Plugging in a usb device hangs my computer when bandwidth
> reclamation (fsbr) is turned on in the uhci-hcd driver.
> I have found though, that when an interrupt is triggered by plugging in
> a usb device, the timer_interrupt() function in arch/i386/kernel/time.c
> is reached, and the computer hangs in mark_offset_tsc() in
> timers/timer_tsc.c. I removed the call to this function in
> timer_interrupt() and then usb worked as normal. I'm hoping there's a
> better way to get usb working than this though! This doesn't happen when
> fsbr is switched off.
> The computer has a Crusoe TM5400 cpu and a VIA VT82C686A controller.

I've been trying to work out what goes wrong in mark_offset_tsc() and
found that it's just the outb_p() & inb_p() calls that are causing the
problem. I found a thread relating to this,, and
tried the line:
#define __SLOW_DOWN_IO__ ""
which also allowed usb to work normally. Since this is just avoiding the
read or write to port 0x80, is this a sign of having dodgy hardware? The
thread doesn't talk about writing to the port as being fatal, even if it
does cause problems for some people.

Anybody got a better fix?


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 14:02    [W:0.046 / U:1.388 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site