lkml.org 
[lkml]   [2004]   [Apr]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    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,
    http://www.ussg.iu.edu/hypermail/linux/kernel/0309.2/1039.html, 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?

    Malcolm.

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:02    [W:0.024 / U:0.988 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site