X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=docs%2FAPI%2Fethdi_8c.html;fp=docs%2FAPI%2Fethdi_8c.html;h=564cea304a17c0c19d435d2ba8369db2cdcd6d7f;hb=870e1b86b0c74169b215c166dee787c7c1a20d06;hp=0000000000000000000000000000000000000000;hpb=298022ce50fa8133cc880507170c4b7120d227b5;p=o-du%2Fphy.git diff --git a/docs/API/ethdi_8c.html b/docs/API/ethdi_8c.html new file mode 100644 index 0000000..564cea3 --- /dev/null +++ b/docs/API/ethdi_8c.html @@ -0,0 +1,625 @@ + + + + + + + +o-du/phy: ethdi.c File Reference + + + + + + + + + +
+
+ + + + + + +
+
o-du/phy +
+
Intel O-RAN/X-RAN Generated Doxygen Documentation
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+Macros | +Functions | +Variables
+
+
ethdi.c File Reference
+
+
+ +

This file has all definitions for the Ethernet Data Interface Layer. +More...

+
#include <stdio.h>
+#include <string.h>
+#include <stdint.h>
+#include <errno.h>
+#include <sys/queue.h>
+#include <err.h>
+#include <assert.h>
+#include <linux/limits.h>
+#include <sys/types.h>
+#include <stdlib.h>
+#include <sys/time.h>
+#include <time.h>
+#include <unistd.h>
+#include <rte_config.h>
+#include <rte_common.h>
+#include <rte_log.h>
+#include <rte_memory.h>
+#include <rte_memcpy.h>
+#include <rte_memzone.h>
+#include <rte_eal.h>
+#include <rte_per_lcore.h>
+#include <rte_launch.h>
+#include <rte_atomic.h>
+#include <rte_cycles.h>
+#include <rte_prefetch.h>
+#include <rte_lcore.h>
+#include <rte_branch_prediction.h>
+#include <rte_interrupts.h>
+#include <rte_pci.h>
+#include <rte_debug.h>
+#include <rte_ethdev.h>
+#include <rte_ring.h>
+#include <rte_mbuf.h>
+#include <rte_timer.h>
+#include "ethernet.h"
+#include "ethdi.h"
+#include "xran_fh_o_du.h"
+#include "xran_mlog_lnx.h"
+#include "xran_printf.h"
+#include "../src/xran_lib_mlog_tasks_id.h"
+
+Include dependency graph for ethdi.c:
+
+
+ + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + +

+Macros

#define _GNU_SOURCE
 
#define BURST_RX_IO_SIZE   48
 
#define CHECK_INTERVAL   100 /* 100ms */
 
#define MAX_CHECK_TIME   90 /* 9s (90 * 100ms) in total */
 
+ + + + + + + + + + + + + + + + + +

+Functions

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)
 
int xran_handle_ether (uint16_t ethertype, struct rte_mbuf *pkt, uint64_t rx_time)
 
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)
 
int32_t process_dpdk_io (void)
 
+ + + + + + + + + + + + +

+Variables

struct xran_ethdi_ctx g_ethdi_ctx = { 0 }
 
enum xran_if_state xran_if_current_state = XRAN_STOPPED
 
struct {
   uint16_t   ethertype
 
