struct bnge_ring_mem_info { /* Number of pages to next level */ int nr_pages; int page_size;
u16 flags; #define BNGE_RMEM_VALID_PTE_FLAG 1 #define BNGE_RMEM_RING_PTE_FLAG 2 #define BNGE_RMEM_USE_FULL_PAGE_FLAG 4
u16 depth;
void **pg_arr;
dma_addr_t *dma_arr;
__le64 *pg_tbl;
dma_addr_t dma_pg_tbl;
int vmem_size; void **vmem;
struct bnge_ctx_mem_type *ctx_mem;
};
/* The hardware supports certain page sizes. * Use the supported page sizes to allocate the rings.
*/ #if (PAGE_SHIFT < 12) #define BNGE_PAGE_SHIFT 12 #elif (PAGE_SHIFT <= 13) #define BNGE_PAGE_SHIFT PAGE_SHIFT #elif (PAGE_SHIFT < 16) #define BNGE_PAGE_SHIFT 13 #else #define BNGE_PAGE_SHIFT 16 #endif #define BNGE_PAGE_SIZE (1 << BNGE_PAGE_SHIFT) /* The RXBD length is 16-bit so we can only support page sizes < 64K */ #if (PAGE_SHIFT > 15) #define BNGE_RX_PAGE_SHIFT 15 #else #define BNGE_RX_PAGE_SHIFT PAGE_SHIFT #endif #define MAX_CTX_PAGES (BNGE_PAGE_SIZE / 8) #define MAX_CTX_TOTAL_PAGES (MAX_CTX_PAGES * MAX_CTX_PAGES)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.