iPXE
|
Ethernet slow protocols. More...
Go to the source code of this file.
Data Structures | |
struct | eth_slow_header |
Slow protocols header. More... | |
struct | eth_slow_tlv_header |
TLV (type, length, value) header. More... | |
struct | eth_slow_terminator_tlv |
Terminator TLV. More... | |
struct | eth_slow_lacp_entity_tlv |
LACP entity (actor or partner) TLV. More... | |
struct | eth_slow_lacp_collector_tlv |
LACP collector TLV. More... | |
struct | eth_slow_marker_tlv |
Marker TLV. More... | |
struct | eth_slow_lacp |
LACP packet. More... | |
struct | eth_slow_marker |
Marker packet. More... | |
union | eth_slow_packet |
Slow protocols packet. More... | |
Macros | |
#define | ETH_SLOW_SUBTYPE_LACP 1 |
LACP subtype. More... | |
#define | ETH_SLOW_LACP_VERSION 1 |
LACP version number. More... | |
#define | ETH_SLOW_SUBTYPE_MARKER 2 |
Marker subtype. More... | |
#define | ETH_SLOW_MARKER_VERSION 1 |
Marker version number. More... | |
#define | ETH_SLOW_TLV_TERMINATOR 0 |
Terminator type. More... | |
#define | ETH_SLOW_TLV_TERMINATOR_LEN 0 |
Terminator length. More... | |
#define | ETH_SLOW_TLV_LACP_ACTOR 1 |
LACP actor type. More... | |
#define | ETH_SLOW_TLV_LACP_ACTOR_LEN ( sizeof ( struct eth_slow_lacp_entity_tlv ) ) |
LACP actor length. More... | |
#define | ETH_SLOW_TLV_LACP_PARTNER 2 |
LACP partner type. More... | |
#define | ETH_SLOW_TLV_LACP_PARTNER_LEN ( sizeof ( struct eth_slow_lacp_entity_tlv ) ) |
LACP partner length. More... | |
#define | ETH_SLOW_TLV_LACP_COLLECTOR 3 |
LACP collector type. More... | |
#define | ETH_SLOW_TLV_LACP_COLLECTOR_LEN ( sizeof ( struct eth_slow_lacp_collector_tlv ) ) |
LACP collector length. More... | |
#define | ETH_SLOW_TLV_MARKER_REQUEST 1 |
Marker request type. More... | |
#define | ETH_SLOW_TLV_MARKER_REQUEST_LEN ( sizeof ( struct eth_slow_marker_tlv ) ) |
Marker request length. More... | |
#define | ETH_SLOW_TLV_MARKER_RESPONSE 2 |
Marker response type. More... | |
#define | ETH_SLOW_TLV_MARKER_RESPONSE_LEN ( sizeof ( struct eth_slow_marker_tlv ) ) |
Marker response length. More... | |
#define | LACP_SYSTEM_PRIORITY_MAX 0xffff |
Maximum system priority. More... | |
#define | LACP_PORT_PRIORITY_MAX 0xff |
Maximum port priority. More... | |
#define | LACP_STATE_ACTIVE 0x01 |
LACP entity is active. More... | |
#define | LACP_STATE_FAST 0x02 |
LACP timeout is short. More... | |
#define | LACP_STATE_AGGREGATABLE 0x04 |
LACP link is aggregateable. More... | |
#define | LACP_STATE_IN_SYNC 0x08 |
LACP link is in synchronisation. More... | |
#define | LACP_STATE_COLLECTING 0x10 |
LACP link is collecting (receiving) More... | |
#define | LACP_STATE_DISTRIBUTING 0x20 |
LACP link is distributing (transmitting) More... | |
#define | LACP_STATE_DEFAULTED 0x40 |
LACP entity is using defaulted partner information. More... | |
#define | LACP_STATE_EXPIRED 0x80 |
LACP entity receive state machine is in EXPIRED. More... | |
#define | LACP_INTERVAL_FAST 1 |
LACP fast interval (1 second) More... | |
#define | LACP_INTERVAL_SLOW 30 |
LACP slow interval (30 seconds) More... | |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
struct eth_slow_header | __attribute__ ((packed)) |
Ethernet slow protocols.
Definition in file eth_slow.h.
#define ETH_SLOW_SUBTYPE_LACP 1 |
LACP subtype.
Definition at line 21 of file eth_slow.h.
#define ETH_SLOW_LACP_VERSION 1 |
LACP version number.
Definition at line 24 of file eth_slow.h.
#define ETH_SLOW_SUBTYPE_MARKER 2 |
Marker subtype.
Definition at line 27 of file eth_slow.h.
#define ETH_SLOW_MARKER_VERSION 1 |
Marker version number.
Definition at line 30 of file eth_slow.h.
#define ETH_SLOW_TLV_TERMINATOR 0 |
Terminator type.
Definition at line 48 of file eth_slow.h.
#define ETH_SLOW_TLV_TERMINATOR_LEN 0 |
Terminator length.
Definition at line 51 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_ACTOR 1 |
LACP actor type.
Definition at line 54 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_ACTOR_LEN ( sizeof ( struct eth_slow_lacp_entity_tlv ) ) |
LACP actor length.
Definition at line 57 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_PARTNER 2 |
LACP partner type.
Definition at line 61 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_PARTNER_LEN ( sizeof ( struct eth_slow_lacp_entity_tlv ) ) |
LACP partner length.
Definition at line 64 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_COLLECTOR 3 |
LACP collector type.
Definition at line 68 of file eth_slow.h.
#define ETH_SLOW_TLV_LACP_COLLECTOR_LEN ( sizeof ( struct eth_slow_lacp_collector_tlv ) ) |
LACP collector length.
Definition at line 71 of file eth_slow.h.
#define ETH_SLOW_TLV_MARKER_REQUEST 1 |
Marker request type.
Definition at line 75 of file eth_slow.h.
#define ETH_SLOW_TLV_MARKER_REQUEST_LEN ( sizeof ( struct eth_slow_marker_tlv ) ) |
Marker request length.
Definition at line 78 of file eth_slow.h.
#define ETH_SLOW_TLV_MARKER_RESPONSE 2 |
Marker response type.
Definition at line 82 of file eth_slow.h.
#define ETH_SLOW_TLV_MARKER_RESPONSE_LEN ( sizeof ( struct eth_slow_marker_tlv ) ) |
Marker response length.
Definition at line 85 of file eth_slow.h.
#define LACP_SYSTEM_PRIORITY_MAX 0xffff |
Maximum system priority.
Definition at line 138 of file eth_slow.h.
#define LACP_PORT_PRIORITY_MAX 0xff |
Maximum port priority.
Definition at line 141 of file eth_slow.h.
#define LACP_STATE_ACTIVE 0x01 |
LACP entity is active.
Represented by the state character "A"/"a"
Definition at line 147 of file eth_slow.h.
#define LACP_STATE_FAST 0x02 |
LACP timeout is short.
Short timeout is one second, long timeout is 30s
Represented by the state character "F"/"f"
Definition at line 155 of file eth_slow.h.
#define LACP_STATE_AGGREGATABLE 0x04 |
LACP link is aggregateable.
Represented by the state characters "G"/"g"
Definition at line 161 of file eth_slow.h.
#define LACP_STATE_IN_SYNC 0x08 |
LACP link is in synchronisation.
Represented by the state characters "S"/"s"
Definition at line 167 of file eth_slow.h.
#define LACP_STATE_COLLECTING 0x10 |
LACP link is collecting (receiving)
Represented by the state characters "C"/"c"
Definition at line 173 of file eth_slow.h.
#define LACP_STATE_DISTRIBUTING 0x20 |
LACP link is distributing (transmitting)
Represented by the state characters "D"/"d"
Definition at line 179 of file eth_slow.h.
#define LACP_STATE_DEFAULTED 0x40 |
LACP entity is using defaulted partner information.
Represented by the state characters "L"/"l"
Definition at line 185 of file eth_slow.h.
#define LACP_STATE_EXPIRED 0x80 |
LACP entity receive state machine is in EXPIRED.
Represented by the state characters "X"/"x"
Definition at line 191 of file eth_slow.h.
#define LACP_INTERVAL_FAST 1 |
LACP fast interval (1 second)
Definition at line 194 of file eth_slow.h.
#define LACP_INTERVAL_SLOW 30 |
LACP slow interval (30 seconds)
Definition at line 197 of file eth_slow.h.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
struct eth_slow_header __attribute__ | ( | (packed) | ) |
uint8_t subtype |
Slow protocols subtype.
Definition at line 12 of file eth_slow.h.
Referenced by ath5k_txq_setup(), ath_txq_setup(), and golan_eqe_port_subtype_str().
uint8_t version |
Subtype version number.
Definition at line 14 of file eth_slow.h.
uint8_t type |
uint8_t length |
Length.
The length includes the TLV header (except for a TLV terminator, which has a length of zero).
Definition at line 21 of file eth_slow.h.
struct eth_slow_tlv_header tlv |
uint16_t system_priority |
System priority.
Used to determine the order in which ports are selected for aggregation.
Definition at line 18 of file eth_slow.h.
uint8_t system |
System identifier.
Requester system.
Used to uniquely identify the system (i.e. the entity with potentially multiple ports).
Definition at line 24 of file eth_slow.h.
Referenced by eisabus_probe(), int22(), ipxe(), pxenv_file_exec(), script_exec_line(), shell(), and smsc95xx_vm3_fetch_mac().
uint16_t key |
Key.
Used to uniquely identify a group of aggregatable ports within a system.
Definition at line 30 of file eth_slow.h.
uint16_t port_priority |
Port priority.
Used to determine the order in which ports are selected for aggregation.
Definition at line 36 of file eth_slow.h.
uint16_t port |
Port identifier.
Requester port.
Used to uniquely identify a port within a system.
Definition at line 41 of file eth_slow.h.
uint8_t state |
State.
This is the bitwise OR of zero or more LACP_STATE_XXX constants.
Definition at line 47 of file eth_slow.h.
Referenced by aes_addroundkey(), chap_finish(), chap_init(), com32_exec_loop(), comboot_exec_loop(), dhcp_set_state(), dhcpv6_set_state(), drbg_generate(), drbg_generate_algorithm(), drbg_instantiate(), drbg_instantiate_algorithm(), drbg_reseed(), drbg_reseed_algorithm(), drbg_uninstantiate(), eth_slow_lacp_state_name(), flexboot_nodnic_eth_open(), flexboot_nodnic_poll_eq(), force_reseed_required(), getsda(), hermon_dump_qpctx(), hmac_drbg_generate(), hmac_drbg_instantiate(), hmac_drbg_reseed(), hmac_drbg_test_exec(), hmac_drbg_update(), hmac_drbg_update_key(), hmac_drbg_update_value(), ne_probe1(), netfront_reset(), nodnic_port_get_state(), setscl(), setsda(), spi_bit_set_slave_select(), tcp_state(), vmxnet3_check_link(), xenbus_backend_state(), xenbus_backend_wait(), and xenbus_set_state().
uint8_t reserved[90] |
Reserved.
Definition at line 49 of file eth_slow.h.
uint16_t max_delay |
Maximum delay (in 10us increments)
Definition at line 14 of file eth_slow.h.
uint32_t xact |
Requester transaction ID.
Definition at line 18 of file eth_slow.h.
Referenced by linda_ib_epb_read(), linda_ib_epb_wait(), linda_ib_epb_write(), qib7322_ahb_read(), and qib7322_ahb_write().
uint16_t pad |
Padding.
Definition at line 20 of file eth_slow.h.
struct eth_slow_header header |
Slow protocols header.
Definition at line 12 of file eth_slow.h.
struct eth_slow_lacp_entity_tlv actor |
Actor information.
Definition at line 14 of file eth_slow.h.
struct eth_slow_lacp_entity_tlv partner |
Partner information.
Definition at line 16 of file eth_slow.h.
Referenced by dhe_key(), and TLan_FinishReset().
struct eth_slow_lacp_collector_tlv collector |
Collector information.
Definition at line 18 of file eth_slow.h.
struct eth_slow_terminator_tlv terminator |
Terminator.
Definition at line 20 of file eth_slow.h.
Referenced by bios_ansi_seq(), print_user_string(), and syslog_send().
struct eth_slow_marker marker |
Marker information.
Marker packet.
Definition at line 14 of file eth_slow.h.
Referenced by eth_slow_marker_dump(), eth_slow_marker_rx(), and pem_marker().
struct eth_slow_lacp lacp |
LACP packet.
Definition at line 14 of file eth_slow.h.
Referenced by eth_slow_lacp_dump(), and eth_slow_lacp_rx().