AM64x MCU+ SDK  09.02.01
enet_mod_macport.h File Reference

Introduction

This file contains the type definitions and helper macros for the Enet MAC port module interface.

Go to the source code of this file.

Data Structures

struct  EnetMacPort_Interface
 MAC port interface. More...
 
struct  EnetMacPort_LinkCfg
 Link speed and duplexity configuration. More...
 
struct  EnetMacPort_GenericInArgs
 Generic MAC port input args. More...
 
struct  EnetMacPort_SetIngressDscpPriorityMapInArgs
 Input args for ENET_MACPORT_IOCTL_SET_INGRESS_DSCP_PRI_MAP command. More...
 
struct  EnetMacPort_SetPriorityRegenMapInArgs
 Input args for ENET_MACPORT_IOCTL_SET_PRI_REGEN_MAP command. More...
 
struct  EnetMacPort_SetEgressPriorityMapInArgs
 Input args for ENET_MACPORT_IOCTL_SET_EGRESS_QOS_PRI_MAP command. More...
 
struct  EnetMacPort_EnableEgressTrafficShapingInArgs
 Input args for ENET_MACPORT_IOCTL_ENABLE_EGRESS_TRAFFIC_SHAPING command. More...
 
struct  EnetMacPort_SetCreditBasedShaperInArgs
 Input args for ENET_MACPORT_IOCTL_SET_CREDIT_BASED_SHAPING command. More...
 
struct  EnetMacPort_GetCreditBasedShaperInArgs
 Input args for ENET_MACPORT_IOCTL_GET_CREDIT_BASED_SHAPING command. More...
 
struct  EnetMacPort_SetPreemptMinFragSizeInArgs
 Input args for ENET_MACPORT_IOCTL_SET_PREEMPT_MIN_FRAG_SIZE. More...
 
struct  EnetMacPort_QueuePreemptCfg
 MacPort Queue Preempt Config. More...
 
struct  EnetMacPort_SetPreemptQueueInArgs
 Input args for ENET_MACPORT_IOCTL_SET_PREEMPT_QUEUE. More...
 

Macros

#define ENET_MACPORT_PUBLIC_IOCTL(x)
 Helper macro to create IOCTL commands for MAC port module. More...
 
#define ENET_MACPORT_PRIVATE_IOCTL(x)
 Helper macro to create private IOCTL commands for MAC Port module. More...
 

Enumerations

enum  EnetMacPort_Ioctl {
  ENET_MACPORT_IOCTL_GET_VERSION = ENET_MACPORT_PUBLIC_IOCTL(0U), ENET_MACPORT_IOCTL_PRINT_REGS = ENET_MACPORT_PUBLIC_IOCTL(1U), ENET_MACPORT_IOCTL_SET_INGRESS_DSCP_PRI_MAP = ENET_MACPORT_PUBLIC_IOCTL(2U), ENET_MACPORT_IOCTL_GET_INGRESS_DSCP_PRI_MAP = ENET_MACPORT_PUBLIC_IOCTL(3U),
  ENET_MACPORT_IOCTL_SET_PRI_REGEN_MAP = ENET_MACPORT_PUBLIC_IOCTL(4U), ENET_MACPORT_IOCTL_GET_PRI_REGEN_MAP = ENET_MACPORT_PUBLIC_IOCTL(5U), ENET_MACPORT_IOCTL_SET_EGRESS_QOS_PRI_MAP = ENET_MACPORT_PUBLIC_IOCTL(6U), ENET_MACPORT_IOCTL_GET_EGRESS_QOS_PRI_MAP = ENET_MACPORT_PUBLIC_IOCTL(7U),
  ENET_MACPORT_IOCTL_ENABLE_EGRESS_TRAFFIC_SHAPING = ENET_MACPORT_PUBLIC_IOCTL(8U), ENET_MACPORT_IOCTL_DISABLE_EGRESS_TRAFFIC_SHAPING = ENET_MACPORT_PUBLIC_IOCTL(9U), ENET_MACPORT_IOCTL_GET_EGRESS_TRAFFIC_SHAPING = ENET_MACPORT_PUBLIC_IOCTL(10U), ENET_MACPORT_IOCTL_GET_MAXLEN = ENET_MACPORT_PUBLIC_IOCTL(11U),
  ENET_MACPORT_IOCTL_GET_LINK_CFG = ENET_MACPORT_PUBLIC_IOCTL(12U), ENET_MACPORT_IOCTL_SET_CREDIT_BASED_SHAPING = ENET_MACPORT_PUBLIC_IOCTL(13U), ENET_MACPORT_IOCTL_GET_CREDIT_BASED_SHAPING = ENET_MACPORT_PUBLIC_IOCTL(14U), ENET_MACPORT_IOCTL_IET_RELEASE_PREEMPT_TRAFFIC = ENET_MACPORT_PUBLIC_IOCTL(15U),
  ENET_MACPORT_IOCTL_IET_HOLD_PREEMPT_TRAFFIC = ENET_MACPORT_PUBLIC_IOCTL(16U), ENET_MACPORT_IOCTL_GET_QUEUE_PREEMPT_STATUS = ENET_MACPORT_PUBLIC_IOCTL(17U), ENET_MACPORT_IOCTL_SET_PREEMPT_QUEUE = ENET_MACPORT_PUBLIC_IOCTL(18U), ENET_MACPORT_IOCTL_GET_PREEMPT_MIN_FRAG_SIZE = ENET_MACPORT_PUBLIC_IOCTL(19U),
  ENET_MACPORT_IOCTL_SET_PREEMPT_MIN_FRAG_SIZE = ENET_MACPORT_PUBLIC_IOCTL(20U), ENET_MACPORT_IOCTL_GET_PREEMPT_VERIFY_STATUS = ENET_MACPORT_PUBLIC_IOCTL(21U), ENET_MACPORT_IOCTL_DISABLE_PREEMPT_VERIFICATION = ENET_MACPORT_PUBLIC_IOCTL(22U), ENET_MACPORT_IOCTL_ENABLE_PREEMPT_VERIFICATION = ENET_MACPORT_PUBLIC_IOCTL(23U),
  ENET_MACPORT_IOCTL_GET_PREEMPTION_ACTIVE_STATUS = ENET_MACPORT_PUBLIC_IOCTL(24U), ENET_MACPORT_IOCTL_GET_PREEMPTION_ENABLE_STATUS = ENET_MACPORT_PUBLIC_IOCTL(25U), ENET_MACPORT_IOCTL_DISABLE_PREEMPTION = ENET_MACPORT_PUBLIC_IOCTL(26U), ENET_MACPORT_IOCTL_ENABLE_PREEMPTION = ENET_MACPORT_PUBLIC_IOCTL(27U)
}
 MAC port IOCTL commands. More...
 
