iPXE
Data Structures | Macros | 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...
 
struct  ena_host_attributes
 Host attributes. More...
 
struct  ena_host_info
 Host information. 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_set_feature_req
 Set feature request. 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_cq
 Completion queue. More...
 
struct  ena_qp
 Queue pair. More...
 
struct  ena_nic
 An ENA network card. More...
 

Macros

#define ENA_BAR_SIZE   16384
 BAR size. More...
 
#define ENA_ALIGN   4096
 Queue alignment. More...
 
#define ENA_AQ_COUNT   2
 Number of admin queue entries. More...
 
#define ENA_ACQ_COUNT   2
 Number of admin completion queue entries. More...
 
#define ENA_TX_COUNT   16
 Number of transmit queue entries. More...
 
#define ENA_RX_COUNT   128
 Number of receive queue entries. More...
 
#define ENA_RX_FILL   16
 Receive queue maximum fill level. More...
 
#define ENA_BASE_LO   0x0
 Base address low register offset. More...
 
#define ENA_BASE_HI   0x4
 Base address high register offset. More...
 
#define ENA_CAPS(count, size)   ( ( (size) << 16 ) | ( (count) << 0 ) )
 Capability register value. More...
 
#define ENA_AQ_BASE   0x10
 Admin queue base address register. More...
 
#define ENA_AQ_CAPS   0x18
 Admin queue capabilities register. More...
 
#define ENA_ACQ_BASE   0x20
 Admin completion queue base address register. More...
 
#define ENA_ACQ_CAPS   0x28
 Admin completion queue capabilities register. More...
 
#define ENA_AQ_DB   0x2c
 Admin queue doorbell register. More...
 
#define ENA_ADMIN_MAX_WAIT_MS   5000
 Maximum time to wait for admin requests. More...
 
#define ENA_CTRL   0x54
 Device control register. More...
 
#define ENA_CTRL_RESET   0x00000001UL
 Reset. More...
 
#define ENA_RESET_MAX_WAIT_MS   1000
 Maximum time to wait for reset. More...
 
#define ENA_STAT   0x58
 Device status register. More...
 
#define ENA_STAT_RESET   0x00000008UL
 Reset in progress. More...
 
#define ENA_AQ_PHASE   0x01
 Admin queue ownership phase flag. More...
 
#define ENA_ACQ_PHASE   0x01
 Admin completion queue ownership phase flag. More...
 
#define ENA_DEVICE_ATTRIBUTES   1
 Device attributes. More...
 
#define ENA_HOST_ATTRIBUTES   28
 Host attributes. More...
 
#define ENA_HOST_INFO_TYPE_LINUX   1
 Linux operating system type. More...
 
#define ENA_HOST_INFO_VERSION_WTF   0x00000002UL
 Driver version. More...
 
#define ENA_HOST_INFO_SPEC_2_0   0x0200
 ENA specification version. More...
 
#define ENA_CREATE_SQ   1
 Create submission queue. More...
 
#define ENA_DESTROY_SQ   2
 Destroy submission queue. More...
 
#define ENA_CREATE_CQ   3
 Create completion queue. More...
 
#define ENA_MSIX_NONE   0xffffffffUL
 Empty MSI-X vector. More...
 
#define ENA_DESTROY_CQ   4
 Destroy completion queue. More...
 
#define ENA_GET_FEATURE   8
 Get feature. More...
 
#define ENA_SET_FEATURE   9
 Set feature. More...
 
#define ENA_GET_STATS   11
 Get statistics. More...
 
#define ENA_STATS_TYPE_BASIC   0
 Basic statistics. More...
 
#define ENA_STATS_SCOPE_ETH   1
 Ethernet statistics. More...
 
#define ENA_DEVICE_MINE   0xffff
 My device. More...
 
#define ENA_SQE_PHASE   0x01
 Submission queue ownership phase flag. More...
 
#define ENA_SQE_FIRST   0x04
 This is the first descriptor. More...
 
#define ENA_SQE_LAST   0x08
 This is the last descriptor. More...
 
#define ENA_SQE_CPL   0x10
 Request completion. More...
 
#define ENA_TX_CQE_ID(id)   ( (id) >> 2 )
 Transmit completion request identifier. More...
 
#define ENA_CQE_PHASE   0x01
 Completion queue ownership phase flag. More...
 

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. More...
 

Variables

uint8_t id
 Request identifier. More...
 
uint8_t reserved
 Reserved. More...
 
uint8_t opcode
 Opcode. More...
 
uint8_t flags
 Flags. More...
 
uint8_t status
 Status. More...
 
uint16_t ext
 Extended status. More...
 
uint16_t cons
 Consumer index. More...
 
uint32_t implementation
 Implementation. More...
 
uint32_t version
 Device version. More...
 
uint32_t features
 Supported features. More...
 
uint8_t reserved_a [4]
 Reserved. More...
 
uint32_t physical
 Physical address width. More...
 
uint32_t virtual
 Virtual address width. More...
 
uint8_t mac [ETH_ALEN]
 MAC address. More...
 
uint8_t reserved_b [2]
 Reserved. More...
 
uint32_t mtu
 Maximum MTU. More...
 
uint64_t info
 Host info base address. More...
 
uint64_t debug
 Debug area base address. More...
 
uint32_t debug_len
 Debug area size. More...
 
uint32_t type
 Operating system type. More...
 
char dist_str [128]
 Operating system distribution (string) More...
 
uint32_t dist
 Operating system distribution (numeric) More...
 
char kernel_str [32]
 Kernel version (string) More...
 
uint32_t kernel
 Kernel version (numeric) More...
 
uint64_t linux_features
 Linux network device features. More...
 
uint16_t spec
 ENA specification version. More...
 
uint16_t busdevfn
 PCI bus:dev.fn address. More...
 
uint16_t cpus
 Number of CPUs. More...
 
union ena_feature __attribute__
 
struct ena_aq_header header
 Header. More...
 
uint8_t direction = direction
 Direction. More...
 
uint16_t policy
 Policy. More...
 
uint16_t cq_id
 Completion queue identifier. More...
 
uint16_t count = count
 Number of entries. More...
 
uint64_t address
 Base address. More...
 
uint64_t writeback
 Writeback address. More...
 
uint32_t doorbell
 Doorbell register offset. More...
 
uint32_t llq_desc
 LLQ descriptor ring offset. More...
 
uint32_t llq_data
 LLQ header offset. More...
 
uint8_t intr
 Interrupts enabled. More...
 
uint8_t size
 Entry size (in 32-bit words) More...
 
uint32_t vector
 MSI-X vector. More...
 
uint32_t node
 NUMA node register offset. More...
 
uint32_t len
 Length. More...
 
union ena_feature feature
 Feature. More...
 
uint8_t scope
 Scope. More...
 
uint16_t queue
 Queue ID. More...
 
uint16_t device
 Device ID. More...
 
uint64_t tx_bytes
 Transmit byte count. More...
 
uint64_t tx_packets
 Transmit packet count. More...
 
