|
|
@@ -422,7 +422,7 @@ static inline int add_one_rx_buf(void *va, unsigned int len,
|
|
|
|
|
|
d->addr_lo = cpu_to_be32(mapping);
|
|
|
d->addr_hi = cpu_to_be32((u64) mapping >> 32);
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
d->len_gen = cpu_to_be32(V_FLD_GEN1(gen));
|
|
|
d->gen2 = cpu_to_be32(V_FLD_GEN2(gen));
|
|
|
return 0;
|
|
|
@@ -433,7 +433,7 @@ static inline int add_one_rx_chunk(dma_addr_t mapping, struct rx_desc *d,
|
|
|
{
|
|
|
d->addr_lo = cpu_to_be32(mapping);
|
|
|
d->addr_hi = cpu_to_be32((u64) mapping >> 32);
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
d->len_gen = cpu_to_be32(V_FLD_GEN1(gen));
|
|
|
d->gen2 = cpu_to_be32(V_FLD_GEN2(gen));
|
|
|
return 0;
|
|
|
@@ -579,7 +579,7 @@ static void recycle_rx_buf(struct adapter *adap, struct sge_fl *q,
|
|
|
q->sdesc[q->pidx] = q->sdesc[idx];
|
|
|
to->addr_lo = from->addr_lo; /* already big endian */
|
|
|
to->addr_hi = from->addr_hi; /* likewise */
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
to->len_gen = cpu_to_be32(V_FLD_GEN1(q->gen));
|
|
|
to->gen2 = cpu_to_be32(V_FLD_GEN2(q->gen));
|
|
|
|
|
|
@@ -1068,7 +1068,7 @@ static void write_wr_hdr_sgl(unsigned int ndesc, struct sk_buff *skb,
|
|
|
sd->eop = 1;
|
|
|
wrp->wr_hi = htonl(F_WR_SOP | F_WR_EOP | V_WR_DATATYPE(1) |
|
|
|
V_WR_SGLSFLT(flits)) | wr_hi;
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
wrp->wr_lo = htonl(V_WR_LEN(flits + sgl_flits) |
|
|
|
V_WR_GEN(gen)) | wr_lo;
|
|
|
wr_gen2(d, gen);
|
|
|
@@ -1114,7 +1114,7 @@ static void write_wr_hdr_sgl(unsigned int ndesc, struct sk_buff *skb,
|
|
|
}
|
|
|
sd->eop = 1;
|
|
|
wrp->wr_hi |= htonl(F_WR_EOP);
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
wp->wr_lo = htonl(V_WR_LEN(WR_FLITS) | V_WR_GEN(ogen)) | wr_lo;
|
|
|
wr_gen2((struct tx_desc *)wp, ogen);
|
|
|
WARN_ON(ndesc != 0);
|
|
|
@@ -1184,7 +1184,7 @@ static void write_tx_pkt_wr(struct adapter *adap, struct sk_buff *skb,
|
|
|
cpl->wr.wr_hi = htonl(V_WR_BCNTLFLT(skb->len & 7) |
|
|
|
V_WR_OP(FW_WROPCODE_TUNNEL_TX_PKT)
|
|
|
| F_WR_SOP | F_WR_EOP | compl);
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
cpl->wr.wr_lo = htonl(V_WR_LEN(flits) | V_WR_GEN(gen) |
|
|
|
V_WR_TID(q->token));
|
|
|
wr_gen2(d, gen);
|
|
|
@@ -1342,7 +1342,7 @@ static inline void write_imm(struct tx_desc *d, struct sk_buff *skb,
|
|
|
|
|
|
to->wr_hi = from->wr_hi | htonl(F_WR_SOP | F_WR_EOP |
|
|
|
V_WR_BCNTLFLT(len & 7));
|
|
|
- wmb();
|
|
|
+ dma_wmb();
|
|
|
to->wr_lo = from->wr_lo | htonl(V_WR_GEN(gen) |
|
|
|
V_WR_LEN((len + 7) / 8));
|
|
|
wr_gen2(d, gen);
|
|
|
@@ -2271,7 +2271,7 @@ static int process_responses(struct adapter *adap, struct sge_qset *qs,
|
|
|
u32 len, flags;
|
|
|
__be32 rss_hi, rss_lo;
|
|
|
|
|
|
- rmb();
|
|
|
+ dma_rmb();
|
|
|
eth = r->rss_hdr.opcode == CPL_RX_PKT;
|
|
|
rss_hi = *(const __be32 *)r;
|
|
|
rss_lo = r->rss_hdr.rss_hash_val;
|
|
|
@@ -2488,7 +2488,7 @@ static int process_pure_responses(struct adapter *adap, struct sge_qset *qs,
|
|
|
}
|
|
|
if (!is_new_response(r, q))
|
|
|
break;
|
|
|
- rmb();
|
|
|
+ dma_rmb();
|
|
|
} while (is_pure_response(r));
|
|
|
|
|
|
if (sleeping)
|
|
|
@@ -2523,7 +2523,7 @@ static inline int handle_responses(struct adapter *adap, struct sge_rspq *q)
|
|
|
|
|
|
if (!is_new_response(r, q))
|
|
|
return -1;
|
|
|
- rmb();
|
|
|
+ dma_rmb();
|
|
|
if (is_pure_response(r) && process_pure_responses(adap, qs, r) == 0) {
|
|
|
t3_write_reg(adap, A_SG_GTS, V_RSPQ(q->cntxt_id) |
|
|
|
V_NEWTIMER(q->holdoff_tmr) | V_NEWINDEX(q->cidx));
|