Commit 40c0d879 authored by Grant Grundler's avatar Grant Grundler Committed by Jeff Garzik
Browse files

[PATCH] Flush MMIO writes in reset sequence



The obvious safe registers to read is one from PCI config space.

Signed-off-by: default avatarGrant Grundler <grundler@parisc-linux.org>
Signed-off-by: default avatarKyle McMartin <kyle@parisc-linux.org>
Signed-off-by: default avatarValerie Henson <val_henson@linux.intel.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent b892de0b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -295,12 +295,14 @@ static void tulip_up(struct net_device *dev)

	/* Reset the chip, holding bit 0 set at least 50 PCI cycles. */
	iowrite32(0x00000001, ioaddr + CSR0);
	pci_read_config_dword(tp->pdev, PCI_COMMAND, &i);  /* flush write */
	udelay(100);

	/* Deassert reset.
	   Wait the specified 50 PCI cycles after a reset by initializing
	   Tx and Rx queues and the address filter list. */
	iowrite32(tp->csr0, ioaddr + CSR0);
	pci_read_config_dword(tp->pdev, PCI_COMMAND, &i);  /* flush write */
	udelay(100);

	if (tulip_debug > 1)