From: "Michael Chan" <[EMAIL PROTECTED]>
Date: Mon, 19 Dec 2005 13:02:36 -0800

> The tw32_f() function (register write with immediate read flush) can
> hang when used on some registers to switch clock frequencies and
> power. A new tw32_wait_f() is added for such registers with the
> delay before the read and after the read.

And if the PCI write gets posted for "X" usec, we'll still do the PCI
read back-to-back with the write it will thus still hang.  This change
makes the "_f()" part totally pointless.  There is nothing to flush
out if we're going to use a delay to wait for the write to take
effect.  By definition the write has been flushed already if it has
already taken effect within the device.

Yes, this delay works most of the time, but there are legitimate cases
where it would not.

That isn't to say I won't apply the patch.  I'm just pointing out how
incredibly silly this is :-)  It would be nice if the hardware
actually would function correctly in the presence of deeply delayed
posted PCI writes, but aparently there are very few chips that do.
-
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