summaryrefslogtreecommitdiffstats
path: root/drivers/net/typhoon.c
diff options
context:
space:
mode:
authorRussell King2010-03-15 15:27:06 +0100
committerRussell King2010-03-15 15:27:06 +0100
commit2d3b5fa3a39d16c880bda3cf2bd9dd6ed5a01f74 (patch)
treee20283fe2ed46aa35c8ca5fc1724ba067cd2e2f8 /drivers/net/typhoon.c
parentVideo: ARM CLCD: Better fix for swapped IENB and CNTL registers (diff)
parentvideo: enable sh_mobile_lcdc on SH-Mobile ARM (diff)
downloadkernel-qcow2-linux-2d3b5fa3a39d16c880bda3cf2bd9dd6ed5a01f74.tar.gz
kernel-qcow2-linux-2d3b5fa3a39d16c880bda3cf2bd9dd6ed5a01f74.tar.xz
kernel-qcow2-linux-2d3b5fa3a39d16c880bda3cf2bd9dd6ed5a01f74.zip
Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/genesis-2.6
Diffstat (limited to 'drivers/net/typhoon.c')
-rw-r--r--drivers/net/typhoon.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c
index 2fbf15235c05..cd24e5f2b2a2 100644
--- a/drivers/net/typhoon.c
+++ b/drivers/net/typhoon.c
@@ -480,7 +480,7 @@ typhoon_hello(struct typhoon *tp)
typhoon_inc_cmd_index(&ring->lastWrite, 1);
INIT_COMMAND_NO_RESPONSE(cmd, TYPHOON_CMD_HELLO_RESP);
- smp_wmb();
+ wmb();
iowrite32(ring->lastWrite, tp->ioaddr + TYPHOON_REG_CMD_READY);
spin_unlock(&tp->command_lock);
}
@@ -1311,13 +1311,15 @@ typhoon_init_interface(struct typhoon *tp)
tp->txlo_dma_addr = le32_to_cpu(iface->txLoAddr);
tp->card_state = Sleeping;
- smp_wmb();
tp->offload = TYPHOON_OFFLOAD_IP_CHKSUM | TYPHOON_OFFLOAD_TCP_CHKSUM;
tp->offload |= TYPHOON_OFFLOAD_UDP_CHKSUM | TSO_OFFLOAD_ON;
spin_lock_init(&tp->command_lock);
spin_lock_init(&tp->state_lock);
+
+ /* Force the writes to the shared memory area out before continuing. */
+ wmb();
}
static void