uint64_t rx_bytes
 Receive byte count. More...
 
uint64_t rx_packets
 Receive packet count. More...
 
uint64_t rx_drops
 Receive drop count. More...
 
static unsigned int unsigned int unsigned int max = max
 
static unsigned int unsigned int unsigned int size_t uint8_tids
 
cq requested = count
 

Detailed Description

Amazon ENA network driver.

Definition in file ena.h.

Macro Definition Documentation

◆ ENA_BAR_SIZE

#define ENA_BAR_SIZE   16384

BAR size.

Definition at line 16 of file ena.h.

◆ ENA_ALIGN

#define ENA_ALIGN   4096

Queue alignment.

Definition at line 19 of file ena.h.

◆ ENA_AQ_COUNT

#define ENA_AQ_COUNT   2

Number of admin queue entries.

Definition at line 22 of file ena.h.

◆ ENA_ACQ_COUNT

#define ENA_ACQ_COUNT   2

Number of admin completion queue entries.

Definition at line 25 of file ena.h.

◆ ENA_TX_COUNT

#define ENA_TX_COUNT   16

Number of transmit queue entries.

Definition at line 28 of file ena.h.

◆ ENA_RX_COUNT

#define ENA_RX_COUNT   128

Number of receive queue entries.

Definition at line 31 of file ena.h.

◆ ENA_RX_FILL

#define ENA_RX_FILL   16

Receive queue maximum fill level.

Definition at line 34 of file ena.h.

◆ ENA_BASE_LO

#define ENA_BASE_LO   0x0

Base address low register offset.

Definition at line 37 of file ena.h.

◆ ENA_BASE_HI

#define ENA_BASE_HI   0x4

Base address high register offset.

Definition at line 40 of file ena.h.

◆ ENA_CAPS

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

Capability register value.

Definition at line 43 of file ena.h.

◆ ENA_AQ_BASE

#define ENA_AQ_BASE   0x10

Admin queue base address register.

Definition at line 46 of file ena.h.

◆ ENA_AQ_CAPS

#define ENA_AQ_CAPS   0x18

Admin queue capabilities register.

Definition at line 49 of file ena.h.

◆ ENA_ACQ_BASE

#define ENA_ACQ_BASE   0x20

Admin completion queue base address register.

Definition at line 52 of file ena.h.

◆ ENA_ACQ_CAPS

#define ENA_ACQ_CAPS   0x28

Admin completion queue capabilities register.

Definition at line 55 of file ena.h.

◆ ENA_AQ_DB

#define ENA_AQ_DB   0x2c

Admin queue doorbell register.

Definition at line 58 of file ena.h.

◆ ENA_ADMIN_MAX_WAIT_MS

#define ENA_ADMIN_MAX_WAIT_MS   5000

Maximum time to wait for admin requests.

Definition at line 61 of file ena.h.

◆ ENA_CTRL

#define ENA_CTRL   0x54

Device control register.

Definition at line 64 of file ena.h.

◆ ENA_CTRL_RESET

#define ENA_CTRL_RESET   0x00000001UL

Reset.

Definition at line 65 of file ena.h.

◆ ENA_RESET_MAX_WAIT_MS

#define ENA_RESET_MAX_WAIT_MS   1000

Maximum time to wait for reset.

Definition at line 68 of file ena.h.

◆ ENA_STAT

#define ENA_STAT   0x58

Device status register.

Definition at line 71 of file ena.h.

◆ ENA_STAT_RESET

#define ENA_STAT_RESET   0x00000008UL

Reset in progress.

Definition at line 72 of file ena.h.

◆ ENA_AQ_PHASE

#define ENA_AQ_PHASE   0x01

Admin queue ownership phase flag.

Definition at line 87 of file ena.h.

◆ ENA_ACQ_PHASE

#define ENA_ACQ_PHASE   0x01

Admin completion queue ownership phase flag.

Definition at line 106 of file ena.h.

◆ ENA_DEVICE_ATTRIBUTES

#define ENA_DEVICE_ATTRIBUTES   1

Device attributes.

Definition at line 109 of file ena.h.

◆ ENA_HOST_ATTRIBUTES

#define ENA_HOST_ATTRIBUTES   28

Host attributes.

Definition at line 134 of file ena.h.

◆ ENA_HOST_INFO_TYPE_LINUX

#define ENA_HOST_INFO_TYPE_LINUX   1

Linux operating system type.

There is a defined "iPXE" operating system type (with value 5). However, some very broken versions of the ENA firmware will refuse to allow a completion queue to be created if the "iPXE" type is used.

Definition at line 181 of file ena.h.

◆ ENA_HOST_INFO_VERSION_WTF

#define ENA_HOST_INFO_VERSION_WTF   0x00000002UL

Driver version.

The driver version field is nominally used to report a version number outside of the VM for consumption by humans (and potentially by automated monitoring tools that could e.g. check for outdated versions with known security flaws).

However, at some point in the development of the ENA firmware, some unknown person at AWS thought it would be sensible to apply a machine interpretation to this field and adjust the behaviour of the firmware based on its value, thereby creating a maintenance and debugging nightmare for all existing and future drivers.

Hint to engineers: if you ever find yourself writing code of the form "if (version == SOME_MAGIC_NUMBER)" then something has gone very, very wrong. This always indicates that something is broken, either in your own code or in the code with which you are forced to interact.

Definition at line 202 of file ena.h.

◆ ENA_HOST_INFO_SPEC_2_0

#define ENA_HOST_INFO_SPEC_2_0   0x0200

ENA specification version.

Definition at line 205 of file ena.h.

◆ ENA_CREATE_SQ

#define ENA_CREATE_SQ   1

Create submission queue.

Definition at line 224 of file ena.h.

◆ ENA_DESTROY_SQ

#define ENA_DESTROY_SQ   2

Destroy submission queue.

Definition at line 273 of file ena.h.

◆ ENA_CREATE_CQ

#define ENA_CREATE_CQ   3

Create completion queue.

Definition at line 294 of file ena.h.

◆ ENA_MSIX_NONE

#define ENA_MSIX_NONE   0xffffffffUL

Empty MSI-X vector.

Some versions of the ENA firmware will complain if the completion queue's MSI-X vector field is left empty, even though the queue configuration specifies that interrupts are not used.

Definition at line 318 of file ena.h.

◆ ENA_DESTROY_CQ

#define ENA_DESTROY_CQ   4

Destroy completion queue.

Definition at line 337 of file ena.h.

◆ ENA_GET_FEATURE

#define ENA_GET_FEATURE   8

Get feature.

Definition at line 356 of file ena.h.

◆ ENA_SET_FEATURE

#define ENA_SET_FEATURE   9

Set feature.

Definition at line 383 of file ena.h.

◆ ENA_GET_STATS

#define ENA_GET_STATS   11

Get statistics.

Definition at line 404 of file ena.h.

◆ ENA_STATS_TYPE_BASIC

#define ENA_STATS_TYPE_BASIC   0

Basic statistics.

Definition at line 425 of file ena.h.

◆ ENA_STATS_SCOPE_ETH

#define ENA_STATS_SCOPE_ETH   1

Ethernet statistics.

Definition at line 428 of file ena.h.

◆ ENA_DEVICE_MINE

#define ENA_DEVICE_MINE   0xffff

My device.

Definition at line 431 of file ena.h.

◆ ENA_SQE_PHASE

#define ENA_SQE_PHASE   0x01

Submission queue ownership phase flag.

Definition at line 542 of file ena.h.

◆ ENA_SQE_FIRST

#define ENA_SQE_FIRST   0x04

This is the first descriptor.

Definition at line 545 of file ena.h.

◆ ENA_SQE_LAST

#define ENA_SQE_LAST   0x08

This is the last descriptor.

Definition at line 548 of file ena.h.

◆ ENA_SQE_CPL

#define ENA_SQE_CPL   0x10

Request completion.

Definition at line 551 of file ena.h.

◆ ENA_TX_CQE_ID

#define ENA_TX_CQE_ID (   id)    ( (id) >> 2 )

Transmit completion request identifier.

Definition at line 568 of file ena.h.

◆ ENA_CQE_PHASE

#define ENA_CQE_PHASE   0x01

Completion queue ownership phase flag.

Definition at line 585 of file ena.h.

Enumeration Type Documentation

◆ ena_sq_direction

Submission queue direction.

Enumerator
ENA_SQ_TX 

Transmit.

ENA_SQ_RX 

Receive.

Definition at line 216 of file ena.h.

216  {
217  /** Transmit */
218  ENA_SQ_TX = 0x20,
219  /** Receive */
220  ENA_SQ_RX = 0x40,
221 };
Transmit.
Definition: ena.h:218
Receive.
Definition: ena.h:220

◆ ena_sq_policy

Submission queue policy.

Enumerator
ENA_SQ_HOST_MEMORY 

Use host memory.

ENA_SQ_CONTIGUOUS 

Memory is contiguous.

Definition at line 249 of file ena.h.

249  {
250  /** Use host memory */
251  ENA_SQ_HOST_MEMORY = 0x0001,
252  /** Memory is contiguous */
253  ENA_SQ_CONTIGUOUS = 0x0100,
254 };
Use host memory.
Definition: ena.h:251
Memory is contiguous.
Definition: ena.h:253

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL  )

◆ __attribute__() [1/2]

struct ena_aq_header __attribute__ ( (packed)  )

◆ __attribute__() [2/2]

static __attribute__ ( (always_inline)  )
inlinestatic

Initialise submission queue.

Initialise completion queue.

Parameters
sqSubmission queue
directionDirection
countNumber of entries
maxMaximum fill level
sizeSize of each entry
idsBuffer IDs
cqCompletion queue
countNumber of entries
sizeSize of each entry

Variable Documentation

◆ id

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 12 of file ena.h.

Referenced by bofm_find_driver(), eepro_probe1(), efi_ib_srp_path(), eisa_probe(), ena_poll_rx(), ena_poll_tx(), ena_refill_rx(), ena_transmit(), fc_id_aton(), fc_id_ntoa(), 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_create(), xcm_list(), xhci_device_close(), and xhci_device_open().

◆ reserved

UINT8_t reserved

Reserved.

Must be zero.

Padding.

Definition at line 14 of file ena.h.

◆ opcode

uint16_t opcode

◆ flags

uint32_t flags

Flags.

Negotiation flags.

Event flags.

Definition at line 18 of file ena.h.

Referenced by ar9002_hw_set11n_ratescenario(), ar9002_hw_set11n_txdesc(), ar9003_hw_set11n_ratescenario(), ar9003_hw_set11n_txdesc(), ath5k_channel_ok(), ath5k_hw_nic_wakeup(), ath5k_hw_setup_2word_tx_desc(), ath5k_hw_setup_4word_tx_desc(), ath5k_hw_setup_rx_desc(), ath5k_txbuf_setup(), ath9k_hw_set11n_ratescenario(), ath9k_hw_set11n_txdesc(), ath9k_hw_setuprxdesc(), ath_buf_set_rate(), bios_iskey(), bnxt_hwrm_cfa_l2_filter_alloc(), bnxt_hwrm_port_phy_cfg(), dma_op_map(), dummy_san_hook(), efi_block_hook(), efi_ifr_numeric_op(), efi_ifr_string_op(), efi_pxe_udp_read(), efi_pxe_udp_write(), efipci_dma_map(), ehci_endpoint_stream(), eth_pull(), extmemsize_e801(), fcoe_fip_rx_advertisement(), format_decimal(), format_hex(), hunt_check_link(), init_editbox(), int13_hook(), intelxl_admin_promisc(), iob_map(), ipair_create(), ipv4_rx(), ipv6_rx(), meme820(), net80211_ll_pull(), net_poll(), net_rx(), nii_initialise(), nii_initialise_cable(), nii_initialise_flags(), nii_set_rx_filters(), nv_process_rx_packets(), pxenv_undi_isr(), register_sandev(), rtl818x_handle_rx(), rtl818x_handle_tx(), sanboot_core_exec(), setup_tx_flags(), shutdown(), tcp_dump_flags(), tcp_process_rx_queue(), tcp_rx(), tcp_rx_enqueue(), tcp_xmit_sack(), tcpip_bind(), tftp_core_open(), tg3_set_txd(), TLan_FinishReset(), TLan_PhyDetect(), TLan_PhyFinishAutoNeg(), TLan_PhyPowerDown(), TLan_ResetAdapter(), undinet_transmit(), uriboot(), usbio_bulk_out_poll(), usbio_control_poll(), usbio_endpoint_enqueue(), vcprintf(), and vlan_transmit().

◆ status

return status

Status.

Status code.

Definition at line 16 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_pio_mem_write64(), __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(), bad_phy_status(), bcom_check_link(), bnx2_poll(), check_nodnic_interface_supported(), cmd_status_str(), cs89x0_poll(), davicom_poll(), davicom_reset(), davicom_transmit(), dhcpv6_status_code(), disable_nodnic_inteface(), eepro_transmit(), efi_usb_async_complete(), efi_usb_bulk_transfer(), efi_usb_control_transfer(), efi_usb_isochronous_transfer(), efi_usb_sync_interrupt_transfer(), 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(), hub_enable(), hub_speed(), 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(), iphone_check_link(), 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_set_state(), 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(), phy_length(), 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(), sis190_rx_pkt_err(), sis190_tx_pkt_err(), sis900_read_mode(), sis900_reset(), skge_poll(), sky2_err_intr(), sky2_hw_error(), sky2_hw_intr(), sky2_mac_intr(), sky2_poll(), sky2_receive(), 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(), usb_hub_get_port_status(), usbio_bulk_in_poll(), usbio_bulk_out_poll(), usbio_config(), usbio_control_poll(), usbio_interrupt_callback(), vesafb_mode_info(), vesafb_mode_list(), vesafb_rc(), vesafb_set_mode(), virtnet_open_modern(), vmxnet3_open(), vp_set_status(), vpm_add_status(), 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().

◆ ext

uint16_t ext

Extended status.

Definition at line 20 of file ena.h.

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

◆ cons

uint16_t cons

◆ implementation

uint32_t implementation

Implementation.

Definition at line 12 of file ena.h.

Referenced by nii_set_rx_filters(), and nii_set_station_address().

◆ version

uint32_t version

Device version.

Driver version.

Definition at line 14 of file ena.h.

◆ features

uint32_t features

◆ reserved_a

uint8_t reserved_a

Reserved.

Definition at line 18 of file ena.h.

◆ physical

uint32_t physical

Physical address width.

Definition at line 20 of file ena.h.

◆ virtual

uint32_t virtual

Virtual address width.

Definition at line 22 of file ena.h.

◆ mac

◆ reserved_b

uint8_t reserved_b

Reserved.

Definition at line 26 of file ena.h.

◆ mtu

uint32_t mtu

◆ info

uint64_t info

Host info base address.

Definition at line 12 of file ena.h.

◆ debug

uint64_t debug

Debug area base address.

Definition at line 14 of file ena.h.

Referenced by efi_pecoff_debug_name().

◆ debug_len

uint32_t debug_len

Debug area size.

Definition at line 16 of file ena.h.

◆ type

uint8_t type

Operating system type.

Type string.

Type.

Definition at line 12 of file ena.h.

Referenced by amd8111e_transmit(), aoecmd_create(), ar9002_hw_set11n_txdesc(), ar9003_hw_set11n_txdesc(), arbel_create_recv_wq(), asn1_enter(), asn1_generalized_time(), asn1_header(), asn1_prepend(), asn1_shrink(), asn1_skip(), asn1_skip_if_exists(), asn1_start(), asn1_type(), asn1_wrap(), atadev_command(), atadev_edd_describe(), ath5k_create_power_curve(), ath5k_hw_gainf_calibrate(), ath5k_hw_reset_key(), ath5k_hw_setup_2word_tx_desc(), ath5k_hw_setup_4word_tx_desc(), ath5k_hw_txpower(), ath5k_setup_channel_powertable(), ath9k_hw_gpio_cfg_output_mux(), ath9k_hw_set11n_txdesc(), ath9k_hw_set_reset(), ath9k_hw_set_reset_reg(), ath9k_hw_setuptxqueue(), bnx2_transmit(), bnxt_hwrm_ring_alloc(), denumerate_int_setting(), dhcpv6_type_name(), dmfe_transmit(), dns_type(), downloader_vredirect(), edd_describe(), eepro_transmit(), efi_allocate_pages_wrapper(), efi_allocate_type(), efi_create_event_ex_wrapper(), efi_create_event_wrapper(), efi_file_get_info(), efi_file_set_info(), efi_handle_name(), efi_image_exec(), efi_memory_type(), efi_pxe_discover(), efi_set_timer_wrapper(), efi_timer_delay(), epic100_transmit(), eth_slow_lacp_tlv_name(), eth_slow_marker_tlv_name(), eth_transmit(), fc_els_prli(), fc_els_prli_descriptor(), fc_ulp_create(), fc_ulp_get_port_id_type(), fc_ulp_get_type(), fc_ulp_get_wwn_type(), fc_xchg_create(), fc_xchg_originate(), fc_xchg_respond(), fcpdev_edd_describe(), find_setting_type(), find_smbios_structure(), flexboot_nodnic_set_ports_type(), format_int_setting(), format_uint_setting(), format_uuid_setting(), gdbmach_set_breakpoint(), golan_eqe_type_str(), golan_qp_type_to_st(), guestinfo_fetch(), guestinfo_fetch_type(), hv_post_message(), ib_create_mi(), ib_create_qp(), ice_admin_switch(), icmpv4_rx(), icmpv6_handler(), igbvf_promisc_set_vf(), image_probe(), int13con_find(), intf_get_dest_op_no_passthru_untyped(), intf_get_dest_op_untyped(), intf_poke(), ipair_key(), iscsi_handle_string(), iscsi_vredirect(), mlx_get_max_speed(), mlx_set_link_speed(), ne_transmit(), net80211_probe_step(), net80211_rx(), nodnic_port_create_qp(), nodnic_port_get_type(), ns8390_transmit(), numerate_int_setting(), ocsp_parse_responder_id(), oncrpc_compute_size(), parse_int_setting(), png_canonical_type(), png_chunk(), png_type_name(), pnm_data(), pnm_type(), rndis_rx(), rndis_rx_message(), rndis_tx_message(), rndis_tx_oid(), scsidev_command(), setting_denumerate(), setting_format(), setting_numerate(), setting_parse(), setting_type_int_index(), setting_type_int_is_signed(), setting_type_int_width(), srpdev_deliver(), t509_poll(), t515_poll(), t595_poll(), tls_new_handshake(), tls_new_record(), tls_new_server_hello(), tls_send_client_hello(), tls_send_plaintext(), txnic_bgx_detect(), txnic_bgx_init(), txnic_bgx_probe(), usb_clear_feature(), usb_endpoint_clear_halt(), usb_endpoint_described(), usb_endpoint_descriptor(), usb_get_descriptor(), usb_get_status(), usb_set_feature(), usbhid_set_report(), virtio_pci_find_capability(), vmbus_find_driver(), vmbus_post_empty_message(), vmbus_probe_channels(), vmbus_reset_channels(), vmbus_wait_for_message(), x509_check_alt_name(), xenbus_find_driver(), xenbus_probe(), xenbus_probe_device(), xenbus_probe_type(), xenstore_message(), xenstore_request(), xfer_open(), xfer_redirect(), xfer_vopen(), xfer_vredirect(), xfer_vreopen(), xhci_context(), xhci_device_open(), xhci_enable_slot(), xhci_endpoint_open(), xhci_event_poll(), xhci_port_protocol(), xhci_port_slot_type(), xsmp_session_type(), xsmp_tx_session(), xsmp_tx_xve_notify(), and xsmp_xve_type().

◆ dist_str

char dist_str[128]

Operating system distribution (string)

Definition at line 14 of file ena.h.

◆ dist

uint32_t dist

Operating system distribution (numeric)

Definition at line 16 of file ena.h.

◆ kernel_str

char kernel_str[32]

Kernel version (string)

Definition at line 18 of file ena.h.

◆ kernel

uint32_t kernel

Kernel version (numeric)

Definition at line 20 of file ena.h.

Referenced by comboot_fetch_kernel().

◆ linux_features

uint64_t linux_features

Linux network device features.

Definition at line 24 of file ena.h.

◆ spec

uint16_t spec

ENA specification version.

Definition at line 26 of file ena.h.

Referenced by sky2_phy_init().

◆ busdevfn

uint16_t busdevfn

◆ cpus

uint16_t cpus

Number of CPUs.

Definition at line 30 of file ena.h.

