Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

| 
- data - Driver tcl and MDD file.
|
- examples - Reference application to show how to use the driver APIs and calling sequence
|
- src- Driver source files

Features Supported

Controller Features

  • Parameterized AXI4 slave interface based on the AXI4 or AXI4-Lite specification for transmit and receive data dual port memory access
  • Media Independent Interface (MII) for connection to external 10/100 Mb/s PHY transceivers
  • Independent internal 2K byte TX and RX dual port memory for holding data for one packet
  • Optional dual buffer memories, 4K byte ping-pong, for TX and RX
  • Receive and Transmit Interrupts support
  • Optional Management Data Input/Output (MDIO) interface for PHY access
  • Internal loopback support

Standalone Driver Supported Features

The Emaclite Standalone driver supports the below things.
  • Supports Internal loopback mode
  • Supports Ping pong buffers for both RX and TX
  • Supports MII for connection to external 10/100 Mb/s PHY transceivers
  • Supports accessing of PHY through MDIO interface...

Test cases

  • Refer below pah for testing different examples for each feature of the IP.
https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/emaclite/examples

xemaclite_selftest_example.c : This example performs the self-test on the emaclite device example does a write to Tx buffer and read back's to verify
similarly write to Rx buffer and read back's to verify.
xemaclite_internal_loopback_example.c : This is an interrupt example outlining the use of interrupts and callbacks in the transmission/reception of Ethernet frames using internal loopback
with an incrementing payload from 1 byte to 1500 bytes (excluding Ethernet Header and FCS).
xemaclite_intr_example.c : This is an interrupt example outlining the use of interrupts and callbacks in the transmission/reception of an Ethernet frame of 1000 bytes of payload.
xemaclite_polled_example.c : This is a polled mode example outlining the transmission/reception of an Ethernet frame of 1000 bytes of payload.
xemaclite_phy_loopback_example.c : This is an interrupt example outlining the use of interrupts and callbacks in the transmission/reception of Ethernet frames using MAC loop back in
the PHY device with an incrementing payload from 1 byte to 1500 bytes (excluding Ethernet Header and FCS).
This example can be run only when the MDIO interface is configured in the EmacLite core
xemaclite_ping_req_example.c : This is an EmacLite Ping request example in polled mode. This example will generate a ping request for the specified IP address.
xemaclite_ping_reply_example.c : This is an EmacLite ping reply example in polled mode. This example will generate a ping reply when it receives a ping request packet from the external world.

Known issues and Limitations

  • All IP features are supported.

Change Log

2020.2

  • Support parallel make execution.
  • Fix dependencies.props to add missing ".c" extension.
  • Fix selftest failure on ZU+.

4dc85994d6fb Makefile: Remove realpath command
a24b04fe7e38 emaclite: Modify makefile to support parallel make execution
59d275a41e8b emaclite: In dependencies.props fix missing ".c" extension for xemaclite_internal_loopback_example.
cd57849309d7 emaclite: Use correct data type(u32) for To32Ptr

2020.1

  • None

2019.2

  • None
2019.1
  • Fix poll example failure on microblaze platform

...