[parisc-linux-cvs] linux grundler
Grant Grundler
grundler@dsl2.external.hp.com
Tue, 23 Apr 2002 09:56:36 -0600
Grant Grundler wrote:
> Log message:
> 2.4.18-pa22
> fix MMIO posted write bug (add inl/udelay to initialization)
> Symptom is driver can not read phy table.
> Saw this bug on 800Mhz Mckinley before.
> Now seeing it on C3600 (550Mhz PA-8600).
> Do not see this problem on C3000 (400Mhz PA-8500, same IO subsystem)
> Jeff Garzik already has this patch.
FYI, 800Mhz is a proto Mckinley and not final product.
Don't draw any conclusions about the performance from the clock speed.
Here's the -pa22 diff.
grant
Index: Makefile
===================================================================
RCS file: /var/cvs/linux/Makefile,v
retrieving revision 1.292
diff -u -p -r1.292 Makefile
--- Makefile 2002/04/22 00:04:10 1.292
+++ Makefile 2002/04/23 05:58:13
@@ -1,7 +1,7 @@
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 18
-EXTRAVERSION = -pa21
+EXTRAVERSION = -pa22
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
Index: drivers/net/tulip/media.c
===================================================================
RCS file: /var/cvs/linux/drivers/net/tulip/media.c,v
retrieving revision 1.9
diff -u -p -r1.9 media.c
--- drivers/net/tulip/media.c 2001/08/01 15:26:17 1.9
+++ drivers/net/tulip/media.c 2002/04/23 05:58:14
@@ -284,6 +284,11 @@ void tulip_select_media(struct net_devic
for (i = 0; i < init_length; i++)
outl(init_sequence[i], ioaddr + CSR12);
}
+
+#ifdef CONFIG_TULIP_MMIO
+ inl(ioaddr + CSR6); /* flush posted writes */
+ udelay(10);
+#endif
tmp_info = get_u16(&misc_info[1]);
if (tmp_info)
tp->advertising[phy_num] = tmp_info | 1;