diff options
Diffstat (limited to 'drivers/net/ethernet/intel/i40e/i40e_txrx.c')
-rw-r--r-- | drivers/net/ethernet/intel/i40e/i40e_txrx.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c index 32c9aeb..3bc3efa 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c +++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c @@ -195,20 +195,20 @@ static void i40e_fd_handle_status(struct i40e_ring *rx_ring, u32 qw, u8 prog_id) static inline void i40e_unmap_tx_resource(struct i40e_ring *ring, struct i40e_tx_buffer *tx_buffer) { - if (tx_buffer->dma) { + if (dma_unmap_len(tx_buffer, len)) { if (tx_buffer->tx_flags & I40E_TX_FLAGS_MAPPED_AS_PAGE) dma_unmap_page(ring->dev, - tx_buffer->dma, - tx_buffer->length, + dma_unmap_addr(tx_buffer, dma), + dma_unmap_len(tx_buffer, len), DMA_TO_DEVICE); else dma_unmap_single(ring->dev, - tx_buffer->dma, - tx_buffer->length, + dma_unmap_addr(tx_buffer, dma), + dma_unmap_len(tx_buffer, len), DMA_TO_DEVICE); } - tx_buffer->dma = 0; tx_buffer->time_stamp = 0; + dma_unmap_len_set(tx_buffer, len, 0); } /** @@ -1554,9 +1554,9 @@ static void i40e_tx_map(struct i40e_ring *tx_ring, struct sk_buff *skb, } tx_bi = &tx_ring->tx_bi[i]; - tx_bi->length = buf_offset + size; + dma_unmap_len_set(tx_bi, len, buf_offset + size); + dma_unmap_addr_set(tx_bi, dma, dma); tx_bi->tx_flags = tx_flags; - tx_bi->dma = dma; tx_desc->buffer_addr = cpu_to_le64(dma + buf_offset); tx_desc->cmd_type_offset_bsz = build_ctob(td_cmd, td_offset, |