This layer 2 icssg example demonstrates usage of Enet with ICSSG peripheral operation.
==========================
MULTIPORT TEST
==========================
Init Enet's OSAL and utils to use defaults
Init memory utils
Create clock and task for periodic tick
Create periodic tick task
Create periodic tick clock
Open Main UDMA driver
Init all peripheral clocks
----------------------------------------------
Enabling clocks!
Init all configs
----------------------------------------------
icssg1: init config
Open all peripherals
----------------------------------------------
icssg1: Open enet
icssg1: Register async IOCTL callback
icssg1: Register TX timestamp callback
Attach core id 1 on all peripherals
----------------------------------------------
icssg1: Attach core
Create RX tasks
----------------------------------------------
icssg1: Create RX task
icssg1: Open port 1
icssg1: Open port 1 link
EnetPhy_bindDriver: PHY 15: OUI:080028 Model:0f Ver:01 <-> 'dp83869' : OK
icssg1: Open port 2
icssg1: Open port 2 link
EnetPhy_bindDriver: PHY 3: OUI:080028 Model:0f Ver:01 <-> 'dp83869' : OK
icssg1: Waiting for link up...
Enet Multiport Menu:
'T' - Enable timestamp prints
't' - Disable timestamp prints
's' - Print statistics
'r' - Reset statistics
'm' - Show allocated MAC addresses
'x' - Stop the test
Icssg_handleLinkUp: icssg1: Port 2: Link up: 1-Gbps Full-Duplex
Icssg_handleLinkUp: icssg1: Port 1: Link up: 1-Gbps Full-Duplex
icssg1: Port 1 link is up
icssg1: Set port state to 'Forward'
icssg1: Async IOCTL completed
icssg1: Async IOCTL completed
icssg1: Port 2 link is up
icssg1: Set port state to 'Forward'
icssg1: Async IOCTL completed
icssg1: Async IOCTL completed
icssg1: Open DMA
initQs() txFreePktInfoQ initialized with 8 pkts
icssg1: Set MAC addr: 70:ff:76:1d:92:c1
icssg1: MAC port addr: 70:ff:76:1d:92:c1
Invalid option, try again...
Enet Multiport Menu:
'T' - Enable timestamp prints
't' - Disable timestamp prints
's' - Print statistics
'r' - Reset statistics
'm' - Show allocated MAC addresses
'x' - Stop the test
T
Enable timestamp prints
icssg1: Port 2: RX-to-TX timestamp delta = 41324 (RX=27019158184, TX=27019199508)
icssg1: Port 2: RX-to-TX timestamp delta = 35972 (RX=27019170024, TX=27019205996)
icssg1: Port 2: RX-to-TX timestamp delta = 12469412 (RX=27019181860, TX=27031651272)
icssg1: Port 2: RX-to-TX timestamp delta = 12459496 (RX=27019193700, TX=27031653196)
icssg1: Port 2: RX-to-TX timestamp delta = 12449848 (RX=27019205540, TX=27031655388)
icssg1: Port 2: RX-to-TX timestamp delta = 12439688 (RX=27019217380, TX=27031657068)
icssg1: Port 2: RX-to-TX timestamp delta = 12430028 (RX=27019229220, TX=27031659248)
icssg1: Port 2: RX-to-TX timestamp delta = 12420140 (RX=27019241060, TX=27031661200)
icssg1: Port 2: RX-to-TX timestamp delta = 12410236 (RX=27019252900, TX=27031663136)
icssg1: Port 2: RX-to-TX timestamp delta = 12400584 (RX=27019264740, TX=27031665324)
icssg1: Port 1: RX-to-TX timestamp delta = 48996 (RX=34153601112, TX=34153650108)
icssg1: Drop due to TX pkt not available
icssg1: Port 1: RX-to-TX timestamp delta = 8513776 (RX=34153612952, TX=34162126728)
icssg1: Port 1: RX-to-TX timestamp delta = 8503872 (RX=34153624792, TX=34162128664)
icssg1: Port 1: RX-to-TX timestamp delta = 8494220 (RX=34153636632, TX=34162130852)
icssg1: Port 1: RX-to-TX timestamp delta = 8484304 (RX=34153648472, TX=34162132776)
icssg1: Port 1: RX-to-TX timestamp delta = 8474392 (RX=34153660312, TX=34162134704)
icssg1: Port 1: RX-to-TX timestamp delta = 8464740 (RX=34153672152, TX=34162136892)
icssg1: Port 1: RX-to-TX timestamp delta = 8454836 (RX=34153683992, TX=34162138828)
icssg1: Port 1: RX-to-TX timestamp delta = 8444944 (RX=34153695832, TX=34162140776)
s
Print statistics
----------------------------------------------
icssg1 - PA statistics
--------------------------------
hostRxByteCnt = 2560
hostTxByteCnt = 2356
hostRxPktCnt = 20
hostTxPktCnt = 19
icssg1 - Port 1 statistics
--------------------------------
rxGoodFrames = 10
rxBCastFrames = 10
rxMCastFrames = 10
rxClass8 = 10
rxClass9 = 10
rxBucket2SizedFrame = 10
rxTotalByte = 1280
rxTxTotalByte = 4000
txGoodFrame = 19
txBcastFrame = 10
txMcastFrame = 10
txBucket3SizedFrame = 19
txTotalByte = 2584
icssg1 - Port 2 statistics
--------------------------------
rxGoodFrames = 10
rxBCastFrames = 10
rxMCastFrames = 10
rxClass8 = 10
rxClass9 = 10
rxBucket2SizedFrame = 10
rxTotalByte = 1280
rxTxTotalByte = 3864
txGoodFrame = 20
txBcastFrame = 10
txMcastFrame = 10
txBucket3SizedFrame = 20
txTotalByte = 2720