aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bnx2.h
diff options
context:
space:
mode:
authorBenjamin Li <benli@broadcom.com>2008-10-09 15:26:41 -0400
committerDavid S. Miller <davem@davemloft.net>2008-10-09 15:26:41 -0400
commit3d16af8665504c89f9ef3aae56f54fb93e48da61 (patch)
tree465889b9ddae41530e7203d0eb97e7661fb2db93 /drivers/net/bnx2.h
parenta1efb4b686babf38e5e63add8b990f18e38becc4 (diff)
bnx2: Handle DMA mapping errors.
Before, the driver would not care about the return codes from pci_map_* functions. This could be potentially dangerous if a mapping failed. Now, we will check all pci_map_* calls. On the transmit side, we switch to use the new function skb_dma_map(). On the receive side, we add pci_dma_mapping_error(). Signed-off-by: Benjamin Li <benli@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2.h')
-rw-r--r--drivers/net/bnx2.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h
index edc7774f2f21..617d95340160 100644
--- a/drivers/net/bnx2.h
+++ b/drivers/net/bnx2.h
@@ -6526,10 +6526,14 @@ struct sw_pg {
6526 DECLARE_PCI_UNMAP_ADDR(mapping) 6526 DECLARE_PCI_UNMAP_ADDR(mapping)
6527}; 6527};
6528 6528
6529struct sw_tx_bd {
6530 struct sk_buff *skb;
6531};
6532
6529#define SW_RXBD_RING_SIZE (sizeof(struct sw_bd) * RX_DESC_CNT) 6533#define SW_RXBD_RING_SIZE (sizeof(struct sw_bd) * RX_DESC_CNT)
6530#define SW_RXPG_RING_SIZE (sizeof(struct sw_pg) * RX_DESC_CNT) 6534#define SW_RXPG_RING_SIZE (sizeof(struct sw_pg) * RX_DESC_CNT)
6531#define RXBD_RING_SIZE (sizeof(struct rx_bd) * RX_DESC_CNT) 6535#define RXBD_RING_SIZE (sizeof(struct rx_bd) * RX_DESC_CNT)
6532#define SW_TXBD_RING_SIZE (sizeof(struct sw_bd) * TX_DESC_CNT) 6536#define SW_TXBD_RING_SIZE (sizeof(struct sw_tx_bd) * TX_DESC_CNT)
6533#define TXBD_RING_SIZE (sizeof(struct tx_bd) * TX_DESC_CNT) 6537#define TXBD_RING_SIZE (sizeof(struct tx_bd) * TX_DESC_CNT)
6534 6538
6535/* Buffered flash (Atmel: AT45DB011B) specific information */ 6539/* Buffered flash (Atmel: AT45DB011B) specific information */
@@ -6609,7 +6613,7 @@ struct bnx2_tx_ring_info {
6609 u32 tx_bseq_addr; 6613 u32 tx_bseq_addr;
6610 6614
6611 struct tx_bd *tx_desc_ring; 6615 struct tx_bd *tx_desc_ring;
6612 struct sw_bd *tx_buf_ring; 6616 struct sw_tx_bd *tx_buf_ring;
6613 6617
6614 u16 tx_cons; 6618 u16 tx_cons;
6615 u16 hw_tx_cons; 6619 u16 hw_tx_cons;