[lkml]   [2002]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH] #2 VIA Rhine stalls: TxAbort handling
    On Thu, 16 May 2002 18:03:25 +0800, Shing Chuang wrote:
    > As following three error conditions occurred, the VT6102 & VT86C100A
    > chip are designed to shutdown TX for driver to examine the error frame.
    > 1. Tx fifo underrun.
    > 2. Tx Abort (Too many collisions occurred).
    > 3. TxDescriptors status write back error. (Only on VT6102 chip)

    Hey, thanks! That's exactly the piece of information I've been looking for.

    > All the three conditions caused the TXON bit of CR1 went off. the
    > driver must wait a little while until the bit go off, reset the pointer of
    > [...]
    > do {} while (BYTE_REG_BITS_IS_ON(CR0_TXON,&pMacRegs->byCR0));

    The driver "waits a little" in the interrupt handler? How long can that
    take, worst case? I don't know of many places where the kernel stops to
    wait for an external device to change some value.

    I have no numbers on the expected number of iterations, but I'd rather drop
    out of the handler after a few failed checks and try again later (or just
    reset the chip and log an error, if dropping out is rare enough :-)).

    > current Tx descriptor, and then turn on TXON bit of CR1 again. Those may be

    ITYM the TXON bit of CR0. TDMD1 is the one you are setting in CR1. Which
    takes me to the next question:

    According to my docs, internal registers are like this:

    Byte Bit
    0x08 (CR0) 5 TDMD
    0x08 (CR0) 6 RDMD
    0x09 (CR1) 5 Reserved
    0x09 (CR1) 6 Reserved

    Byte Bit
    0x08 (CR0) 5 TDMD
    0x08 (CR0) 6 RDMD
    0x09 (CR1) 5 TDMD1
    0x09 (CR1) 6 RDMD1

    The descriptions in both data sheets are somewhat unclear, so maybe you
    could enlighten me about why you chose to set TDMD1 instead of TDMD (which
    is what the LK driver does)?

    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 13:26    [W:0.024 / U:4.184 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site