iPXE
Data Fields
phantom_nic Struct Reference

A Phantom NIC. More...

Data Fields

void * bar0
 BAR 0. More...
 
unsigned long crb_window
 Current CRB window. More...
 
unsigned long(* crb_access )(struct phantom_nic *phantom, unsigned long reg)
 CRB window access method. More...
 
unsigned int port
 Port number. More...
 
uint16_t rx_context_id
 RX context ID. More...
 
unsigned long rds_producer_crb
 RX descriptor producer CRB offset. More...
 
unsigned long sds_consumer_crb
 RX status descriptor consumer CRB offset. More...
 
unsigned long sds_irq_mask_crb
 RX interrupt mask CRB offset. More...
 
unsigned int sds_irq_enabled
 RX interrupts enabled. More...
 
unsigned int rds_producer_idx
 RX producer index. More...
 
unsigned int rds_consumer_idx
 RX consumer index. More...
 
unsigned int sds_consumer_idx
 RX status consumer index. More...
 
struct io_bufferrds_iobuf [PHN_RDS_MAX_FILL]
 RX I/O buffers. More...
 
uint16_t tx_context_id
 TX context ID. More...
 
unsigned long cds_producer_crb
 TX descriptor producer CRB offset. More...
 
unsigned int cds_producer_idx
 TX producer index. More...
 
unsigned int cds_consumer_idx
 TX consumer index. More...
 
struct io_buffercds_iobuf [PHN_NUM_CDS]
 TX I/O buffers. More...
 
struct phantom_descriptor_ringsdesc
 Descriptor rings. More...
 
uint32_t link_state
 Last known link state. More...
 
unsigned long link_poll_timer
 Link state poll timer. More...
 
struct settings settings
 Non-volatile settings. More...
 

Detailed Description

A Phantom NIC.

Definition at line 142 of file phantom.c.

Field Documentation

◆ bar0

void* phantom_nic::bar0

◆ crb_window

unsigned long phantom_nic::crb_window

Current CRB window.

Definition at line 146 of file phantom.c.

Referenced by phantom_crb_access_128m(), phantom_crb_access_2m(), phantom_crb_access_32m(), and phantom_map_crb().

◆ crb_access

unsigned long( * phantom_nic::crb_access) (struct phantom_nic *phantom, unsigned long reg)

CRB window access method.

Definition at line 148 of file phantom.c.

Referenced by phantom_map_crb(), phantom_readl(), and phantom_writel().

◆ port

unsigned int phantom_nic::port

◆ rx_context_id

uint16_t phantom_nic::rx_context_id

RX context ID.

Definition at line 157 of file phantom.c.

Referenced by phantom_create_rx_ctx(), and phantom_destroy_rx_ctx().

◆ rds_producer_crb

unsigned long phantom_nic::rds_producer_crb

RX descriptor producer CRB offset.

Definition at line 159 of file phantom.c.

Referenced by phantom_create_rx_ctx(), phantom_destroy_rx_ctx(), and phantom_post_rds().

◆ sds_consumer_crb

unsigned long phantom_nic::sds_consumer_crb

RX status descriptor consumer CRB offset.

Definition at line 161 of file phantom.c.

Referenced by phantom_create_rx_ctx(), phantom_destroy_rx_ctx(), and phantom_poll().

◆ sds_irq_mask_crb

unsigned long phantom_nic::sds_irq_mask_crb

RX interrupt mask CRB offset.

Definition at line 163 of file phantom.c.

Referenced by phantom_create_rx_ctx(), and phantom_irq().

◆ sds_irq_enabled

unsigned int phantom_nic::sds_irq_enabled

RX interrupts enabled.

Definition at line 165 of file phantom.c.

Referenced by phantom_irq(), and phantom_poll().

◆ rds_producer_idx

unsigned int phantom_nic::rds_producer_idx

RX producer index.

Definition at line 168 of file phantom.c.

Referenced by phantom_alloc_rds(), phantom_destroy_rx_ctx(), and phantom_post_rds().

◆ rds_consumer_idx

unsigned int phantom_nic::rds_consumer_idx

RX consumer index.

Definition at line 170 of file phantom.c.

Referenced by phantom_alloc_rds(), phantom_destroy_rx_ctx(), and phantom_poll().

◆ sds_consumer_idx

unsigned int phantom_nic::sds_consumer_idx

RX status consumer index.

Definition at line 172 of file phantom.c.

Referenced by phantom_destroy_rx_ctx(), and phantom_poll().

◆ rds_iobuf

struct io_buffer* phantom_nic::rds_iobuf[PHN_RDS_MAX_FILL]

RX I/O buffers.

Definition at line 174 of file phantom.c.

Referenced by phantom_close(), phantom_poll(), and phantom_refill_rx_ring().

◆ tx_context_id

uint16_t phantom_nic::tx_context_id

TX context ID.

Definition at line 178 of file phantom.c.

Referenced by phantom_create_tx_ctx(), and phantom_destroy_tx_ctx().

◆ cds_producer_crb

unsigned long phantom_nic::cds_producer_crb

TX descriptor producer CRB offset.

Definition at line 180 of file phantom.c.

Referenced by phantom_create_tx_ctx(), phantom_destroy_tx_ctx(), and phantom_post_cds().

◆ cds_producer_idx

unsigned int phantom_nic::cds_producer_idx

TX producer index.

Definition at line 183 of file phantom.c.

Referenced by phantom_alloc_cds(), phantom_destroy_tx_ctx(), and phantom_post_cds().

◆ cds_consumer_idx

unsigned int phantom_nic::cds_consumer_idx

TX consumer index.

Definition at line 185 of file phantom.c.

Referenced by phantom_alloc_cds(), phantom_destroy_tx_ctx(), and phantom_poll().

◆ cds_iobuf

struct io_buffer* phantom_nic::cds_iobuf[PHN_NUM_CDS]

TX I/O buffers.

Definition at line 187 of file phantom.c.

Referenced by phantom_close(), phantom_poll(), and phantom_transmit().

◆ desc

struct phantom_descriptor_rings* phantom_nic::desc

◆ link_state

uint32_t phantom_nic::link_state

Last known link state.

Definition at line 195 of file phantom.c.

Referenced by phantom_poll_link_state().

◆ link_poll_timer

unsigned long phantom_nic::link_poll_timer

Link state poll timer.

Definition at line 197 of file phantom.c.

Referenced by phantom_poll().

◆ settings

struct settings phantom_nic::settings

Non-volatile settings.

Definition at line 201 of file phantom.c.

Referenced by phantom_probe(), and phantom_remove().


The documentation for this struct was generated from the following file: