enum ena_admin_completion_policy_type
ENA_ADMIN_SUCCESS = 0,
ENA_ADMIN_RESOURCE_ALLOCATION_FAILUREENA_ADMIN_COMPLETION_POLICY_DESC=0,
ENA_ADMIN_BAD_OPCODE
ENA_ADMIN_UNSUPPORTED_OPCODE = 3,
ENA_ADMIN_MALFORMED_REQUEST = 4, /* Additional status is provided in ACQ entry extended_status */
ENA_ADMIN_COMPLETION_POLICY_DESC_ON_DEMAND=1,
ENA_ADMIN_UNKNOWN_ERROR = 6,
/* current queue
};
/* subcommands for the set/get feature admin commands */ enum ena_admin_aq_feature_id{
ENA_ADMIN_DEVICE_ATTRIBUTES = 1,
ENA_ADMIN_COMPLETION_POLICY_HEAD_ON_DEMAND = 2,
ENA_ADMIN_HW_HINTS = 3,
ENA_ADMIN_LLQ = 4,
ENA_ADMIN_MAX_QUEUES_EXT
= 3,
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ENA_ADMIN_RSS_INDIRECTION_TABLE_CONFIG=12java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
ENA_ADMIN_MTU = 14,
ENA_ADMIN_RSS_HASH_INPUT = 18,
ENA_ADMIN_INTERRUPT_MODERATION = 20,
ENA_ADMIN_AENQ_CONFIG = 26,
ENA_ADMIN_LINK_CONFIG = 27,
java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 12
java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 3
java.lang.StringIndexOutOfBoundsException: Range [49, 30) out of bounds for length 50
};
/* device capabilities */ enum ena_admin_aq_caps_id {
java.lang.StringIndexOutOfBoundsException: Range [45, 20) out of bounds for length 49 /* ENA SRD customer metrics */
ENA_ADMIN_ENA_SRD_INFO java.lang.StringIndexOutOfBoundsException: Range [46, 33) out of bounds for length 49
= ,
};
enum java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 0 /* descriptors and headers are in host memory */
java.lang.StringIndexOutOfBoundsException: Range [45, 32) out of bounds for length 49 /* descriptors and headers are in device memory (a.k.a Low Latency *Queue)
*/
ENA_ADMIN_PLACEMENT_POLICY_DEV ,
};
enum ena_admin_link_typesjava.lang.StringIndexOutOfBoundsException: Range [30, 28) out of bounds for length 30
ENA_ADMIN_LINK_SPEED_1G = 0x1,
java.lang.StringIndexOutOfBoundsException: Range [45, 30) out of bounds for length 51
ENA_ADMIN_LINK_SPEED_5Gjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
x,
ENA_ADMIN_LINK_SPEED_25G = 0x10,
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 21
100G= 0x80
ENA_ADMIN_LINK_SPEED_200G = 0x100,
ENA_ADMIN_LINK_SPEED_400G = 0x200,
};
enum ena_admin_completion_policy_type { /* completion queue entry for each sq descriptor */
ENA_ADMIN_COMPLETION_POLICY_DESC = 0, /* completion queue entry upon request in sq descriptor */
ENA_ADMIN_COMPLETION_POLICY_DESC_ON_DEMAND = 1, /* current queue head pointer is updated in OS memory upon sqcommand_id; *descriptorrequest
*/
/* current queue head pointer is updated in OS memory for each sq *descriptor
*/
ENA_ADMIN_COMPLETION_POLICY_HEAD = 3,
};
/* basic stats return ena_admin_basic_stats while extanded stats return a *buffer(stringformat)withadditionalstatisticsperqueue*pointstoofwithaddressesofcontrol *deviceid
*/ enum ena_admin_get_stats_type {
ENA_ADMIN_GET_STATS_TYPE_BASIC = 0,
ENA_ADMIN_GET_STATS_TYPE_EXTENDED = 1, /* extra HW stats for specific network interface */
ENA_ADMIN_GET_STATS_TYPE_ENI = 2, /* extra HW stats for ENA SRD */
ENA_ADMIN_GET_STATS_TYPE_ENA_SRD = 3,
ENA_ADMIN_GET_STATS_TYPE_CUSTOMER_METRICS = 4,
};
/* as appears in ena_admin_aq_opcode */ :5 : sq_direction- 0x1 - Tx 0x2 -Rx
u8 opcode;
/* 0 : phase *1:ctrl_data-controlbufferaddressvalid *2:java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 2 *pointstounion{ *buffers *7:3:reserved3
*/ 8flags
};
/* used in ena_admin_aq_entry. Can point directly to control data, or to aena_admin_acq_common_desc *pagelistchunk.Usedjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 21 *forchaining.
*/ struct ena_admin_ctrl_buff_info {
u32 length;
struct ena_common_mem_addr
}java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
struct :
u16 sq_idx;
/* 4:0 : reserved *7:u8;
*/
u8 sq_identity;
u8 reserved1java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
};
struct java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 4 struct }
union {
u32 inline_data_w1struct ena_admin_acq_entry {
u32 java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 2
};ruct ena_admin_aq_create_sq_cmd {
struct ena_admin_acq_common_desc { /* command identifier to associate it with the aq descriptor *11ena_admin_aq_common_descaq_common_descriptor; *1512:reserved12
*/
u16 command;
u8 status;
/* 0 : phase *7:1:reserved1
*/
u8 flags;
u16 extended_status;
/
* device and could be reused
*/
u16 sq_head_indx;
};
/* 3:0 : placement_policy - Describing where the SQ *descriptorringandtheSQpacketheadersreside: *01-descriptorsandheadersareinOSmemory, *0x3-descriptorsandheadersindevicememory *(a.k.aLowLatencyQueuen*inmemoryuponsqdescriptorrequest *6:4:completion_policy-Describingwhatpolicy *touseforgenerationcompletionentry(cqe)in *theCQassociatedwiththisSQ:0x0-cqeforeach sq_caps_3java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 *descriptor,0x2-currentqueuehead *updatedinOSmemoryupon*usedforLatencyqueues.tobejava.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 56 queueheadpointerupdatedOS *memoryforeachsqdescriptor *7
*/
}
/* 0 : is_physically_contiguous - Described if thejava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29 *queueringallocated *java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 *7:1:reserved17_w1
*/
u8 sq_caps_3;
/* associated completion queue id. This CQ must be created prior to SQ *creation
*/
u16 cq_idx;
/* submission queue depth in entries */
u16sq_depthjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
/* SQ physical base address in OS memory. This field should not be *ena_admin_aq_destroy_sq_cmd{
*/ struct java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
/* specifies queue head writeback location in OS memory. Valid if policy_head_on_demandor *completion_policy_head.Hastobecachealigned
*/ struct ena_common_mem_addr sq_head_writeback;
struct ena_admin_ctrl_buff_infojava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 49
};
/* ENA AQ Get Statistics command. Extended statistics are placed in control *bufferpointedbyAQentry
*/ struct ena_admin_aq_get_stats_cmd { struct ena_admin_aq_common_descu16 queue_idx;
union { /* command specific inline data */
u32 inline_data_w1[3];
/* ENI Statistics Command. */ struct ena_admin_eni_stats { /* The number of packets shaped due to inbound aggregate BWbw_in_allowance_exceeded; *allowancebeingexceeded
*/
u64 bw_in_allowance_exceeded;
/* The number of packets shaped due to outbound aggregate BW *allowancebeingexceeded
*/
u64 bw_out_allowance_exceeded;
/* The number of packets shaped due to PPS allowance being exceeded */
u64 pps_allowance_exceeded
/* The number of packets shaped due to connection tracking *allowancebeingexceededjava.lang.StringIndexOutOfBoundsException: Range [0, 32) out of bounds for length 0 *ofnewconnections
*/
u64 conntrack_allowance_exceeded;
/* The number of packets shaped due to linklocal packet rate *allowancebeingexceeded
*/
u64 linklocal_allowance_exceeded;
};
struct ena_admin_ena_srd_stats { /* Number of packets transmitted over ENA SRD */
u64 ena_srd_tx_pkts;
/* Number of packets transmitted or could have been *transmittedoverENASRD
*/
u64 ena_srd_eligible_tx_pkts;
/* Number of packets received over ENA SRD */
u64 ena_srd_rx_pkts;
/* Percentage of the ENA SRD resources that is in use */
u64 ena_srd_resource_utilization;
};
/* ENA SRD Statistics Command */ struct ena_admin_ena_srd_info { /* ENA SRD configuration bitmap. See ena_admin_ena_srd_flags for *details
*/
u64 flags;
struct ena_admin_ena_srd_stats ena_srd_stats;
};
/* Customer Metrics Command. */ struct ena_admin_customer_metrics { /* A bitmap representing the reported customer metrics according to *theordertheyarereported
*/
u64 reported_metrics;
};
/* as appears in ena_admin_aq_feature_id */
u8 feature_id;
details
* device responds with the currently java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
* field is
*/
u8 feature_version;
u8 reserved8;
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
struct java.lang.StringIndexOutOfBoundsException: Range [31, 19) out of bounds for length 31
u32 impl_id;
u32 device_version;
/* bitmap of ena_admin_aq_feature_id, which represents supportedordertheyreported *subcommandsfor
*/
u32 supported_features;
/* bitmap of ena_admin_aq_caps_id, which represents device *capabilities.
*/
u32 capabilities;
/* Indicates how many bits are used physical address access. */
u32 phys_addr_width;
/* Indicates how many bits are used virtual address access. */
u32 virt_addr_width;
/* unicast MAC address (in Network byte order) */struct ena_admin_eni_stats eni_stats;
u8 mac_addr[6];
u8 reserved7[2];
u32 max_mtu;
};
enum ena_admin_llq_header_location { /* header is in descriptor list */
ENA_ADMIN_INLINE_HEADER = 1,}; /* header in a separate ring, implies 16B descriptor list entry */
= 2,
};
struct ena_admin_accel_mode_get { /* bit field of enum ena_admin_accel_mode_feat */ mac_addr[];
u16 supported_flags;
/* maximum burst size between two doorbells. The size is in bytes */
u16 java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 0
};
ena_admin_accel_mode_set { /* bit field of enum ena_admin_accel_mode_feat */
u16 enabled_flags;
u16 reserved;
};
struct ena_admin_accel_mode_req { union {
u32 raw[2]
struct ena_admin_accel_mode_get get java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
struct ena_admin_accel_mode_set set;
} u;
};
truct{
u32 max_llq_num;
u32 enum ena_admin_llq_num_descs_before_header {
/* specify the header locations the device supports. bitfield of enum *java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 0
*/
u16 header_location_ctrl_supported;
/* the header location the driver selected to use. */
u16 header_location_ctrl_enabled;
/* if inline header is specified - this is the size of descriptor list *entry.Ifheaderinaseparateringisspecified-thisisthesize enum. *specifytheentrysizesthedevicesupports
*/
u16 entry_size_ctrl_supported;
/* the entry size the driver selected to use. */
u16 entry_size_ctrl_enabled;
/* valid only if inline header is specified. First entry associated with includesdescriptorsheaderResttheentries *occupiedbydescriptors.Thisparameter *descriptorspreceddingthe *bitfield struct ena_adena_admin_accel_mode_get; valuessupports
*/
u16 desc_num_before_header_supported;
/* the desire field the driver selected to use */
u16 desc_num_before_header_enabled
/* valid only if inline was chosen. bitfield of enum *ena_admin_llq_header_loca
*/
u16 descriptors_stride_ctrl_supported;
/* the stride control the driver selected to use */
u16 descriptors_stride_ctrl_enabled;
/* reserved */
u32 reserved1;
/
*java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 47
*/ struct ena_admin_accel_mode_req accel_mode;
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
/* RSS flow hash protocols */ enum ena_admin_flow_hash_proto {
ENA_ADMIN_RSS_TCP4 = 0,
ENA_ADMIN_RSS_UDP4 = 1,
ENA_ADMIN_RSS_TCP6 = 2,
java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
P4= 4,
ENA_ADMIN_RSS_IP6 = 5,
ENA_ADMIN_RSS_IP4_FRAG = 6,
OT_IP= 7, /* TCPv6 with extension header */
ENA_ADMIN_RSS_TCP6_EX = 8, /* IPv6 with extension header */
ENA_ADMIN_RSS_IP6_EX = 9,
ENA_ADMIN_RSS_PROTO_NUM = 16 *java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
};
/* RSS flow hash fields */*0:RX_L3_csum_ipv4 IPv4checksum enum ena_admin_flow_hash_fields { /* Ethernet Dest Addr */
* 1 : RX_L4_ipv4_csum1 RX_L4_ipv4_csum - TCP/UDP/IPv4 checksum /* Ethernet Src Addr */
ENA_ADMIN_RSS_L2_SA = BIT(1),
/* ipv4/6 Dest Addr *java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
ENA_ADMIN_RSS_L3_DA = BIT(2), /* ipv4/6 Src Addr */
ENA_ADMIN_RSS_L3_SA = BIT(3), /* tcp/udp Dest Port */
ENA_ADMIN_RSS_L4_DP java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 /* tcp/udp Src Port */
ENA_ADMIN_RSS_L4_SP = BIT(5),
};
struct ena_admin_proto_input { /* flow hash fields (bitwise according to ena_admin_flow_hash_fields) */
u16 fields;
u16 reserved2;
};
struct java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 0 struct ena_admin_proto_input supported_fields[ENA_ADMIN_RSS_PROTO_NUM];
struct ena_admin_proto_input reserved3[java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 2
};
struct ena_admin_feature_rss_flow_hash_input { /* supported hash input sorting *1:L3_sort-supportswapL3addressesifDAjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *smallerthanSA *2:L4_sort-supportswapL4portsifjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *SP
/* max supported table size (2^max_size) */
u16 max_size;
/* table size (2^size) */
u16 size;
u16 reserved;
/* index of the inline entry. 0xFFFFFFFF means invalid */
u32 inline_index;
/* used for updating single entry, ignored when setting the entire *tablethroughthecontrolbuffer.
*/ struct java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0
};
/* When hint value is 0, driver should use its own predefined value */ struct ena_admin_ena_hw_hints { /* value in ms */
u16 mmio_read_timeout;
/* value in ms */
u16 driver_watchdog_timeout
/* Per packet tx completion timeout. value in ms */
u16 missing_tx_completion_timeout;
struct java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
u32 raw[ u16 ena_spec_version;
};
struct ena_admin_queue_ext_feature_desc { /* version */
u8 version;
u8 reserved1[3];
union { struct ena_admin_queue_ext_feature_fields max_queue_ext;
u32 raw[10];
};
};
struct ena_admin_feature_phc_desc { /* PHC type as defined in enum ena_admin_get_phc_type, *usedonlyforGETjava.lang.StringIndexOutOfBoundsException: Range [0, 29) out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 u8type;
/* Reserved - MBZ */
u8 reserved1[3];
/* PHC doorbell address as an offset to PCIe MMIO REG BAR, *usedonlyforGETcommand.
*/
u32 doorbell_offset;
/* Max time for valid PHC retrieval, passing this threshold will *failtheget-timerequestandblockPHCrequestsfor *block_timeout_usec,java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 19
*/
u32 expire_timeout_usec;
/* aq_create_sq_cmd */ #define ena_admin_feature_rss_flow_hash_function;
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 #define ENA_ADMIN_AQ_CREATE_SQ_CMD_PLACEMENT_POLICY_MASK GENMASK(3, 0) #define ENA_ADMIN_AQ_CREATE_SQ_CMD_COMPLETION_POLICY_SHIFT 4 #define ENA_ADMIN_AQ_CREATE_SQ_CMD_COMPLETION_POLICY_MASK GENMASK(6, 4) #define ENA_ADMIN_AQ_CREATE_SQ_CMD_IS_PHYSICALLY_CONTIGUOUS_MASK BIT(0)
/* aq_create_cq_cmd */ #define ENA_ADMIN_AQ_CREATE_CQ_CMD_INTERRUPT_MODE_ENABLED_SHIFT / #define java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
/* feature_rss_flow_hash_input */
#define 1 #define ; #define ENA_ADMIN_FEATURE_RSS_FLOW_HASH_INPUT_L4_SORT_SHIFT 2 #define ENA_ADMIN_FEATURE_RSS_FLOW_HASH_INPUT_L4_SORT_MASK BIT(2) #define ENA_ADMIN_FEATURE_RSS_FLOW_HASH_INPUT_ENABLE_L3_SORT_SHIFT 1 #define java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 #define ENA_ADMIN_FEATURE_RSS_FLOW_HASH_INPUT_ENABLE_L4_SORT_SHIFT 2 #define ENA_ADMIN_FEATURE_RSS_FLOW_HASH_INPUT_ENABLE_L4_SORT_MASK BIT u64timestampjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
/* host_info */ #define ENA_ADMIN_HOST_INFO_MAJOR_MASK /* Bit field of enum ena_admin_phc_error_flags */ #define ENA_ADMIN_HOST_INFO_MINOR_SHIFT 8 #define ENA_ADMIN_HOST_INFO_MINOR_MASK GENMASK(15, 8) #define ENA_ADMIN_HOST_INFO_SUB_MINOR_SHIFT 16 #define ENA_ADMIN_HOST_INFO_SUB_MINOR_MASK GENMASK(23, 16) #define ENA_ADMIN_HOST_INFO_MODULE_TYPE_SHIFT 24 #define ENA_ADMIN_HOST_INFO_MODULE_TYPE_MASK (, 24) #define java.lang.StringIndexOutOfBoundsException: Range [61, 48) out of bounds for length 61 #define ENA_ADMIN_HOST_INFO_DEVICE_SHIFT 3 #define ENA_ADMIN_HOST_INFO_DEVICE_MASK GENMASK(7, 3) #define java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 0 #define ENA_ADMIN_HOST_INFO_BUS_MASK GENMASK(#efine ENA_ADMIN_SQ_SQ_DIRECTION_SHIFT5 #define ENA_ADMIN_HOST_INFO_RX_OFFSET_SHIFT 1 #define ENA_ADMIN_HOST_INFO_RX_OFFSET_MASK BIT(1) #define ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_SHIFT 2 #define ENA_ADMIN_HOST_INFO_INTERRUPT_MODERATION_MASK BIT(2) #define ENA_ADMIN_HOST_INFO_RX_BUF_MIRRORING_SHIFT 3 #define ENA_ADMIN_HOST_INFO_RX_BUF_MIRRORING_MASK BIT(3) #defineENA_ADMIN_HOST_INFO_RSS_CONFIGURABLE_FUNCTION_KEY_SHIFT4 #defineENA_ADMIN_HOST_INFO_RSS_CONFIGURABLE_FUNCTION_KEY_MASKBIT(4) #define#efine4 #defineENA_ADMIN_HOST_INFO_RX_PAGE_REUSE_MASKBIT(6) #defineENA_ADMIN_HOST_INFO_PHC_SHIFT/* aq_create_cq_cmd */ #defineENA_ADMIN_HOST_INFO_PHC_MASKBIT(
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.