◆ __attribute__

◆ header

struct smbios_header header

◆ direction

sq direction = direction

◆ policy

uint16_t policy

Policy.

Definition at line 18 of file ena.h.

◆ cq_id

uint16_t cq_id

Completion queue identifier.

Definition at line 20 of file ena.h.

◆ address

uint64_t address

Base address.

Address.

Definition at line 24 of file ena.h.

Referenced by a3c90x_internal_ReadEeprom(), add_ipv4_miniroute(), ar9300_eeprom_read_byte(), ar9300_eeprom_read_word(), ar9300_read_eeprom(), ar9300_read_otp(), b44_address_ok(), bzimage_load_initrd(), comboot_resolv(), dhcpv6_iaaddr(), efi_pxe_ip(), ehci_device_address(), ena_refill_rx(), ena_transmit(), falcon_spi_rw(), i2c_select(), ice_admin_add_txq(), ice_context_rx(), icplus_read_eeprom(), icplus_refill_rx(), icplus_transmit(), int13_boot(), int13_get_extended_parameters(), int13_load_eltorito(), int13_load_mbr(), intel_create_ring(), intel_read_eeprom(), intelxl_admin_command(), intelxl_admin_event_init(), intelxl_context_rx(), intelxl_context_tx(), intelxl_create_ring(), intelxl_enable_admin(), ipv4_arp_check(), ipv4_gratuitous_arp(), ipv4_settings(), ipv6_add_miniroute(), ipv6_match_len(), ipv6_miniroute(), ipv6_table_okx(), isapnp_read_byte(), isapnp_read_word(), isapnp_write_address(), isapnp_write_byte(), linda_ib_epb_ram_xfer(), mii_find(), mii_init(), mlx_pci_gw_read(), mlx_pci_gw_write(), myson_create_ring(), myson_refill_rx(), myson_transmit(), natsemi_create_ring(), natsemi_refill_rx(), natsemi_transmit(), nodnic_cmd_read(), nodnic_cmd_write(), nodnic_port_add_mac_filter(), nodnic_port_allocate_dbr_dma(), nodnic_port_allocate_eq(), nodnic_port_create_cq(), nodnic_port_create_qp(), nvo_init(), nvs_frag_len(), nvs_read(), nvs_verify(), nvs_vpd_nvo_init(), nvs_vpd_read(), nvs_vpd_resize(), nvs_vpd_write(), nvs_write(), pci_msix_dump(), pci_msix_map(), pci_vpd_dump(), pci_vpd_find(), pci_vpd_find_tag(), pci_vpd_read(), pci_vpd_read_dword(), pci_vpd_resize(), pci_vpd_write(), pci_vpd_write_dword(), peerdisc_socket_tx(), realtek_create_ring(), rhine_create_ring(), rhine_refill_rx(), rhine_transmit(), rtc_read_time(), rtc_readb(), rtc_readb_bcd(), slam_parse_multicast_address(), smc9000_probe(), smscusb_eeprom_read(), smscusb_eeprom_read_byte(), smscusb_otp_fetch_mac(), smscusb_otp_read(), smscusb_otp_read_byte(), smscusb_raw_readl(), smscusb_raw_writel(), spi_bit_rw(), spi_command(), spi_read(), spi_write(), tftp_set_mtftp_address(), threewire_read(), threewire_write(), uhci_device_address(), usb_alloc_address(), usb_endpoint(), usb_endpoint_describe(), usb_endpoint_name(), usb_free_address(), usb_port(), usb_set_address(), and x509_check_ipaddress().

◆ writeback

uint64_t writeback

Writeback address.

Definition at line 26 of file ena.h.

◆ doorbell

uint32_t doorbell

Doorbell register offset.

Definition at line 18 of file ena.h.

◆ llq_desc

uint32_t llq_desc

LLQ descriptor ring offset.

Definition at line 20 of file ena.h.

◆ llq_data

uint32_t llq_data

LLQ header offset.

Definition at line 22 of file ena.h.

◆ intr

uint32_t intr

◆ vector

uint32_t vector

◆ node

uint32_t node

NUMA node register offset.

Definition at line 18 of file ena.h.

Referenced by ice_admin_schedule(), and ice_admin_schedule_is_parent().

◆ len