enum  EnetMac_LayerType { ENET_MAC_LAYER_MII = 1U, ENET_MAC_LAYER_GMII = 0U, ENET_MAC_LAYER_XGMII = 2U }
 MAC interface layer type. More...
 
enum  EnetMac_SublayerType {
  ENET_MAC_SUBLAYER_STANDARD = 0U, ENET_MAC_SUBLAYER_REDUCED, ENET_MAC_SUBLAYER_SERIAL, ENET_MAC_SUBLAYER_QUAD_SERIAL_MAIN,
  ENET_MAC_SUBLAYER_QUAD_SERIAL_SUB
}
 MAC interface sublayer type. More...
 
enum  EnetMac_VariantType { ENET_MAC_VARIANT_NONE = 0U, ENET_MAC_VARIANT_FORCED }
 MAC interface variant (only for specific interface types). More...
 
enum  EnetMac_SgmiiMode {
  ENET_MAC_SGMIIMODE_INVALID = 0U, ENET_MAC_SGMIIMODE_FIBER_WITH_PHY, ENET_MAC_SGMIIMODE_SGMII_WITH_PHY, ENET_MAC_SGMIIMODE_SGMII_AUTONEG_MASTER,
  ENET_MAC_SGMIIMODE_SGMII_AUTONEG_SLAVE, ENET_MAC_SGMIIMODE_SGMII_FORCEDLINK
}
 SGMII mode. More...
 
enum  EnetMacPort_VlanType { ENET_MACPORT_VLAN_TYPE_NONE = 0x00U, ENET_MACPORT_VLAN_TYPE_SINGLE_TAG = 0x01U, ENET_MACPORT_VLAN_TYPE_STACKED_TAGS = 0x02U }
 VLAN usage type. More...
 
enum  EnetMacPort_PreemptVerifyStatus {
  ENET_MAC_VERIFYSTATUS_UNKNOWN = 0U, ENET_MAC_VERIFYSTATE_INITIAL, ENET_MAC_VERIFYSTATE_VERIFYING, ENET_MAC_VERIFYSTATUS_SUCCEEDED,
  ENET_MAC_VERIFYSTATUS_FAILED, ENET_MAC_VERIFYSTATUS_DISABLED, ENET_MAC_VERIFYSTATUS_RXRESPOND_ERROR, ENET_MAC_VERIFYSTATUS_RXVERIFY_ERROR
}
 MacPort IET Verification status. More...
 
enum  EnetMacPort_QueuePreemptMode { ENET_MAC_QUEUE_PREEMPT_MODE_EXPRESS, ENET_MAC_QUEUE_PREEMPT_MODE_PREEMPT }
 Queue preemptive mode: express or preemptive. More...
 

Functions

static bool EnetMacPort_isMii (const EnetMacPort_Interface *mii)
 Check if interface is MII. More...
 
static bool EnetMacPort_isRmii (const EnetMacPort_Interface *mii)
 Check if interface is RMII. More...
 
static bool EnetMacPort_isGmii (const EnetMacPort_Interface *mii)
 Check if interface is GMII. More...
 
static bool EnetMacPort_isRgmii (const EnetMacPort_Interface *mii)
 Check if interface is RGMII. More...
 
static bool EnetMacPort_isSgmii (const EnetMacPort_Interface *mii)
 Check if interface is SGMII. More...
 
static bool EnetMacPort_isQsgmii (const EnetMacPort_Interface *mii)
 Check if interface is QSGMII. More...
 
static bool EnetMacPort_isXfi (const EnetMacPort_Interface *mii)
 Check if interface is XFI. More...