This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
I have reviewed the following errata documents:
AM64x/AM243x Processor Silicon Revision 1.0, 2.0 (Rev. H)
I have a question regarding the workaround for INDUSTRIAL-COMMUNICATIONS-SDK-AM243X Version: 09.02.00.08 for errata i2305.
i2305 ICSSG: PRU RAM WRT during active FDB lookup write data corruption
Errata i2305 explains that PRU Filter Data Base (FDB) RAM can cause FDB RAM to get corrupted if you write to it during active FDB lookup.
MRP on PROFINET and DLR on EtherNet/IP require an FDB flush to switch the send port.
So I think FDB flushing occurs while FBD is active.
Furthermore, when using MRP with PROFINET, it is necessary to write the forwarding rules for specific packets using PN_setStaticFilterTable when receiving MRP packets.
Q. Do the "icss_fwhal" libraries for PROFINET and EtherNet/IP respectively implement workaround for Errata: i2305?
Hi Ryohei,
We do not support a hardware FDB in switching path with Profinet or EthernetIP 100M firmware.
However, in ICSS_EMAC driver, FDB/Learning table is currently implemented as a Hash table. There is one table for each physical port. It learns source MAC addresses of packets received by the host and maintains a list of devices reside on a particular port.
If there is a need to transmit a packet, the driver performs the lookup in the FDB for the destination MAC address. Through this, it gets the port number on which the recipient device resides. This avoids duplication of traffic on both ports.
- Implementation details :
For more details related to the FDB in ICSS_EMAC, please refer to the "Learning/FDB" section in the ICSS_EMAC design here : https://software-dl.ti.com/processor-industrial-sw/esd/ind_comms_sdk/am243x/09_02_00_08/docs/api_guide_am243x/ICSS_EMAC_DESIGN.html#autotoc_md224
Regards
Archit Dev
Hi Archit,
I understand that the PROFINET or EtherNet/IP 100M firmware does not use the FDB RAM that is causing the problem.
Also, thank you for letting me know about the support for FBD with hash tables.