iPXE
Data Structures | Defines | Enumerations | Functions | Variables
ena.h File Reference

Amazon ENA network driver. More...

#include <stdint.h>
#include <ipxe/if_ether.h>

Go to the source code of this file.

Data Structures

struct  ena_aq_header
 Admin queue entry header. More...
struct  ena_acq_header
 Admin completion queue entry header. More...
struct  ena_device_attributes
 Device attributes. More...
union  ena_feature
 Feature. More...
struct  ena_create_sq_req
 Create submission queue request. More...
struct  ena_create_sq_rsp
 Create submission queue response. More...
struct  ena_destroy_sq_req
 Destroy submission queue request. More...
struct  ena_destroy_sq_rsp
 Destroy submission queue response. More...
struct  ena_create_cq_req
 Create completion queue request. More...
struct  ena_create_cq_rsp
 Create completion queue response. More...
struct  ena_destroy_cq_req
 Destroy completion queue request. More...
struct  ena_destroy_cq_rsp
 Destroy completion queue response. More...
struct  ena_get_feature_req
 Get feature request. More...
struct  ena_get_feature_rsp
 Get feature response. More...
struct  ena_get_stats_req
 Get statistics request. More...
struct  ena_get_stats_rsp
 Get statistics response. More...
union  ena_aq_req
 Admin queue request. More...
union  ena_acq_rsp
 Admin completion queue response. More...
struct  ena_aq
 Admin queue. More...
struct  ena_acq
 Admin completion queue. More...
struct  ena_tx_sqe
 Transmit submission queue entry. More...
struct  ena_rx_sqe
 Receive submission queue entry. More...
struct  ena_tx_cqe
 Transmit completion queue entry. More...
struct  ena_rx_cqe
 Receive completion queue entry. More...
struct  ena_sq
 Submission queue. More...
struct  ena_nic
 An ENA network card. More...

Defines

#define ENA_BAR_SIZE   16384
 BAR size.
#define ENA_ALIGN   4096
 Queue alignment.
#define ENA_AQ_COUNT   2
 Number of admin queue entries.
#define ENA_ACQ_COUNT   2
 Number of admin completion queue entries.
#define ENA_TX_COUNT   16
 Number of transmit queue entries.
#define ENA_RX_COUNT   16
 Number of receive queue entries.
#define ENA_BASE_LO   0x0
 Base address low register offset.
#define ENA_BASE_HI   0x4
 Base address high register offset.
#define ENA_CAPS(count, size)   ( ( (size) << 16 ) | ( (count) << 0 ) )
 Capability register value.
#define ENA_AQ_BASE   0x10
 Admin queue base address register.
#define ENA_AQ_CAPS   0x18
 Admin queue capabilities register.
#define ENA_ACQ_BASE   0x20
 Admin completion queue base address register.
#define ENA_ACQ_CAPS   0x28
 Admin completion queue capabilities register.
#define ENA_AQ_DB   0x2c
 Admin queue doorbell register.
#define ENA_ADMIN_MAX_WAIT_MS   5000
 Maximum time to wait for admin requests.
#define ENA_CTRL   0x54
 Device control register.
#define ENA_CTRL_RESET   0x00000001UL
 Reset.
#define ENA_RESET_MAX_WAIT_MS   1000
 Maximum time to wait for reset.
#define ENA_STAT   0x58
 Device status register.
#define ENA_STAT_READY   0x00000001UL
 Ready.
#define ENA_AQ_PHASE   0x01
 Admin queue ownership phase flag.
#define ENA_ACQ_PHASE   0x01
 Admin completion queue ownership phase flag.
#define ENA_DEVICE_ATTRIBUTES   1
 Device attributes.
#define ENA_CREATE_SQ   1
 Create submission queue.
#define ENA_DESTROY_SQ   2
 Destroy submission queue.
#define ENA_CREATE_CQ   3
 Create completion queue.
#define ENA_DESTROY_CQ   4
 Destroy completion queue.
#define ENA_GET_FEATURE   8
 Get feature.
#define ENA_GET_STATS   11
 Get statistics.
#define ENA_STATS_TYPE_BASIC   0
 Basic statistics.
#define ENA_STATS_SCOPE_ETH   1
 Ethernet statistics.
#define ENA_DEVICE_MINE   0xffff
 My device.
#define ENA_SQE_PHASE   0x01
 Submission queue ownership phase flag.
#define ENA_SQE_FIRST   0x04
 This is the first descriptor.
#define ENA_SQE_LAST   0x08
 This is the last descriptor.
#define ENA_SQE_CPL   0x10
 Request completion.
#define ENA_CQE_PHASE   0x01
 Completion queue ownership phase flag.

Enumerations

enum  ena_sq_direction { ENA_SQ_TX = 0x20, ENA_SQ_RX = 0x40 }
 Submission queue direction. More...
