Subject: Re: r8169 tx problem (1s pause with ping)

From: David Gundersen <[email-masked]>
Date: Tue, 19 Jun 2007 20:45:44 +1000

> Out of curiousity, does it work if you just do a single read (ie 
> RTL_R8(TxPoll);) of the register before writing to it?  That would clear 
> things up if it is a PCI posting problem.

Hi Ben,

I tried your suggestion but it didn't seem to make any difference :(

I tried the following combinations:

  - realtek original                          [broken]
  - realtek original with the RTL_R8(TxPoll)
    before RTL_W8(TxPoll, NPQ);               [broken]
  - my patched version without the ndelay
    loop but including the RTL_R8(TxPoll)
    (to see if my messing with the frag logic
     was having any impact)                   [broken]
  - my patched version including the
    ndelay loop                               [full speed transfers]

Also, I'm not sure if I made it clear in my first post, but I'm testing 
these changes on a 8168B (it's built in to my GA-945G-S3 motherboard).

I'm not sure if we can assume that the same change applied to the 8169 
driver would have the same effect on the 8169 too?   (is the 8168 just a 
PCI express version of the [pci] 8169?)

Dave.