   ethertype_handler   fn
 
xran_ethertype_handlers []
 
+

Detailed Description

+

This file has all definitions for the Ethernet Data Interface Layer.

+
Author
Intel Corporation
+ +

Definition in file ethdi.c.

+

Macro Definition Documentation

+ +

◆ _GNU_SOURCE

+ +
+
+ + + + +
#define _GNU_SOURCE
+
+ +

Definition at line 26 of file ethdi.c.

+ +
+
+ +

◆ BURST_RX_IO_SIZE

+ +
+
+ + + + +
#define BURST_RX_IO_SIZE   48
+
+ +

Definition at line 72 of file ethdi.c.

+ +
+
+ +

◆ CHECK_INTERVAL

+ +
+
+ + + + +
#define CHECK_INTERVAL   100 /* 100ms */
+
+ +
+
+ +

◆ MAX_CHECK_TIME

+ +
+
+ + + + +
#define MAX_CHECK_TIME   90 /* 9s (90 * 100ms) in total */
+
+ +
+
+

Function Documentation

+ +

◆ process_dpdk_io()

+ +
+
+ + + + + + + + +
int32_t process_dpdk_io (void )
+
+ +

Definition at line 445 of file ethdi.c.

+ +
+
+ +

◆ xran_ethdi_filter_packet()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_ethdi_filter_packet (struct rte_mbuf * pkt,
uint64_t rx_time 
)
+
+ +

Definition at line 156 of file ethdi.c.

+
+Here is the caller graph for this function:
+
+
+ + + +
+ +
+
+ +

◆ xran_ethdi_init_dpdk_io()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int xran_ethdi_init_dpdk_io (char * name,
const struct xran_io_loop_cfgio_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 
)
+
+ +

Definition at line 288 of file ethdi.c.

+
+Here is the caller graph for this function:
+
+
+ + + + +
+ +
+
+ +

◆ xran_ethdi_mbuf_alloc()

+ +
+
+ + + + + + + + +
struct rte_mbuf* xran_ethdi_mbuf_alloc (void )
+
+ +

Definition at line 77 of file ethdi.c.

+
+Here is the caller graph for this function:
+
+
+ + + + +
+ +
+
+ +

◆ xran_ethdi_mbuf_send()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_ethdi_mbuf_send (struct rte_mbuf * mb,
uint16_t ethertype 
)
+
+ +

Definition at line 82 of file ethdi.c.

+ +
+
+ +

◆ xran_ethdi_mbuf_send_cp()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_ethdi_mbuf_send_cp (struct rte_mbuf * mb,
uint16_t ethertype 
)
+
+ +

Definition at line 94 of file ethdi.c.

+ +
+
+ +

◆ xran_handle_ether()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
int xran_handle_ether (uint16_t ethertype,
struct rte_mbuf * pkt,
uint64_t rx_time 
)
+
+ +

Definition at line 140 of file ethdi.c.

+ +
+
+ +

◆ xran_register_ethertype_handler()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int xran_register_ethertype_handler (uint16_t ethertype,
ethertype_handler callback 
)
+
+ +

Definition at line 124 of file ethdi.c.

+
+Here is the caller graph for this function:
+
+
+ + + + +
+ +
+
+

Variable Documentation

+ +

◆ ethertype

+ +
+
+ + + + +
uint16_t ethertype
+
+ +

Definition at line 114 of file ethdi.c.

+ +
+
+ +

◆ fn

+ +
+
+ + + + +
ethertype_handler fn
+
+ +

Definition at line 115 of file ethdi.c.

+ +
+
+ +

◆ g_ethdi_ctx

+ +
+
+ + + + +
struct xran_ethdi_ctx g_ethdi_ctx = { 0 }
+
+ +

Definition at line 74 of file ethdi.c.

+ +
+
+ +

◆ xran_ethertype_handlers

+ +
+
+ + + + +
struct { ... } xran_ethertype_handlers[]
+
+Initial value:
= {
{ ETHER_TYPE_ETHDI, NULL },
{ ETHER_TYPE_ECPRI, NULL },
}
#define ETHER_TYPE_ECPRI
Definition: ethernet.h:42
+
#define ETHER_TYPE_START_TX
Definition: ethernet.h:44
+
#define ETHER_TYPE_ETHDI
Definition: ethernet.h:41
+
+
+
+ +

◆ xran_if_current_state

+ +
+
+ + + + +
enum xran_if_state xran_if_current_state = XRAN_STOPPED
+
+ +

Definition at line 75 of file ethdi.c.

+ +
+
+
+ + + +