enum  ena_sq_policy { ENA_SQ_HOST_MEMORY = 0x0001, ENA_SQ_CONTIGUOUS = 0x0100 }
 Submission queue policy. More...

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)
struct ena_aq_header __attribute__ ((packed))
static __attribute__ ((always_inline)) void ena_sq_init(struct ena_sq *sq
 Initialise submission queue.

Variables

uint8_t id
 Request identifier.
uint8_t reserved
 Reserved.
uint8_t opcode
 Opcode.
uint8_t flags
 Flags.
uint8_t status
 Status.
uint16_t ext
 Extended status.
uint16_t cons
 Consumer index.
uint32_t implementation
 Implementation.
uint32_t version
 Device version.
uint32_t features
 Supported features.
uint8_t reserved_a [4]
 Reserved.
uint32_t physical
 Physical address width.
uint32_t virtual
 Virtual address width.
uint8_t mac [ETH_ALEN]
 MAC address.
uint8_t reserved_b [2]
 Reserved.
uint32_t mtu
 Maximum MTU.
union ena_feature __attribute__
struct ena_aq_header header
 Header.
uint8_t direction
 Direction.
uint16_t policy
 Policy.
uint16_t cq_id
 Completion queue identifier.
uint16_t count
 Number of entries.
uint64_t address
 Base address.
uint64_t writeback
 Writeback address.
uint32_t doorbell
 Doorbell register offset.
uint32_t llq_desc
 LLQ descriptor ring offset.
uint32_t llq_data
 LLQ header offset.
uint8_t intr
 Interrupts enabled.
uint8_t size
 Entry size (in 32-bit words)
uint32_t vector
 MSI-X vector.
uint32_t node
 NUMA node register offset.
uint32_t len
 Length.
union ena_feature feature
 Feature.
uint8_t type
 Type.
uint8_t scope
 Scope.
uint16_t queue
 Queue ID.
uint16_t device
 Device ID.
uint64_t tx_bytes
 Transmit byte count.
uint64_t tx_packets
 Transmit packet count.
uint64_t rx_bytes
 Receive byte count.
uint64_t rx_packets
 Receive packet count.
uint64_t rx_drops
 Receive drop count.

Detailed Description

Amazon ENA network driver.

Definition in file ena.h.


Define Documentation

#define ENA_BAR_SIZE   16384

BAR size.

Definition at line 16 of file ena.h.

Referenced by ena_probe().

#define ENA_ALIGN   4096

Queue alignment.

Definition at line 19 of file ena.h.

Referenced by ena_create_cq(), and ena_create_sq().

#define ENA_AQ_COUNT   2

Number of admin queue entries.

Definition at line 22 of file ena.h.

Referenced by ena_admin_req(), ena_create_admin(), and ena_destroy_admin().

#define ENA_ACQ_COUNT   2

Number of admin completion queue entries.

Definition at line 25 of file ena.h.

Referenced by ena_admin(), ena_create_admin(), and ena_destroy_admin().

#define ENA_TX_COUNT   16

Number of transmit queue entries.

Definition at line 28 of file ena.h.

Referenced by ena_probe(), and ena_transmit().

#define ENA_RX_COUNT   16

Number of receive queue entries.

Definition at line 31 of file ena.h.

Referenced by ena_empty_rx(), ena_poll_rx(), ena_probe(), and ena_refill_rx().

#define ENA_BASE_LO   0x0

Base address low register offset.

Definition at line 34 of file ena.h.

Referenced by ena_set_base().

#define ENA_BASE_HI   0x4

Base address high register offset.

Definition at line 37 of file ena.h.

Referenced by ena_set_base().

#define ENA_CAPS (   count,
  size 
)    ( ( (size) << 16 ) | ( (count) << 0 ) )

Capability register value.

Definition at line 40 of file ena.h.

Referenced by ena_set_caps().

#define ENA_AQ_BASE   0x10

Admin queue base address register.

Definition at line 43 of file ena.h.

Referenced by ena_create_admin().

#define ENA_AQ_CAPS   0x18

Admin queue capabilities register.

Definition at line 46 of file ena.h.

Referenced by ena_create_admin(), and ena_destroy_admin().

#define ENA_ACQ_BASE   0x20

Admin completion queue base address register.

Definition at line 49 of file ena.h.

Referenced by ena_create_admin().

#define ENA_ACQ_CAPS   0x28

Admin completion queue capabilities register.

Definition at line 52 of file ena.h.

Referenced by ena_create_admin(), and ena_destroy_admin().

#define ENA_AQ_DB   0x2c

Admin queue doorbell register.

Definition at line 55 of file ena.h.

Referenced by ena_admin().

#define ENA_ADMIN_MAX_WAIT_MS   5000

Maximum time to wait for admin requests.

Definition at line 58 of file ena.h.

Referenced by ena_admin().

#define ENA_CTRL   0x54

Device control register.

Definition at line 61 of file ena.h.

Referenced by ena_reset().

#define ENA_CTRL_RESET   0x00000001UL

Reset.

Definition at line 62 of file ena.h.

Referenced by ena_reset().

#define ENA_RESET_MAX_WAIT_MS   1000

Maximum time to wait for reset.

Definition at line 65 of file ena.h.

Referenced by ena_reset().

#define ENA_STAT   0x58

Device status register.

Definition at line 68 of file ena.h.

Referenced by ena_reset().

#define ENA_STAT_READY   0x00000001UL

Ready.

Definition at line 69 of file ena.h.

