o-du/phy
Intel O-RAN/X-RAN Generated Doxygen Documentation
|
This file has all definitions for the Ethernet Data Interface Layer. More...
#include <rte_config.h>
#include <rte_mbuf.h>
#include <rte_timer.h>
#include "ethernet.h"
#include "xran_fh_o_du.h"
Go to the source code of this file.
Data Structures | |
struct | xran_io_loop_cfg |
struct | xran_ethdi_ctx |
Macros | |
#define | XRAN_THREAD_DEFAULT_PRIO (98) |
#define | PING_INTERVAL 300 /* (us) */ |
#define | PING_BUSY_POLL 50 /* (us) how long to actively wait for response */ |
#define | SLEEP_TIME 200 /* (us) */ |
#define | BCAST {0xff, 0xff, 0xff, 0xff, 0xff, 0xff} |
#define | TX_TIMER_INTERVAL ((rte_get_timer_hz() / 1000000000L)*interval_us*1000) /* nanosec */ |
#define | TX_RX_LOOP_TIME rte_get_timer_hz() / 1 |
Typedefs | |
typedef int(* | PROCESS_CB) (void *arg) |
typedef int(* | xran_ethdi_handler) (struct rte_mbuf *, int sender, uint64_t rx_time) |
typedef int(* | ethertype_handler) (struct rte_mbuf *, uint64_t rx_time) |
typedef void() | xran_ethdi_tx_callback(struct rte_timer *tim, void *arg) |
Enumerations | |
enum | xran_ping_states { PING_IDLE, PING_NEEDED, AWAITING_PONG } |
enum | xran_ethdi_vf_ports { ETHDI_UP_VF = 0, ETHDI_CP_VF, ETHDI_VF_MAX } |
enum | xran_entities_id { ID_LLS_CU, ID_RU, ID_BROADCAST, ID_MAX } |
enum | { MBUF_KEEP, MBUF_FREE } |
Functions | |
int | xran_register_ethertype_handler (uint16_t ethertype, ethertype_handler callback) |
int | xran_ethdi_init_dpdk_io (char *name, const struct xran_io_loop_cfg *io_cfg, int *lcore_id, struct ether_addr *p_lls_cu_addr, struct ether_addr *p_ru_addr, uint16_t cp_vlan, uint16_t up_vlan) |
struct rte_mbuf * | xran_ethdi_mbuf_alloc (void) |
int | xran_ethdi_mbuf_send (struct rte_mbuf *mb, uint16_t ethertype) |
int | xran_ethdi_mbuf_send_cp (struct rte_mbuf *mb, uint16_t ethertype) |
int | xran_ethdi_filter_packet (struct rte_mbuf *pkt, uint64_t rx_time) |
int32_t | process_dpdk_io (void) |
Variables | |
enum xran_if_state | xran_if_current_state |
uint8_t | ping_dst_id |
struct ether_addr | entities_addrs [] |
This file has all definitions for the Ethernet Data Interface Layer.
Definition in file ethdi.h.
#define PING_BUSY_POLL 50 /* (us) how long to actively wait for response */ |
#define TX_TIMER_INTERVAL ((rte_get_timer_hz() / 1000000000L)*interval_us*1000) /* nanosec */ |
typedef int(* ethertype_handler) (struct rte_mbuf *, uint64_t rx_time) |
typedef int(* xran_ethdi_handler)(struct rte_mbuf *, int sender, uint64_t rx_time) |
typedef void() xran_ethdi_tx_callback(struct rte_timer *tim, void *arg) |
enum xran_entities_id |
enum xran_ethdi_vf_ports |
enum xran_ping_states |
int xran_ethdi_filter_packet | ( | struct rte_mbuf * | pkt, |
uint64_t | rx_time | ||
) |
int xran_ethdi_init_dpdk_io | ( | char * | name, |
const struct xran_io_loop_cfg * | io_cfg, | ||
int * | lcore_id, | ||
struct ether_addr * | p_lls_cu_addr, | ||
struct ether_addr * | p_ru_addr, | ||
uint16_t | cp_vlan, | ||
uint16_t | up_vlan | ||
) |
struct rte_mbuf* xran_ethdi_mbuf_alloc | ( | void | ) |
int xran_ethdi_mbuf_send | ( | struct rte_mbuf * | mb, |
uint16_t | ethertype | ||
) |
int xran_ethdi_mbuf_send_cp | ( | struct rte_mbuf * | mb, |
uint16_t | ethertype | ||
) |
int xran_register_ethertype_handler | ( | uint16_t | ethertype, |
ethertype_handler | callback | ||
) |
struct ether_addr entities_addrs[] |
uint8_t ping_dst_id |
enum xran_if_state xran_if_current_state |