Initial value:
{
buffer->pages.pageset = cpu_to_le16 ( pageset )
uint16_t pageset
Page set ID.
Definition: netvsc.h:16
uint32_t buffer
Buffer index (or NETVSC_RNDIS_NO_BUFFER)
Definition: netvsc.h:16
#define cpu_to_le16(value)
Definition: byteswap.h:106

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.

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 14 of file ena.h.

Referenced by __attribute__(), __memmove(), a3c90x_internal_ReadEeprom(), a3c90x_transmit(), acm_control_receive(), acpi_extract_sx(), acpi_find_via_rsdt(), acpi_settings_fetch(), acpi_zsdt(), acpimac_decode_base16(), acpimac_extract(), acpimac_extract_auxmac(), acpimac_extract_rtxmac(), add_menu_item(), aes_decrypt(), aes_encrypt(), alloc_iob(), alloc_iob_fail_okx(), alloc_iob_okx(), alloc_iob_raw(), alloc_rx_iob(), aoecmd_ata_cmd(), aoecmd_ata_rsp(), aoecmd_cfg_cmd(), aoecmd_cfg_rsp(), apply_dns_search(), apply_dns_servers(), arbel_alloc_icm(), arbel_complete(), arbel_map_vpm(), arc4_xor(), arp_rx(), asn1_bit_string(), asn1_enter(), asn1_header(), asn1_prepend(), asn1_prepend_raw(), asn1_shrink(), asn1_skip_if_exists(), asn1_start(), asprintf(), atacmd_data_buffer(), atadev_command(), atadev_read(), atadev_write(), ath9k_hw_name(), ath_buf_set_rate(), axge_in_complete(), axge_intr_complete(), axge_out_transmit(), axge_read_register(), axge_write_register(), b44_process_rx_packets(), base16_decode_okx(), base16_encode_okx(), base64_decode(), base64_decode_okx(), base64_encode(), base64_encode_okx(), bigint_done_sample(), bigint_init_sample(), blktrans_xferbuf_read(), blktrans_xferbuf_realloc(), blktrans_xferbuf_write(), block_read(), block_write(), bnx2_poll(), bnxt_add_vlan(), bnxt_set_txq(), bnxt_tx(), bofm_locate_section(), buildarch_fetch(), builtin_fetch(), bzimage_align(), bzimage_check_initrds(), bzimage_load_initrds(), cachedhcp_record(), cbc_decrypt(), cbc_encrypt(), cbc_xor(), ccmp_ctr_xor(), ccmp_kie_decrypt(), ccmp_kie_mic(), cdc_get_encapsulated_response(), cdc_send_encapsulated_command(), certstore_apply_settings(), chap_update(), cipher_decrypt(), cipher_decrypt_okx(), cipher_encrypt(), cipher_encrypt_okx(), cipher_null_decrypt(), cipher_null_encrypt(), cmdline_init(), cms_digest(), cms_signature(), cms_verify(), cms_verify_digest(), cms_verify_signer_info(), concat_args(), copy_encap_settings(), copy_from_user(), copy_to_user(), cpio_header(), cpio_name_len(), cpuid_settings_fetch(), crc32_le(), create_menu(), create_pinger(), dbg_hex_dump_da(), dbg_hex_dump_da_row(), dbg_md5_da(), deflate_copy(), deflate_inflate(), denumerate_int_setting(), der_probe(), dhcp_create_request(), dhcpopt_fetch(), dhcpopt_store(), dhcppkt_fetch(), dhcppkt_init(), dhcppkt_settings_fetch(), dhcppkt_settings_store(), dhcppkt_store(), dhcpv6_check_duid(), dhcpv6_fetch(), dhcpv6_fetch_lease(), dhcpv6_iaaddr(), dhcpv6_register(), dhcpv6_user_class(), digest_exec(), digest_frag_okx(), digest_update(), dm96xx_intr_complete(), dm96xx_out_transmit(), dm96xx_read_registers(), dm96xx_write_registers(), dma_op_alloc(), dma_op_free(), dma_op_map(), dma_op_ufree(), dma_op_umalloc(), 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(), dns_progress(), dns_question(), draw_editbox(), draw_menu_item(), drbg_generate(), drbg_generate_algorithm(), drbg_instantiate(), drbg_reseed(), eap_rx(), eap_rx_request(), eapol_rx(), ecam_access(), ecam_read(), ecam_write(), ecb_decrypt(), ecb_encrypt(), ecm_fetch_mac(), ecm_intr_complete(), ecollect_free(), edit_string(), efab_receive(), efi_apple_get_bsdp_response(), efi_apple_get_dhcp_response(), efi_apple_get_response(), efi_block_install(), efi_block_io_read(), efi_block_io_read_blocks(), efi_block_io_write(), efi_block_io_write_blocks(), efi_block_rw(), efi_devpath_text(), efi_disk_io_read_disk(), efi_disk_io_write_disk(), efi_download_deliver_iob(), efi_file_get_info(), efi_file_info(), efi_file_read(), efi_file_read_chunk(), efi_file_read_dir(), efi_file_read_initrd(), efi_file_set_position(), efi_file_varlen(), efi_file_write(), efi_ib_srp_path(), efi_ifr_form_set_op(), efi_ifr_op(), efi_ifr_string(), efi_image_cmdline(), efi_image_path(), efi_iscsi_path(), efi_local_open_path(), efi_netdev_path(), efi_paths(), efi_pxe_buf_write(), efi_pxe_fake(), efi_pxe_mtftp(), efi_pxe_udp_read(), efi_pxe_udp_write(), efi_snp_hii_append(), efi_snp_hii_fetch(), efi_snp_hii_store(), efi_snp_nvdata(), efi_snp_receive(), efi_snp_transmit(), efi_ssnprintf(), efi_undi_checksum(), efi_undi_receive(), efi_uri_path(), efi_usb_async_interrupt_transfer(), efi_usb_async_isochronous_transfer(), efi_usb_async_start(), efi_usb_bulk_transfer(), efi_usb_control_transfer(), efi_usb_get_string_descriptor(), efi_usb_get_supported_languages(), efi_usb_isochronous_transfer(), efi_usb_path(), efi_usb_sync_interrupt_transfer(), efi_usb_sync_transfer(), efifb_glyphs(), efipci_dma_alloc(), efipci_dma_free(), efipci_dma_map(), efipci_dma_ufree(), efipci_dma_umalloc(), efipci_ioremap(), efx_hunt_handle_event(), efx_hunt_receive(), ehci_align(), ehci_bus_open(), ehci_endpoint_count(), ehci_endpoint_message(), ehci_endpoint_stream(), ehci_enqueue(), ehci_ring_alloc(), ena_poll_rx(), ena_refill_rx(), ena_transmit(), eoib_duplicate(), epic100_transmit(), errno_fetch(), exanic_poll_rx(), exanic_transmit(), falcon_handle_event(), falcon_spi_rw(), fbcon_picture_init(), fc_els_detect(), fc_els_echo_rx(), fc_els_echo_rx_request(), fc_els_echo_rx_response(), fc_els_flogi_rx(), fc_els_logo_rx(), fc_els_logo_rx_request(), fc_els_plogi_rx(), fc_els_prli_detect(), fc_els_prli_rx(), fc_els_rx(), fc_els_tx(), fc_els_unknown_rx(), fc_xchg_alloc_iob(), fcoe_alloc_iob(), fcoe_fip_parse(), fcp_prli_detect(), fcp_prli_rx(), fcpcmd_recv_rddata(), fcpcmd_send_wrdata(), fdt_mac(), fdt_traverse(), fetch_ipv4_array_setting(), fetch_ipv6_array_setting(), fetch_numeric_setting(), fetch_raw_setting(), fetch_setting(), fetch_setting_alloc(), fetch_string_setting(), fetch_string_setting_copy_alloc(), fetch_uuid_setting(), fetchf_setting(), fetchf_setting_copy(), find_smbios_entry(), flexboot_nodnic_complete(), format_base64_setting(), format_busdevfn_setting(), format_dnssl_setting(), format_hex_colon_setting(), format_hex_hyphen_setting(), format_hex_raw_setting(), format_int_setting(), format_ipv4_setting(), format_ipv6_setting(), format_string_setting(), format_uint_setting(), format_uri(), format_uri_alloc(), format_uristring_setting(), format_uuid_setting(), free_iob(), ftp_control_deliver(), ftp_parse_value(), gcc_implicit_memcpy(), gcc_implicit_memset(), gdbmach_set_breakpoint(), gdbserial_recv(), gdbserial_send(), gdbstub_cksum(), gdbstub_handler(), gdbudp_recv(), gdbudp_send(), generic_memcpy(), generic_memcpy_reverse(), generic_memmove(), generic_memset(), generic_settings_fetch(), generic_settings_store(), generic_tcpip_continue_chksum(), get_eeprom_chksum(), get_eeprom_data(), get_random_nz(), golan_complete(), guestinfo_fetch(), guestinfo_fetch_type(), guestrpc_command(), guestrpc_command_len(), guestrpc_reply_len(), gzip_extract(), hermon_alloc_mtt(), hermon_complete(), hermon_map_icm(), hermon_map_vpm(), hex_decode(), hex_encode(), hfa384x_copy_from_bap(), hfa384x_copy_to_bap(), hfa384x_drvr_getconfig(), hfa384x_drvr_setconfig(), hmac_drbg_generate(), hmac_drbg_update(), hmac_drbg_update_key(), hmac_update(), http_block_read(), http_digest_final(), http_format_accept_encoding(), http_format_authorization(), http_format_basic_auth(), http_format_connection(), http_format_content_length(), http_format_content_type(), http_format_digest_auth(), http_format_headers(), http_format_host(), http_format_metadata_flavor(), http_format_ntlm_auth(), http_format_p2p_peerdist(), http_format_p2p_peerdistex(), http_format_range(), http_format_user_agent(), 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_post_message(), hv_wait_for_message(), hvm_ioremap(), hvm_iounmap(), hwrm_init(), i2c_bit_read(), i2c_bit_write(), ibft_align(), ibft_alloc_string(), ibft_install(), ibft_set_string_setting(), icert_cert(), icm_align(), icmpv4_rx(), icmpv6_rx(), icplus_create_ring(), icplus_destroy_ring(), icplus_poll_rx(), icplus_read_eeprom(), image_asn1(), image_memory(), image_set_data(), image_set_len(), imgmem(), imgmem_exec(), imux_alloc_iob(), imux_in_complete(), imux_rx_log(), imux_rx_tcp(), imux_tx(), imux_tx_tcp(), inet6_ntoa(), init_editbox(), init_editstring(), initrd_reshuffle_check(), initrd_squash_high(), initrd_startup(), initrd_swap(), inject_corruption_nonzero(), int13_get_extended_parameters(), int13_install(), int22(), intel_describe_tx(), intel_describe_tx_adv(), intel_poll_rx(), intel_read_eeprom(), intel_transmit(), intelxl_alloc_admin(), intelxl_context(), intelxl_context_dump(), intelxl_enable_admin(), intelxl_free_admin(), intelxl_poll_rx(), intelxl_transmit(), intelxlvf_init_ring(), iob_concatenate(), iob_ensure_headroom(), iob_map(), iob_pad(), iob_populate(), iob_pull(), iob_push(), iob_put(), iob_reserve(), iob_split(), iob_unput(), ioremap_pages(), ipair_rx(), ipair_rx_pubkey(), ipair_tx(), ipoib_alloc_iob(), ipv4_rx(), ipv6_check_options(), ipv6_create_routes(), ipv6_fetch(), ipv6_pshdr_chksum(), ipv6_rx(), ipv6_sock_aton(), ipv6_tx(), ipv6conf_rx_router_advertisement(), is_pnp_bios(), isapnp_find_tag(), isapnp_peek(), iscsi_build_login_request_strings(), iscsi_fetch_settings(), iscsi_handle_chap_c_value(), iscsi_handle_chap_r_value(), iscsi_handle_strings(), iscsi_large_binary_decode(), iscsi_rx_bhs(), iscsi_rx_buffered_data(), iscsi_rx_data(), iscsi_rx_data_in(), iscsi_rx_login_response(), iscsi_rx_scsi_response(), 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_ib_epb_ram_xfer(), linda_post_recv(), linda_post_send(), line_buffer(), linebuf_consume_okx(), loopback_wait(), mac_address_from_string_specs(), md4_update(), md5_sha1_update(), md5_update(), memchr(), memcmp(), memcpy_test_speed(), memcpy_var(), memmap_settings_fetch(), memset_var(), memswap(), 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_fetch(), ndp_prefix_fetch(), ndp_prefix_fetch_gateway6(), ndp_prefix_fetch_ip6(), ndp_prefix_fetch_len6(), ndp_register_settings(), ndp_rx_neighbour(), ndp_rx_neighbour_advertisement_ll_target(), ndp_rx_neighbour_solicitation_ll_source(), ndp_rx_option(), ndp_rx_options(), ndp_rx_router_advertisement(), ndp_rx_router_advertisement_ll_source(), ndp_rx_router_advertisement_prefix(), ndp_tx_ll_addr(), ne_poll(), net80211_accum_frags(), net80211_add_channels(), netdev_fetch(), netdev_fetch_busid(), netdev_fetch_busloc(), netdev_fetch_bustype(), netdev_fetch_chip(), netdev_fetch_hwaddr(), netdev_fetch_ifname(), netdev_fetch_mac(), netdev_store(), netdev_store_mac(), netfront_poll_rx(), netfront_read_mac(), netfront_transmit(), netvsc_buffer_copy(), netvsc_control(), netvsc_initialised(), netvsc_recv_completion(), netvsc_recv_control(), netvsc_recv_data(), netvsc_rx_established_buffer(), nfs_deliver(), nfs_uri_symlink(), nii_io(), nii_map(), nii_sync(), nii_unmap(), ns8390_poll(), nslookup_resolv_done(), ntlm_append(), ntlm_authenticate(), ntlm_authenticate_okx(), ntlm_challenge(), ntlm_data_okx(), numeric_setting_value(), nv_process_rx_packets(), nvo_fetch(), nvo_init(), nvo_realloc(), nvo_realloc_dhcpopt(), nvo_store(), nvs_read(), nvs_verify(), nvs_vpd_nvo_init(), nvs_vpd_nvo_resize(), nvs_vpd_read(), nvs_vpd_resize(), nvs_vpd_write(), nvs_write(), ocsp_response(), ocsp_uri_string(), parse_base64_setting(), parse_hex_hyphen_setting(), parse_hex_raw_setting(), parse_hex_setting(), parse_int_setting(), parse_ipv4_setting(), parse_ipv6_setting(), parse_string_setting(), parse_uristring_setting(), pci_settings_fetch(), pci_vpd_dump(), pci_vpd_find(), pci_vpd_find_tag(), pci_vpd_read(), pci_vpd_resize(), pci_vpd_write(), pcicloud_ioremap(), 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_open(), peerdisc_socket_tx(), peerdist_discovery_reply(), peerdist_discovery_reply_tag(), peerdist_discovery_reply_values(), peerdist_discovery_request(), peerdist_info(), peerdist_info_get(), peerdist_info_v2(), peerdist_info_v2_segment(), peerdist_info_v2_segments(), peermux_info_close(), pem_asn1(), pem_marker(), pem_next(), phantom_clp_cmd(), phantom_clp_fetch(), phantom_clp_store(), phantom_fetch_setting(), phantom_issue_buf_cmd(), phantom_store_setting(), ping(), ping_alloc_iob(), ping_callback(), pinger_deliver(), platform_fetch(), png_chunk(), png_image_data(), png_image_end(), png_image_header(), png_palette(), pnm_ascii(), pnm_data(), privkey_apply_settings(), process_script(), pubkey_decrypt(), pubkey_encrypt(), 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_generate(), rbg_startup(), rdc_create_ring(), rdc_destroy_ring(), rdc_poll_rx(), read(), read_smbios_string(), read_smbios_structure(), read_user(), realtek_create_buffer(), realtek_destroy_buffer(), realtek_legacy_poll_rx(), realtek_poll_rx(), rfc_tcpip_chksum(), rhine_create_ring(), rhine_destroy_ring(), rhine_poll_rx(), rndis_alloc_iob(), rndis_oid(), rndis_rx_data(), rndis_rx_initialise(), rndis_rx_query_oid(), rndis_rx_set_oid(), rndis_rx_status(), rndis_tx_complete_err(), rndis_tx_data(), rndis_tx_oid(), rootcert_init(), rsdp_find_rsdt_range(), rtl818x_tx(), sandev_command_rw(), scsi_parse_sense(), scsidev_command(), scsidev_read(), scsidev_write(), sec80211_install(), set_autoboot_ll_addr(), set_dhcp_option(), setting_denumerate(), setting_format(), setting_name(), setting_parse(), sha1_update(), sha256_update(), sha512_update(), short_hwrm_cmd_req(), show_exec(), shuffle(), sis190_transmit(), skge_ramset(), skge_rx_done(), skge_xmit_frame(), sky2_rx_add(), sky2_xmit_frame(), slam_mc_socket_deliver(), slam_pull_value(), slam_put_value(), smbios_fetch(), smsc75xx_out_transmit(), smsc95xx_out_transmit(), smsc95xx_vm3_fetch_mac(), smscusb_eeprom_read(), smscusb_otp_read(), snpnet_mac_text(), snpnet_poll_rx(), snprintf_okx(), spi_bit_rw(), spi_bit_transfer(), spi_read(), spi_write(), srp_login_rej(), srp_login_rsp(), srp_rsp(), srp_unrecognised(), srpdev_deliver(), ssnprintf(), start_dhcpv6(), store_setting(), string_copy(), strndup(), strnlen(), strstr(), sync_console(), sysmac_fetch(), t509_transmit(), t515_transmit(), t595_transmit(), tcp_in_window(), 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(), tcpip_chksum(), tcpip_continue_chksum(), tftp_rx(), tftp_rx_error(), tftp_rx_oack(), tftp_send_rrq(), tg3_rx_complete(), tg3_set_txd(), tg3_transmit(), threewire_read(), threewire_write(), tkip_kie_decrypt(), tkip_kie_mic(), tkip_michael(), tls_add_handshake(), tls_assemble_block(), tls_assemble_stream(), tls_generate_random(), tls_hmac(), tls_hmac_update(), tls_hmac_update_va(), tls_new_alert(), tls_new_certificate(), tls_new_change_cipher(), tls_new_ciphertext(), tls_new_finished(), tls_new_handshake(), tls_new_record(), tls_new_server_hello(), tls_new_server_hello_done(), tls_new_session_ticket(), tls_parse_chain(), tls_send_certificate(), tls_send_certificate_verify(), tls_send_client_hello(), tls_send_client_key_exchange(), tls_send_handshake(), tls_send_plaintext(), trivial_change_key(), trivial_init(), trivial_memchr_user(), trivial_memcmp_user(), trivial_memcpy_user(), trivial_memmove_user(), trivial_memset_user(), txnic_complete_rqe(), txnic_send(), udp_tx(), udp_xfer_alloc_iob(), uhci_dequeue(), uhci_describe(), uhci_endpoint_message(), uhci_endpoint_poll(), uhci_endpoint_stream(), uhci_enqueue(), uhci_reachable(), undinet_poll(), undinet_transmit(), unixtime_fetch(), uri_copy_fields(), uri_decode(), uri_decode_inplace(), uri_dup(), uri_encode(), uri_encode_string(), uri_format_okx(), uri_pxe_okx(), usb_config_descriptor(), usb_control(), usb_get_config_descriptor(), usb_get_descriptor(), usb_get_status(), usb_get_string_descriptor(), usb_hub_get_descriptor(), usb_message(), usb_prefill(), usb_refill_init(), usb_refill_limit(), usbblk_in_complete(), usbblk_in_data(), usbblk_in_status(), usbblk_out_data(), usbhid_set_report(), usbio_bulk_in_poll(), usbio_bulk_out_poll(), usbio_config(), usbio_control_poll(), usbio_interrupt_callback(), usbio_interrupt_poll(), usbio_path(), usbkbd_consume(), used_len_string(), utf8_accumulate(), validator_append(), validator_ocsp_validate(), validator_start_download(), vasprintf(), vcprintf(), velocity_poll_rx(), version_fetch(), vesafb_mode_list(), virtnet_process_rx_packets(), virtnet_refill_rx_virtqueue(), vmbus_close(), vmbus_consume(), vmbus_establish_gpadl(), vmbus_open(), vmbus_poll(), vmbus_post_message(), vmbus_produce(), vmbus_send(), vmbus_send_completion(), vmbus_send_control(), vmbus_send_data(), vmbus_xfer_page_iobufs(), vmsg(), vmxnet3_poll_rx(), vp_get(), vpm_get(), vram_fetch(), vring_get_buf(), vsnprintf(), vxge_hw_vpath_poll_rx(), wait_resp(), wcslen(), wpa_install_gtk(), wpa_install_ptk(), wpa_psk_start(), x509_append_raw(), x509_certificate(), x509_check_dnsname(), x509_name(), x509_parse_key_usage(), xcm_deliver(), xenbus_probe(), xenbus_probe_type(), xenstore_directory(), xenstore_dump(), xenstore_message(), xenstore_recv(), xenstore_response(), xenstore_send(), xfer_alloc_iob(), xfer_check_order(), xfer_deliver_raw(), xfer_deliver_raw_meta(), xfer_vprintf(), xfer_window(), xferbuf_deliver(), xferbuf_ensure_size(), xferbuf_malloc_read(), xferbuf_malloc_realloc(), xferbuf_malloc_write(), xferbuf_read(), xferbuf_umalloc_read(), xferbuf_umalloc_realloc(), xferbuf_umalloc_write(), xferbuf_write(), xhci_align(), xhci_context(), xhci_dcbaa_alloc(), xhci_dcbaa_free(), xhci_device_close(), xhci_device_open(), xhci_endpoint_count(), xhci_endpoint_message(), xhci_endpoint_stream(), xhci_event_alloc(), xhci_event_free(), xhci_fail(), and xor8_buf().

◆ feature

Feature.

Definition at line 14 of file ena.h.

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

◆ scope

uint8_t scope

Scope.

Definition at line 18 of file ena.h.

Referenced by ipv6_route().

◆ queue

uint16_t queue

◆ device

◆ tx_bytes

uint64_t tx_bytes

Transmit byte count.

Definition at line 14 of file ena.h.

◆ tx_packets

uint64_t tx_packets

Transmit packet count.

Definition at line 16 of file ena.h.

◆ rx_bytes

uint64_t rx_bytes

Receive byte count.

Definition at line 18 of file ena.h.

◆ rx_packets

uint64_t rx_packets

Receive packet count.

Definition at line 20 of file ena.h.

◆ rx_drops

uint64_t rx_drops

Receive drop count.

Definition at line 22 of file ena.h.

◆ max

timer max = max

Definition at line 631 of file ena.h.

◆ ids

ring ids
Initial value:
{
sq->len = ( count * size )
uint16_t count
Number of entries.
Definition: ena.h:22
uint8_t size
Entry size (in 32-bit words)
Definition: ena.h:16

Definition at line 632 of file ena.h.

Referenced by xcm_list().

◆ requested

cq requested = count

Definition at line 684 of file ena.h.