Referenced by ena_reset().

#define ENA_AQ_PHASE   0x01

Admin queue ownership phase flag.

Definition at line 84 of file ena.h.

Referenced by ena_admin().

#define ENA_ACQ_PHASE   0x01

Admin completion queue ownership phase flag.

Definition at line 103 of file ena.h.

Referenced by ena_admin(), and ena_probe().

#define ENA_DEVICE_ATTRIBUTES   1

Device attributes.

Definition at line 106 of file ena.h.

Referenced by ena_get_device_attributes().

#define ENA_CREATE_SQ   1

Create submission queue.

Definition at line 145 of file ena.h.

Referenced by ena_create_sq().

#define ENA_DESTROY_SQ   2

Destroy submission queue.

Definition at line 194 of file ena.h.

Referenced by ena_destroy_sq().

#define ENA_CREATE_CQ   3

Create completion queue.

Definition at line 215 of file ena.h.

Referenced by ena_create_cq().

#define ENA_DESTROY_CQ   4

Destroy completion queue.

Definition at line 250 of file ena.h.

Referenced by ena_destroy_cq().

#define ENA_GET_FEATURE   8

Get feature.

Definition at line 269 of file ena.h.

Referenced by ena_get_device_attributes().

#define ENA_GET_STATS   11

Get statistics.

Definition at line 296 of file ena.h.

Referenced by ena_get_stats().

#define ENA_STATS_TYPE_BASIC   0

Basic statistics.

Definition at line 317 of file ena.h.

Referenced by ena_get_stats().

#define ENA_STATS_SCOPE_ETH   1

Ethernet statistics.

Definition at line 320 of file ena.h.

Referenced by ena_get_stats().

#define ENA_DEVICE_MINE   0xffff

My device.

Definition at line 323 of file ena.h.

Referenced by ena_get_stats().

#define ENA_SQE_PHASE   0x01

Submission queue ownership phase flag.

Definition at line 432 of file ena.h.

Referenced by ena_create_sq(), ena_refill_rx(), and ena_transmit().

#define ENA_SQE_FIRST   0x04

This is the first descriptor.

Definition at line 435 of file ena.h.

Referenced by ena_refill_rx(), and ena_transmit().

#define ENA_SQE_LAST   0x08

This is the last descriptor.

Definition at line 438 of file ena.h.

Referenced by ena_refill_rx(), and ena_transmit().

#define ENA_SQE_CPL   0x10

Request completion.

Definition at line 441 of file ena.h.

Referenced by ena_refill_rx(), and ena_transmit().

#define ENA_CQE_PHASE   0x01

Completion queue ownership phase flag.

Definition at line 472 of file ena.h.

Referenced by ena_create_cq(), ena_poll_rx(), and ena_poll_tx().


Enumeration Type Documentation

Submission queue direction.

Enumerator:
ENA_SQ_TX 

Transmit.

ENA_SQ_RX 

Receive.

Definition at line 137 of file ena.h.

                      {
        /** Transmit */
        ENA_SQ_TX = 0x20,
        /** Receive */
        ENA_SQ_RX = 0x40,
};

Submission queue policy.

Enumerator:
ENA_SQ_HOST_MEMORY 

Use host memory.

ENA_SQ_CONTIGUOUS 

Memory is contiguous.

Definition at line 170 of file ena.h.

                   {
        /** Use host memory */
        ENA_SQ_HOST_MEMORY = 0x0001,
        /** Memory is contiguous */
        ENA_SQ_CONTIGUOUS = 0x0100,
};

Function Documentation

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )
struct ena_aq_header __attribute__ ( (packed)  )
static __attribute__ ( (always_inline)  ) [inline, static]

Initialise submission queue.

Initialise completion queue.

Parameters:
sqSubmission queue
directionDirection
countNumber of entries
sizeSize of each entry
cqCompletion queue
countNumber of entries
sizeSize of each entry

Variable Documentation

u8 id

Request identifier.

Vendor-specific ID: 221.

Information element ID.

ERP Information ID: 42.

Channels ID: 36.

Power Capability ID: 33.

Power Constraint ID: 52.

Challenge Text ID: 16.

Request ID: 10.

Country information ID: 7.

DS parameter ID: 3.

Rates ID: 1 or 50.

SSID ID: 0.

Connection ID.

SCSI ID.

Feature identifier.

Completion queue identifier.

Submission queue identifier.

Definition at line 83 of file ena.h.

Referenced by bofm_find_driver(), eepro_probe1(), eisa_probe(), fcels_exec(), isapnp_probe(), mca_probe(), mii_find(), netfront_destroy_ring(), netfront_pull(), pci_find_capability_common(), pci_find_driver(), pci_set_driver(), peerdisc_socket_rx(), realtek_init_eeprom(), rndis_rx_initialise(), rndis_rx_query_oid(), rndis_rx_set_oid(), rndis_tx_initialise(), usb_probe(), usb_score(), usbio_supported(), vring_get_buf(), xcm_list(), xhci_device_close(), and xhci_device_open().

Reserved.

Must be zero.

Padding.

Definition at line 85 of file ena.h.

Opcode.

Opcode (0x00)

