OpenNSL API Guide and Reference Manual
Data Structures | Macros | Typedefs | Functions
pkt.h File Reference
#include <shared/rx.h>
#include <opennsl/types.h>
#include <opennsl/vlan.h>
#include <opennsl/pktX.h>

Go to the source code of this file.

Data Structures

struct  opennsl_pkt_blk_s
 OPENNSL packet gather block type. More...
 
struct  opennsl_pkt_oam_counter_s
 OAM counter. More...
 
struct  opennsl_pkt_s
 Initialize a OPENNSL packet structure. More...
 

Macros

#define OPENNSL_PKT_F_NO_VTAG   0x4
 Packet does not contain VLAN tag.
 
#define OPENNSL_PKT_F_TRUNK   0x20000000
 Trunk port.
 
#define OPENNSL_PKT_NOF_DNX_HEADERS   _SHR_PKT_NOF_DNX_HEADERS
 
#define OPENNSL_PKT_OAM_COUNTER_MAX   3
 
#define OPENNSL_PKT_ONE_BUF_SETUP(pkt, buf, _len)
 
#define OPENNSL_TX_CRC_ALLOC   0x10
 Allocate buffer for CRC.
 
#define OPENNSL_TX_CRC_APPEND   (OPENNSL_TX_CRC_ALLOC + OPENNSL_TX_CRC_REGEN)
 
#define OPENNSL_TX_CRC_REGEN   0x20
 Regenerate CRC.
 
#define OPENNSL_TX_ETHER   0x100000
 Fully mapped packet TX.
 

Typedefs

typedef struct opennsl_pkt_blk_s opennsl_pkt_blk_t
 OPENNSL packet gather block type.
 
typedef void(* opennsl_pkt_cb_f )(int reserved1, opennsl_pkt_t *reserved2, void *reserved3)
 
typedef struct
opennsl_pkt_oam_counter_s 
opennsl_pkt_oam_counter_t
 OAM counter.
 
typedef struct opennsl_pkt_s opennsl_pkt_t
 The packet structure.
 
typedef _shr_rx_reasons_t opennsl_rx_reasons_t
 Set of 'reasons' (see opennslRxReason*) why a packet came to the CPU.
 

Functions

int opennsl_pkt_alloc (int unit, int size, uint32 flags, opennsl_pkt_t **pkt_buf) LIB_DLL_EXPORTED
 Allocate or deallocate a packet structure and packet data.
 
void opennsl_pkt_blk_t_init (opennsl_pkt_blk_t *pkt_blk) LIB_DLL_EXPORTED
 Initialize a OPENNSL packet block structure.
 
int opennsl_pkt_clear (int unit, opennsl_pkt_t *pkt, opennsl_pkt_blk_t *blks, int blk_count, uint32 flags, opennsl_pkt_t **pkt_buf) LIB_DLL_EXPORTED
 Initialize and set up a opennsl_pkt_t structure.
 
int opennsl_pkt_flags_init (int unit, opennsl_pkt_t *pkt, uint32 init_flags) LIB_DLL_EXPORTED
 Initialize packet flags based on the type of device.
 
int opennsl_pkt_free (int unit, opennsl_pkt_t *pkt) LIB_DLL_EXPORTED
 Allocate or deallocate a packet structure and packet data.
 
int opennsl_pkt_memcpy (opennsl_pkt_t *pkt, int dest_byte, uint8 *src, int len) LIB_DLL_EXPORTED
 Copy data into the data blocks of a packet structure.
 
void opennsl_pkt_t_init (opennsl_pkt_t *pkt) LIB_DLL_EXPORTED
 Initialize a OPENNSL packet structure.
 
void opennsl_rx_reasons_t_init (opennsl_rx_reasons_t *reasons) LIB_DLL_EXPORTED
 Initialize a OPENNSL RX reasons structure.