On Mon, 2 Jul 2007 14:37:06 +0100
"Daniel J Blueman" <[EMAIL PROTECTED]> wrote:

> Hi Stephen,
> 
> When the sky2 driver initialises, it sets the the ISR timer register
> (STAT_ISR_TIMER_INI) to 125 * 20 = 2500, whereas the vendor sk98lin
> driver sets it to 400, irrespective of the clockspeed of the NIC
> processor.
> 
> I guess you found more performance/stability from this value...?
> 
> I've checked through the errata workarounds common to my rev-1 and 2
> Yukon-EC chips...the HWF_WA_DEV_4167 "oversize receive hang"
> workaround checks and can reset the (as I understand) bus master unit
> of the NIC (in CheckRxPath) in a periodic timer that is fired, where
> is finds no progress is made.
> 

My best guess at what that is handling is the chip (bug) that causes
the receiver to hang if a packet larger than the receive DMA buffer is
received.  The sky2 driver doesn't need this because it allocates a 
slightly larger buffer than necessary, and truncates the oversize packet.
This works because the hardware has a truncation register that was probably
designed for use when packet sniffing.

-- 
Stephen Hemminger <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to