sp->flags |= SRB_SENT;
ha->actthreads++;
WRT_REG_WORD(®->mailbox4, ha->req_ring_index);
+ (void) RD_REG_WORD(®->mailbox4); /* PCI posted write flush */
out:
if (status)
sp->flags |= SRB_SENT;
ha->actthreads++;
WRT_REG_WORD(®->mailbox4, ha->req_ring_index);
+ (void) RD_REG_WORD(®->mailbox4); /* PCI posted write flush */
out:
if (status)
/* Set chip new ring index. */
WRT_REG_WORD(®->mailbox4, ha->req_ring_index);
+ (void) RD_REG_WORD(®->mailbox4); /* PCI posted write flush */
LEAVE("qla1280_isp_cmd");
}
/* Check for mailbox interrupt. */
- mailbox[0] = RD_REG_WORD(®->semaphore);
+ mailbox[0] = RD_REG_WORD_dmasync(®->semaphore);
if (mailbox[0] & BIT_0) {
/* Get mailbox data. */