Opcode (0x9e)

Opcode (0x25)

Opcode (0x8a)

Opcode (0x2a)

Opcode (0x88)

Definition at line 87 of file ena.h.

Referenced by arbel_cmd(), arbel_complete(), efi_ifr_op(), golan_complete(), hermon_cmd(), hermon_complete(), hermon_post_send(), phantom_clp_fetch(), phantom_clp_store(), phantom_poll(), pxe_api_call(), shomron_fill_completion(), shomron_fill_eth_send_wqe(), and sky2_status_intr().

Status.

Status code.

Definition at line 106 of file ena.h.

Referenced by __attribute__(), __vxge_hw_device_get_legacy_reg(), __vxge_hw_device_reg_addr_get(), __vxge_hw_device_vpath_reset_in_prog_check(), __vxge_hw_fifo_create(), __vxge_hw_legacy_swapper_set(), __vxge_hw_ring_create(), __vxge_hw_vp_initialize(), __vxge_hw_vpath_addr_get(), __vxge_hw_vpath_alarm_process(), __vxge_hw_vpath_card_info_get(), __vxge_hw_vpath_fw_ver_get(), __vxge_hw_vpath_initialize(), __vxge_hw_vpath_kdfc_configure(), __vxge_hw_vpath_mac_configure(), __vxge_hw_vpath_mgmt_read(), __vxge_hw_vpath_pci_read(), __vxge_hw_vpath_reset(), __vxge_hw_vpath_reset_check(), __vxge_hw_vpath_tim_configure(), a3c90x_refill_rx_ring(), amd79c901_read_mode(), amd8111e_poll(), amd8111e_poll_link(), amd8111e_wait_link(), amd8111e_wait_tx_ring(), ar9002_hw_proc_txdesc(), ar9003_hw_proc_txdesc(), arbel_cmd(), ath5k_hw_eeprom_read(), ath5k_poll(), ath9k_hw_eeprom_init(), ath9k_hw_setpower(), ath9k_tasklet(), ath_isr(), ath_tx_processq(), atl1e_poll(), bcom_check_link(), bnx2_poll(), check_nodnic_interface_supported(), cs89x0_poll(), davicom_poll(), davicom_reset(), davicom_transmit(), dhcpv6_status_code(), disable_nodnic_inteface(), eepro_transmit(), efi_usb_async_complete(), ehci_endpoint_poll(), epic100_poll(), epic100_transmit(), exanic_check_link(), exanic_probe_port(), fiber_autoneg(), flexboot_nodnic_alloc_uar(), flexboot_nodnic_allocate_infiniband_devices(), flexboot_nodnic_create_cq(), flexboot_nodnic_create_qp(), flexboot_nodnic_eth_close(), flexboot_nodnic_eth_open(), flexboot_nodnic_get_factory_mac(), flexboot_nodnic_is_supported(), flexboot_nodnic_mcast_attach(), flexboot_nodnic_mcast_detach(), flexboot_nodnic_poll_eq(), flexboot_nodnic_port_disable_dma(), flexboot_nodnic_ports_register_dev(), flexboot_nodnic_post_recv(), flexboot_nodnic_post_send(), flexboot_nodnic_probe(), flexboot_nodnic_register_netdev(), flexboot_nodnic_set_ports_type(), flexboot_nodnic_thin_init_ports(), forcedeth_poll(), gmii_link_ok(), golan_set_link_speed(), guestrpc_close(), guestrpc_command(), guestrpc_command_data(), guestrpc_command_len(), guestrpc_open(), guestrpc_reply_data(), guestrpc_reply_finish(), guestrpc_reply_len(), hermon_cmd(), http_parse_status(), hv_post_message(), hv_signal_event(), ics1893_read_mode(), ifec_rx_process(), ifec_tx_process(), igbvf_get_link_up_info_vf(), int13(), int13_load_eltorito(), int13_load_mbr(), intel_check_link(), intel_reset(), linda_i2c_read_bit(), mdio_clause45_check_mmds(), mdio_clause45_links_ok(), mlx_blink_leds(), mlx_get_max_mtu(), mlx_get_max_speed(), mlx_icmd_clear_semaphore(), mlx_icmd_get_semaphore(), mlx_icmd_get_status(), mlx_icmd_go(), mlx_icmd_init(), mlx_icmd_read_buffer(), mlx_icmd_send_command(), mlx_icmd_set_opcode(), mlx_icmd_write_buffer(), mlx_memory_alloc(), mlx_memory_alloc_dma(), mlx_memory_alloc_dma_priv(), mlx_memory_alloc_priv(), mlx_memory_be32_to_cpu(), mlx_memory_be32_to_cpu_priv(), mlx_memory_cmp(), mlx_memory_cmp_priv(), mlx_memory_cpu_to_be32(), mlx_memory_cpu_to_be32_priv(), mlx_memory_cpy(), mlx_memory_cpy_priv(), mlx_memory_free(), mlx_memory_free_dma(), mlx_memory_free_dma_priv(), mlx_memory_free_priv(), mlx_memory_map_dma(), mlx_memory_map_dma_priv(), mlx_memory_set(), mlx_memory_set_priv(), mlx_memory_ummap_dma(), mlx_memory_ummap_dma_priv(), mlx_memory_zalloc(), mlx_memory_zalloc_priv(), mlx_pci_config(), mlx_pci_config_byte(), mlx_pci_config_dword(), mlx_pci_config_word(), mlx_pci_gw_check_capability_id(), mlx_pci_gw_free_ownership(), mlx_pci_gw_get_ownership(), mlx_pci_gw_init(), mlx_pci_gw_read(), mlx_pci_gw_search_capability(), mlx_pci_gw_set_space(), mlx_pci_gw_wait_for_flag_value(), mlx_pci_gw_write(), mlx_pci_init(), mlx_pci_init_priv(), mlx_pci_mem_read(), mlx_pci_mem_write(), mlx_pci_read(), mlx_pci_read_priv(), mlx_pci_teardown(), mlx_pci_teardown_priv(), mlx_pci_write(), mlx_pci_write_priv(), mlx_reg_access(), mlx_set_admin_mtu(), mlx_set_link_speed(), mlx_utils_init(), mlx_utils_teardown(), mlx_vmac_query_virt_mac(), mlx_vmac_set_virt_mac(), net80211_step_associate(), netfront_poll_rx(), netfront_poll_tx(), nodnic_cmd_read(), nodnic_cmd_write(), nodnic_device_clear_int(), nodnic_device_get_cap(), nodnic_device_get_fw_version(), nodnic_device_get_nodnic_data(), nodnic_device_init(), nodnic_device_start_nodnic(), nodnic_device_teardown(), nodnic_port_add_mac_filter(), nodnic_port_allocate_dbr_dma(), nodnic_port_allocate_eq(), nodnic_port_allocate_ring_db_dma(), nodnic_port_check_and_set_dma(), nodnic_port_close(), nodnic_port_cq_dbr_dma_init(), nodnic_port_create_cq(), nodnic_port_create_qp(), nodnic_port_destroy_cq(), nodnic_port_destroy_qp(), nodnic_port_disable_dma(), nodnic_port_enable_dma(), nodnic_port_free_eq(), nodnic_port_get_cq_size(), nodnic_port_get_qpn(), nodnic_port_get_state(), nodnic_port_get_type(), nodnic_port_init(), nodnic_port_query(), nodnic_port_read_port_management_change_event(), nodnic_port_read_reset_needed(), nodnic_port_remove_mac_filter(), nodnic_port_rx_pi_dma_alloc(), nodnic_port_set(), nodnic_port_set_network(), nodnic_port_set_promisc(), nodnic_port_set_promisc_multicast(), nodnic_port_set_send_uar_offset(), nodnic_port_thin_init(), nodnic_port_tx_dbr_dma_init(), nodnic_port_update_ring_doorbell(), nv_alloc_rx(), nvconfig_get_boot_default_conf(), nvconfig_get_boot_ext_default_conf(), nvconfig_get_ib_boot_default_conf(), nvconfig_get_ib_dhcp_default_conf(), nvconfig_get_iscsi_gen_default_conf(), nvconfig_get_iscsi_init_dhcp_default_conf(), nvconfig_get_nv_virt_caps_default_conf(), nvconfig_get_nv_virt_default_conf(), nvconfig_get_ocsd_ocbb_default_conf(), nvconfig_get_rom_banner_to_default_conf(), nvconfig_get_rom_cap_default_conf(), nvconfig_get_vpi_link_default_conf(), nvconfig_get_wol_default_conf(), nvconfig_nvdata_access(), nvconfig_nvdata_default_access(), nvconfig_nvdata_invalidate(), nvconfig_nvdata_read_default_value(), nvconfig_query_capability(), nvconfig_read_general_default_values(), nvconfig_read_port_default_values(), nvconfig_read_rom_ini_values(), nvconfig_set_fw_reset_level(), ocsp_parse_response_status(), pci_find_capability(), pcibios_read(), pcibios_write(), pcnet32_poll(), pcnet32_process_rx_packets(), pcnet32_process_tx_packets(), pcnet32_refill_rx_ring(), phantom_clp_cmd(), phantom_clp_wait(), pnic_command(), pnic_command_quiet(), pnic_probe(), prism2_transmit(), pxe_start_nbp(), qib7322_i2c_read_bit(), rndis_rx_status(), rtl8201_read_mode(), shomron_fill_eth_send_wqe(), shomron_tx_uar_send_db(), sis190_default_phy(), sis190_mii_probe(), sis190_poll(), sis190_process_rx(), sis190_process_tx(), sis900_read_mode(), sis900_reset(), skge_poll(), sky2_hw_intr(), sky2_mac_intr(), sky2_poll(), sky2_reset(), sky2_status_intr(), smc9000_transmit(), smc_phy_configure(), spi_wait(), sundance_poll(), sundance_transmit(), t509_poll(), t509_transmit(), t515_poll(), t515_transmit(), t595_poll(), t595_transmit(), TLan_FinishReset(), TLan_PhyFinishAutoNeg(), TLan_PhyStartLink(), tulip_reset(), tulip_transmit(), txnic_complete_sqe(), txnic_disable_sq(), txnic_poll_cq(), usbio_bulk_in_poll(), usbio_bulk_out_poll(), usbio_config(), usbio_control_poll(), vesafb_mode_info(), vesafb_mode_list(), vesafb_set_mode(), virtnet_open_modern(), vmxnet3_open(), vt6103_read_mode(), vxge_hw_device_hw_info_get(), vxge_hw_device_initialize(), vxge_hw_get_func_mode(), vxge_hw_ring_replenish(), vxge_hw_set_fw_api(), vxge_hw_vpath_close(), vxge_hw_vpath_intr_disable(), vxge_hw_vpath_intr_enable(), vxge_hw_vpath_mtu_set(), vxge_hw_vpath_open(), vxge_hw_vpath_poll_rx(), vxge_hw_vpath_poll_tx(), vxge_hw_vpath_recover_from_reset(), vxge_hw_vpath_reset(), vxge_hw_vpath_strip_fcs_check(), vxge_open(), vxge_open_vpaths(), vxge_probe(), vxge_reset_all_vpaths(), w89c840_poll(), wait_for_device_initialization(), xhci_endpoint_message(), and xm_check_link().

Extended status.

Definition at line 110 of file ena.h.

Referenced by bcom_phy_init(), com32_identify(), comboot_identify(), ipv6_rx(), and tls_new_server_hello().

Implementation.

Definition at line 130 of file ena.h.

Referenced by nii_set_rx_filters(), and nii_set_station_address().

Device version.

Definition at line 132 of file ena.h.

Supported features.

Definition at line 134 of file ena.h.

Referenced by virtnet_open_legacy(), virtnet_open_modern(), virtnet_probe_legacy(), and virtnet_probe_modern().

Reserved.

Definition at line 136 of file ena.h.

Physical address width.

Definition at line 138 of file ena.h.

Virtual address width.

Definition at line 140 of file ena.h.

Reserved.

Definition at line 144 of file ena.h.

static unsigned int direction

Direction.

Definition at line 171 of file ena.h.

Referenced by i2c_select(), rc80211_update(), usb_endpoint_descriptor(), and usbio_control_poll().

Policy.

Definition at line 175 of file ena.h.

Completion queue identifier.

Definition at line 177 of file ena.h.

Writeback address.

Definition at line 183 of file ena.h.

Doorbell register offset.

Definition at line 199 of file ena.h.

LLQ descriptor ring offset.

Definition at line 201 of file ena.h.

