Commit 90cca90d authored by Jody McIntyre's avatar Jody McIntyre

Use wmb() to make sure things get flushed before setting the wakup bit.
Signed-off-by: default avatarBen Collins <bcollins@debian.org>
Submitted-by: default avatarKeith Bengston <Keith.Bengston@csiro.au>
Signed-off-by: default avatarJody McIntyre <scjody@modernduck.com>
parent 6cb08ca8
......@@ -2545,6 +2545,10 @@ static void insert_dma_buffer(struct dma_rcv_ctx *d, int idx)
idx = (idx + d->num_desc - 1 ) % d->num_desc;
d->prg_cpu[idx]->branchAddress |= le32_to_cpu(0x00000001);
/* To avoid a race, ensure 1394 interface hardware sees the inserted
* context program descriptors before it sees the wakeup bit set. */
wmb();
/* wake up the dma context if necessary */
if (!(reg_read(ohci, d->ctrlSet) & 0x400)) {
PRINT(KERN_INFO,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment