diff options
author | Matt Carlson <mcarlson@broadcom.com> | 2009-08-28 10:03:21 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-08-29 18:43:04 -0400 |
commit | f3f3f27e5b4e27737f824535e6f145a3c88b976c (patch) | |
tree | 042a57424aca2fa1ff5736518321740070da767c /drivers/net/tg3.h | |
parent | 723344820aa405ac2663ab9e36fd27833d06129b (diff) |
tg3: Move per-int tx members to a per-int struct
This patch moves the tx_prod, tx_cons, tx_pending, tx_ring, and
tx_buffers transmit ring device members to a per-interrupt structure.
It also adds a new transmit producer mailbox member (prodmbox) and
converts the code to use it rather than a preprocessor constant.
Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tg3.h')
-rw-r--r-- | drivers/net/tg3.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/net/tg3.h b/drivers/net/tg3.h index b91ac29ae163..a816b2c0f167 100644 --- a/drivers/net/tg3.h +++ b/drivers/net/tg3.h | |||
@@ -2497,13 +2497,21 @@ struct tg3_napi { | |||
2497 | u32 last_tag; | 2497 | u32 last_tag; |
2498 | u32 last_irq_tag; | 2498 | u32 last_irq_tag; |
2499 | u32 int_mbox; | 2499 | u32 int_mbox; |
2500 | u32 tx_prod; | ||
2501 | u32 tx_cons; | ||
2502 | u32 tx_pending; | ||
2503 | u32 prodmbox; | ||
2504 | |||
2500 | u32 consmbox; | 2505 | u32 consmbox; |
2501 | u32 rx_rcb_ptr; | 2506 | u32 rx_rcb_ptr; |
2502 | 2507 | ||
2503 | struct tg3_rx_buffer_desc *rx_rcb; | 2508 | struct tg3_rx_buffer_desc *rx_rcb; |
2509 | struct tg3_tx_buffer_desc *tx_ring; | ||
2510 | struct tx_ring_info *tx_buffers; | ||
2504 | 2511 | ||
2505 | dma_addr_t status_mapping; | 2512 | dma_addr_t status_mapping; |
2506 | dma_addr_t rx_rcb_mapping; | 2513 | dma_addr_t rx_rcb_mapping; |
2514 | dma_addr_t tx_desc_mapping; | ||
2507 | }; | 2515 | }; |
2508 | 2516 | ||
2509 | struct tg3 { | 2517 | struct tg3 { |
@@ -2563,13 +2571,6 @@ struct tg3 { | |||
2563 | /* begin "tx thread" cacheline section */ | 2571 | /* begin "tx thread" cacheline section */ |
2564 | void (*write32_tx_mbox) (struct tg3 *, u32, | 2572 | void (*write32_tx_mbox) (struct tg3 *, u32, |
2565 | u32); | 2573 | u32); |
2566 | u32 tx_prod; | ||
2567 | u32 tx_cons; | ||
2568 | u32 tx_pending; | ||
2569 | |||
2570 | struct tg3_tx_buffer_desc *tx_ring; | ||
2571 | struct tx_ring_info *tx_buffers; | ||
2572 | dma_addr_t tx_desc_mapping; | ||
2573 | 2574 | ||
2574 | /* begin "rx thread" cacheline section */ | 2575 | /* begin "rx thread" cacheline section */ |
2575 | struct tg3_napi napi[TG3_IRQ_MAX_VECS]; | 2576 | struct tg3_napi napi[TG3_IRQ_MAX_VECS]; |