LLQ header offset.

Definition at line 203 of file ena.h.

MSI-X vector.

Definition at line 241 of file ena.h.

NUMA node register offset.

Definition at line 255 of file ena.h.

Length.

Additional sense length.

Transfer length.

Length (excluding this header)

Message size (including this header)

Length of useless VRF data.

Segment length.

Chunk data length.

Length of content range, or zero.

Vendor-specific length: variable.

Information element length.

ERP Information length: 1.

Channels length: 2.

Power Capability length: 2.

Power Constraint length: 1.

Challenge Text length: usually 128.

Number of IEs requested.

Country information length: varies.

DS parameter length: 1.

Number of rates.

SSID length.

Length of message.

Buffer length.

Section length.

Data buffer length.

Length of the content range. A zero indicates that everything up to the end of the last segment is included in the content range.

This seems to be identical in both purpose and value to the length found within the message header, and therefore serves no useful purpose.

This is a logical block count, in big-endian order.

This is the size of the data-in buffer, in bytes.

Definition at line 289 of file ena.h.

Referenced by a3c90x_transmit(), acm_control_receive(), acpi_find(), acpi_sx_zsdt(), add_menu_item(), alloc_iob_raw(), arbel_alloc_icm(), arbel_complete(), arbel_map_vpm(), arp_rx(), asn1_bit_string(), asn1_enter(), asn1_header(), asn1_shrink(), asn1_skip_if_exists(), asn1_start(), asprintf(), atacmd_data_buffer(), axge_in_complete(), axge_intr_complete(), axge_out_transmit(), b44_process_rx_packets(), base16_decode_okx(), base16_encode_okx(), base64_decode_okx(), base64_encode_okx(), blktrans_xferbuf_realloc(), bnx2_poll(), bzimage_check_initrds(), bzimage_load_initrds(), cachedhcp_init(), certstore_apply_settings(), cipher_decrypt_okx(), cipher_encrypt_okx(), cmdline_init(), cms_digest(), cms_signature(), concat_args(), copy_encap_settings(), cpuid_settings_fetch(), create_menu(), create_pinger(), dbg_hex_dump_da(), deflate_copy(), deflate_inflate(), der_probe(), dhcp_create_request(), dhcpv6_iaaddr(), dhcpv6_register(), digest_exec(), digest_frag_okx(), dm96xx_intr_complete(), dm96xx_out_transmit(), dns_compare(), dns_copy(), dns_copy_fail_okx(), dns_copy_okx(), dns_decode(), dns_decode_fail_okx(), dns_decode_okx(), dns_encode(), dns_encode_fail_okx(), dns_encode_okx(), dns_label(), dns_list_okx(), dns_name(), draw_editbox(), draw_menu_item(), drbg_instantiate(), drbg_reseed(), ecm_fetch_mac(), ecm_intr_complete(), ecollect_free(), edit_string(), efi_block_hook(), efi_block_rw(), efi_devpath_text(), efi_download_deliver_iob(), efi_file_read(), efi_ifr_form_set_op(), efi_ifr_op(), efi_ifr_string(), efi_image_cmdline(), efi_image_path(), efi_local_open_path(), efi_pxe_fake(), efi_pxe_mtftp(), efi_pxe_udp_read(), efi_snp_hii_append(), efi_snp_hii_fetch(), efi_snp_hii_store(), efi_snp_receive(), efi_ssnprintf(), efi_undi_receive(), efi_usb_bulk_transfer(), efi_usb_get_string_descriptor(), efi_usb_sync_interrupt_transfer(), efifb_glyphs(), efx_hunt_handle_event(), ehci_bus_open(), ehci_endpoint_message(), ehci_endpoint_stream(), ehci_enqueue(), ehci_ring_alloc(), ena_poll_rx(), ena_refill_rx(), ena_transmit(), eoib_duplicate(), exanic_poll_rx(), exanic_transmit(), falcon_handle_event(), fbcon_picture_init(), fc_els_rx(), fcoe_fip_parse(), fcpcmd_recv_rddata(), fcpcmd_send_wrdata(), fetch_ipv4_array_setting(), fetch_ipv6_array_setting(), fetch_numeric_setting(), fetch_setting_alloc(), fetch_uuid_setting(), fetchf_setting_copy(), find_smbios_entry(), flexboot_nodnic_complete(), format_uri_alloc(), free_iob(), ftp_control_deliver(), gdbstub_handler(), generic_memmove(), generic_settings_store(), generic_tcpip_continue_chksum(), get_eeprom_chksum(), get_eeprom_data(), golan_complete(), guestrpc_command(), guestrpc_reply_len(), hermon_complete(), hermon_map_icm(), hermon_map_vpm(), hmac_drbg_generate(), http_block_read(), http_format_headers(), http_format_ntlm_auth(), http_open_post_uri(), http_params(), http_parse_ntlm_auth(), http_rx_chunk_data(), http_rx_chunk_len(), http_rx_transfer_identity(), http_tx_request(), hv_wait_for_message(), hvm_ioremap(), ibft_install(), ibft_set_string_setting(), icmpv4_rx(), icmpv6_rx(), icplus_create_ring(), icplus_destroy_ring(), icplus_poll_rx(), image_asn1(), inet6_ntoa(), init_editstring(), initrd_squash_high(), initrd_startup(), initrd_swap(), inject_corruption_nonzero(), int13_get_extended_parameters(), int13_install(), int22(), intel_poll_rx(), intel_transmit(), intelxl_context_dump(), intelxl_create_admin(), intelxl_destroy_admin(), intelxl_poll_rx(), intelxl_transmit(), iob_concatenate(), iob_pad(), iob_populate(), iob_pull(), iob_push(), iob_put(), iob_reserve(), iob_unput(), ipv4_rx(), ipv6_check_options(), ipv6_create_routes(), ipv6_rx(), ipv6_sock_aton(), ipv6_tx(), isapnp_peek(), iscsi_fetch_settings(), iscsi_handle_chap_c_value(), iscsi_handle_chap_r_value(), iscsi_socket_deliver(), iscsi_start_data_out(), iscsi_start_login(), iscsi_tx_data_out(), iscsi_tx_login_request(), jme_fill_tx_desc(), largest_memblock(), linda_post_recv(), linda_post_send(), line_buffer(), linebuf_consume_okx(), mac_address_from_string_specs(), memcpy_test_speed(), monojob_clear(), mpopulate(), multiboot_add_cmdline(), myri10ge_net_transmit(), myri10ge_nvs_read(), myri10ge_nvs_write(), myson_create_ring(), myson_destroy_ring(), myson_poll_rx(), natsemi_create_ring(), natsemi_destroy_ring(), natsemi_poll_rx(), ncm_in_complete(), ncm_intr_complete(), ncm_out_transmit(), ndp_register_settings(), ndp_rx_neighbour(), ndp_rx_router_advertisement(), ne_poll(), net80211_accum_frags(), netfront_poll_rx(), netfront_read_mac(), netvsc_recv_completion(), nfs_deliver(), nfs_uri_symlink(), nii_map(), ns8390_poll(), nslookup_resolv_done(), ntlm_authenticate(), ntlm_authenticate_okx(), ntlm_data_okx(), numeric_setting_value(), nv_process_rx_packets(), nvo_init(), nvo_realloc(), nvs_verify(), nvs_vpd_nvo_init(), ocsp_response(), ocsp_uri_string(), pci_vpd_dump(), pci_vpd_read(), pci_vpd_resize(), pci_vpd_write(), pciscan_exec(), pcnet32_process_rx_packets(), peerblk_decrypt_read(), peerblk_decrypt_write(), peerblk_deliver(), peerblk_parse_block(), peerblk_parse_header(), peerblk_parse_iv(), peerblk_parse_useless(), peerblk_raw_rx(), peerblk_retrieval_rx(), peerdisc_socket_tx(), peerdist_discovery_request(), peerdist_info(), peerdist_info_v2(), peerdist_info_v2_segment(), peermux_info_close(), pem_asn1(), pem_next(), phantom_clp_store(), pinger_deliver(), pnm_ascii(), pnm_data(), privkey_apply_settings(), process_script(), pxe_menu_draw_item(), pxe_menu_prompt_and_select(), pxe_tftp_xfer_deliver(), pxenv_file_cmdline(), pxenv_file_read(), pxenv_get_cached_info(), pxenv_udp_read(), pxenv_udp_write(), pxenv_undi_isr(), pxenv_undi_transmit(), qib7322_post_recv(), qib7322_post_send(), rbg_startup(), read_user(), realtek_create_buffer(), realtek_destroy_buffer(), realtek_legacy_poll_rx(), realtek_poll_rx(), rhine_create_ring(), rhine_destroy_ring(), rhine_poll_rx(), rndis_rx_data(), rndis_rx_initialise(), rndis_rx_query_oid(), rndis_rx_set_oid(), rndis_rx_status(), rndis_tx_complete_err(), rndis_tx_data(), rootcert_init(), rsdp_find_rsdt_range(), rtl818x_tx(), sandev_command_rw(), scsidev_command(), set_dhcp_option(), show_exec(), shuffle(), sis190_transmit(), skge_rx_done(), skge_xmit_frame(), sky2_xmit_frame(), slam_mc_socket_deliver(), slam_pull_value(), slam_put_value(), smsc75xx_out_transmit(), smsc95xx_out_transmit(), smsc95xx_vm3_fetch_mac(), snpnet_mac_text(), snpnet_poll_rx(), snprintf_okx(), srpdev_deliver(), ssnprintf(), start_dhcpv6(), string_copy(), strndup(), strnlen(), strstr(), sync_console(), t509_transmit(), t515_transmit(), t595_transmit(), tcp_process_rx_queue(), tcp_process_tx_queue(), tcp_rx(), tcp_rx_ack(), tcp_rx_data(), tcp_rx_enqueue(), tcp_sack(), tcp_xmit_sack(), tcp_xmit_win(), tftp_rx(), tftp_rx_oack(), tftp_send_rrq(), tg3_rx_complete(), tg3_transmit(), tkip_michael(), tls_assemble_block(), tls_assemble_stream(), tls_hmac_update_va(), tls_new_ciphertext(), tls_new_handshake(), tls_new_record(), tls_new_server_hello(), tls_parse_chain(), tls_send_certificate_verify(), tls_send_client_hello(), tls_send_client_key_exchange(), trivial_change_key(), trivial_init(), txnic_complete_rqe(), txnic_send(), udp_tx(), uhci_dequeue(), uhci_describe(), uhci_endpoint_message(), uhci_endpoint_poll(), uhci_endpoint_stream(), uhci_enqueue(), undinet_poll(), undinet_transmit(), uri_copy_fields(), uri_decode_inplace(), uri_dup(), uri_encode(), uri_format_okx(), uri_pxe_okx(), usb_config_descriptor(), usb_hub_get_descriptor(), usb_message(), usb_prefill(), usb_refill(), usb_refill_init(), usbio_bulk_in_poll(), usbio_bulk_out_poll(), usbio_config(), usbio_control_poll(), usbio_interrupt_callback(), usbio_interrupt_poll(), usbio_path(), usbkbd_consume(), validator_append(), validator_start_download(), vasprintf(), vcprintf(), velocity_poll_rx(), vesafb_mode_list(), virtnet_process_rx_packets(), virtnet_refill_rx_virtqueue(), vmbus_close(), vmbus_consume(), vmbus_open(), vmbus_poll(), vmbus_produce(), vmbus_send(), vmbus_xfer_page_iobufs(), vmsg(), vmxnet3_poll_rx(), vp_get(), vpm_get(), vsnprintf(), vxge_hw_vpath_poll_rx(), wcslen(), wpa_psk_start(), x509_certificate(), x509_check_dnsname(), x509_name(), x509_parse_key_usage(), xcm_deliver(), xenbus_probe(), xenbus_probe_type(), xenstore_dump(), xfer_check_order(), xfer_vprintf(), xfer_window(), xferbuf_deliver(), xferbuf_ensure_size(), xferbuf_write(), xhci_context(), xhci_dcbaa_alloc(), xhci_dcbaa_free(), xhci_device_close(), xhci_device_open(), xhci_endpoint_message(), xhci_endpoint_stream(), xhci_event_alloc(), xhci_event_free(), xhci_scratchpad_alloc(), and xor8_buf().

Feature.

Definition at line 297 of file ena.h.

Referenced by ena_get_device_attributes(), hub_clear_changes(), and ipxe().

Scope.

Definition at line 322 of file ena.h.

Referenced by ipv6_route().

Transmit byte count.

Definition at line 343 of file ena.h.

Transmit packet count.

Definition at line 345 of file ena.h.

Receive byte count.

Definition at line 347 of file ena.h.

Receive packet count.

Definition at line 349 of file ena.h.

Receive drop count.

Definition at line 351 of file ena.h.