diff options
author | Divy Le Ray <divy@chelsio.com> | 2007-02-24 19:44:17 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-02-27 04:27:12 -0500 |
commit | e0994eb1d9ead09bb8f6483cf5cf6aa55ce0f3b9 (patch) | |
tree | c6d7b848bb965f31b6a68618078586dea5de07b2 /drivers/net/cxgb3/adapter.h | |
parent | bae73f44472921008f8d0982344c53ae231445a1 (diff) |
cxgb3 - Feed Rx free list with pages
Populate Rx free list with pages.
Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/cxgb3/adapter.h')
-rw-r--r-- | drivers/net/cxgb3/adapter.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/net/cxgb3/adapter.h b/drivers/net/cxgb3/adapter.h index 01b99b901434..80c3d8f268a7 100644 --- a/drivers/net/cxgb3/adapter.h +++ b/drivers/net/cxgb3/adapter.h | |||
@@ -74,6 +74,11 @@ enum { /* adapter flags */ | |||
74 | struct rx_desc; | 74 | struct rx_desc; |
75 | struct rx_sw_desc; | 75 | struct rx_sw_desc; |
76 | 76 | ||
77 | struct sge_fl_page { | ||
78 | struct skb_frag_struct frag; | ||
79 | unsigned char *va; | ||
80 | }; | ||
81 | |||
77 | struct sge_fl { /* SGE per free-buffer list state */ | 82 | struct sge_fl { /* SGE per free-buffer list state */ |
78 | unsigned int buf_size; /* size of each Rx buffer */ | 83 | unsigned int buf_size; /* size of each Rx buffer */ |
79 | unsigned int credits; /* # of available Rx buffers */ | 84 | unsigned int credits; /* # of available Rx buffers */ |
@@ -81,11 +86,13 @@ struct sge_fl { /* SGE per free-buffer list state */ | |||
81 | unsigned int cidx; /* consumer index */ | 86 | unsigned int cidx; /* consumer index */ |
82 | unsigned int pidx; /* producer index */ | 87 | unsigned int pidx; /* producer index */ |
83 | unsigned int gen; /* free list generation */ | 88 | unsigned int gen; /* free list generation */ |
89 | unsigned int cntxt_id; /* SGE context id for the free list */ | ||
90 | struct sge_fl_page page; | ||
84 | struct rx_desc *desc; /* address of HW Rx descriptor ring */ | 91 | struct rx_desc *desc; /* address of HW Rx descriptor ring */ |
85 | struct rx_sw_desc *sdesc; /* address of SW Rx descriptor ring */ | 92 | struct rx_sw_desc *sdesc; /* address of SW Rx descriptor ring */ |
86 | dma_addr_t phys_addr; /* physical address of HW ring start */ | 93 | dma_addr_t phys_addr; /* physical address of HW ring start */ |
87 | unsigned int cntxt_id; /* SGE context id for the free list */ | ||
88 | unsigned long empty; /* # of times queue ran out of buffers */ | 94 | unsigned long empty; /* # of times queue ran out of buffers */ |
95 | unsigned long alloc_failed; /* # of times buffer allocation failed */ | ||
89 | }; | 96 | }; |
90 | 97 | ||
91 | /* | 98 | /* |