|
AM243x MCU+ SDK
09.02.01
|
|
Go to the documentation of this file.
62 #ifndef CPSW_MACPORT_H_
63 #define CPSW_MACPORT_H_
80 #define CPSW_MACPORT_PUBLIC_IOCTL(x) (ENET_IOCTL_TYPE_PUBLIC | \
81 ENET_IOCTL_MACPORT_BASE | \
82 ENET_IOCTL_PER_CPSW | \
88 #define CPSW_MACPORT_EST_TIME_INTERVAL_MIN (0x010U)
91 #define CPSW_MACPORT_EST_TIME_INTERVAL_MAX (0x3FFFU)
94 #define CPSW_MACPORT_EST_TIME_STEP_1G (8U)
97 #define CPSW_MACPORT_EST_TIME_STEP_100M (40U)
100 #define CPSW_MACPORT_EST_TIME_STEP_10M (400U)
103 #define CPSW_MACPORT_EST_TIME_MIN(speed) (CPSW_MACPORT_EST_TIME_STEP_##speed * CPSW_MACPORT_EST_TIME_INTERVAL_MIN)
106 #define CPSW_MACPORT_EST_TIME_MAX(speed) (CPSW_MACPORT_EST_TIME_STEP_##speed * CPSW_MACPORT_EST_TIME_INTERVAL_MAX)
109 #define CPSW_MACPORT_EST_ALLOWCNT_FACTOR_1G (1U)
112 #define CPSW_MACPORT_EST_ALLOWCNT_FACTOR_100M (2U)
115 #define CPSW_MACPORT_EST_ALLOWCNT_FACTOR_10M (2U)
119 #define CPSW_MACPORT_EST_GUARD_BAND(maxPktSize, speed) (((((maxPktSize) + 4U) * \
120 CPSW_MACPORT_EST_ALLOWCNT_FACTOR_##speed) + 292U) * \
121 CPSW_MACPORT_EST_TIME_STEP_##speed)
124 #define CPSW_MACPORT_GIGABIT_IET_VERIFY_TIMEOUT_NS (10*1000*1000)
127 #define CPSW_MACPORT_RX_MAX_BLKS_IET (7U)
130 #define CPSW_MACPORT_TX_MAX_BLKS_IET (13U)
133 #define CPSW_MACPORT_RX_MAX_BLKS_DEFAULT (4U)
136 #define CPSW_MACPORT_TX_MAX_BLKS_DEFAULT (16U)
145 typedef enum CpswMacPort_Ioctl_s
198 typedef struct CpswMacPort_TxShortIpgCfg_s
221 typedef struct CpswMacPort_PortTxShortIpgCfg_s
233 typedef enum CpswMacPort_InterVlanRouteId_e
257 typedef struct CpswMacPort_InterVlanRoutingCfg_s
291 typedef struct CpswMacPort_FifoStats_s
325 typedef struct CpswMacPort_IpTsCfg_s
361 typedef struct CpswMacPort_TsEventCfg_s
420 typedef struct CpswMacPort_EnableTsEventInArgs_s
432 typedef enum CpswMacPort_EstTimestampMode_e
451 typedef struct CpswMacPort_EstTimestampCfg_s
472 typedef struct CpswMacPort_Cfg_s
uint32_t rxPreemptBlockCount
Definition: cpsw_macport.h:314
bool passPriorityTaggedUnchanged
Definition: cpsw_macport.h:486
CpswMacPort_EstTimestampMode
EST timestamping modes.
Definition: cpsw_macport.h:433
Enet_MacPort macPort
Definition: cpsw_macport.h:423
uint32_t txStartWords
Definition: cpsw_macport.h:298
uint32_t rxMaxBlocks
Definition: cpsw_macport.h:305
@ CPSW_MACPORT_INTERVLAN_ROUTEID_2
Definition: cpsw_macport.h:242
bool tsPort320En
Definition: cpsw_macport.h:352
bool txShortGapEn
Definition: cpsw_macport.h:203
bool tsIp132En
Definition: cpsw_macport.h:343
This file contains the type definitions and helper macros for the Enet MAC port module interface.
bool txAnnexFEn
Definition: cpsw_macport.h:376
EnetMacPort_VlanType txVlanType
Definition: cpsw_macport.h:385
bool forceUntaggedEgress
Definition: cpsw_macport.h:274
CpswMacPort_Ioctl
CPSW MAC port IOCTL commands.
Definition: cpsw_macport.h:146
VLAN configuration parameters.
Definition: enet_mod_port.h:68
EnetMacPort_VlanType rxVlanType
Definition: cpsw_macport.h:388
uint32_t txBlockCount
Definition: cpsw_macport.h:308
bool tsPort319En
Definition: cpsw_macport.h:349
@ CPSW_MACPORT_INTERVLAN_ROUTEID_1
Definition: cpsw_macport.h:239
Port IP configuration for time synchronization events.
Definition: cpsw_macport.h:326
bool txShortGapLimitEn
Definition: cpsw_macport.h:215
@ CPSW_MACPORT_EST_TIMESTAMP_FIRST_ONEPRI
Definition: cpsw_macport.h:444
uint32_t domainOffset
Definition: cpsw_macport.h:414
Enet_MacPort
MAC port.
Definition: enet_types.h:409
MAC port's short gap configuration.
Definition: cpsw_macport.h:222
@ CPSW_MACPORT_INTERVLAN_ROUTEID_3
Definition: cpsw_macport.h:245
bool tsIp130En
Definition: cpsw_macport.h:337
bool replaceDASA
Definition: cpsw_macport.h:270
Port interVLAN configuration parameters.
Definition: cpsw_macport.h:258
Enet_CrcType crcType
Definition: cpsw_macport.h:478
Configuration of transmit short inter packet gap feature.
Definition: cpsw_macport.h:199
EnetPort_VlanCfg vlanCfg
Definition: cpsw_macport.h:489
bool loopbackEn
Definition: cpsw_macport.h:475
CpswMacPort_TxShortIpgCfg shortIpgCfg
Definition: cpsw_macport.h:227
@ CPSW_MACPORT_EST_TIMESTAMP_FIRST
Definition: cpsw_macport.h:441
bool tsIp131En
Definition: cpsw_macport.h:340
CpswMacPort_EstTimestampMode mode
Definition: cpsw_macport.h:457
void CpswMacPort_initCfg(CpswMacPort_Cfg *macPortCfg)
Initialize CPSW MAC port configuration parameters.
Port configuration for time synchronization.
Definition: cpsw_macport.h:362
@ CPSW_MACPORT_INTERVLAN_ROUTEID_LAST
Definition: cpsw_macport.h:251
EnetMacPort_VlanType
VLAN usage type.
Definition: enet_mod_macport.h:469
@ CPSW_MACPORT_IOCTL_ENABLE_CPTS_EVENT
Enable Ethernet port CPTS event.
Definition: cpsw_macport.h:163
#define ENET_PRI_NUM
Packet priority.
Definition: enet_types.h:165
bool txAnnexEEn
Definition: cpsw_macport.h:370
MAC port module configuration parameters.
Definition: cpsw_macport.h:473
CpswMacPort_IpTsCfg commonPortIpCfg
Definition: cpsw_macport.h:399
@ CPSW_MACPORT_IOCTL_EST_ENABLE_TIMESTAMP
Enable EST packet timestamping functionality.
Definition: cpsw_macport.h:183
bool tsIp107En
Definition: cpsw_macport.h:346
bool tsIp129En
Definition: cpsw_macport.h:334
uint8_t domain
Definition: cpsw_macport.h:466
EnetPort_EgressPriorityType
Egress priority type.
Definition: enet_mod_port.h:83
FIFO related statistics of a MAC port.
Definition: cpsw_macport.h:292
EnetMac_SgmiiMode sgmiiMode
Definition: cpsw_macport.h:495
uint32_t vlanLType2
Definition: cpsw_macport.h:396
uint32_t rxExpressBlockCount
Definition: cpsw_macport.h:311
Input args for CPSW_MACPORT_IOCTL_ENABLE_CPTS_EVENT.
Definition: cpsw_macport.h:421
uint32_t vlanLType1
Definition: cpsw_macport.h:392
@ CPSW_MACPORT_EST_TIMESTAMP_ONEPRI
Definition: cpsw_macport.h:438
uint32_t txMaxBlocks
Definition: cpsw_macport.h:301
bool rxAnnexFEn
Definition: cpsw_macport.h:379
bool rxAnnexEEn
Definition: cpsw_macport.h:373
@ CPSW_MACPORT_IOCTL_DISABLE_CPTS_EVENT
Disable Ethernet port CPTS event.
Definition: cpsw_macport.h:172
EnetPort_EgressPriorityType txPriorityType
Definition: cpsw_macport.h:492
@ CPSW_MACPORT_INTERVLAN_ROUTEID_FIRST
Definition: cpsw_macport.h:236
bool ltype2En
Definition: cpsw_macport.h:408
bool decrementTTL
Definition: cpsw_macport.h:285
uint32_t rxMtu
Definition: cpsw_macport.h:482
Enet_MacPort macPort
Definition: cpsw_macport.h:224
bool rxAnnexDEn
Definition: cpsw_macport.h:367
uint32_t seqIdOffset
Definition: cpsw_macport.h:411
uint32_t messageType
Definition: cpsw_macport.h:405
@ CPSW_MACPORT_INTERVLAN_ROUTEID_4
Definition: cpsw_macport.h:248
@ CPSW_MACPORT_IOCTL_GET_FIFO_STATS
Get MAC port FIFO statistics.
Definition: cpsw_macport.h:154
@ CPSW_MACPORT_EST_TIMESTAMP_ALL
Definition: cpsw_macport.h:435
CpswMacPort_TsEventCfg tsEventCfg
Definition: cpsw_macport.h:426
bool txAnnexDEn
Definition: cpsw_macport.h:364
CpswMacPort_InterVlanRouteId
MAC port interVLAN route identifier.
Definition: cpsw_macport.h:234
@ CPSW_MACPORT_IOCTL_EST_DISABLE_TIMESTAMP
Disable EST packet timestamping functionality.
Definition: cpsw_macport.h:192
#define CPSW_MACPORT_PUBLIC_IOCTL(x)
Helper macro to create IOCTL commands for CPSW MAC port module.
Definition: cpsw_macport.h:80
bool unicastEn
Definition: cpsw_macport.h:331
uint32_t vlanId
Definition: cpsw_macport.h:266
Enet_MacPort macPort
Definition: cpsw_macport.h:454
#define ENET_MAC_ADDR_LEN
MAC address length in bytes/octets.
Definition: enet_types.h:153
uint32_t rxThroughputRate
Definition: cpsw_macport.h:294
uint8_t priority
Definition: cpsw_macport.h:462
uint32_t mcastType
Definition: cpsw_macport.h:402
Enet_CrcType
CRC type.
Definition: enet_types.h:247
EST timestamping configuration parameters.
Definition: cpsw_macport.h:452
bool txHostTsEn
Definition: cpsw_macport.h:382
bool ttlNonzeroEn
Definition: cpsw_macport.h:328
EnetMac_SgmiiMode
SGMII mode.
Definition: enet_mod_macport.h:418