I'm writing a Ethernet device driver for the LS1021A Tower board. Currently, I'm trying to use only eTSEC3 port with internal DMA and shared MDIO of eTSEC1. My interrupt handler is getting fired every time I try to do tx/rx with an EBERR error interrupt. I understand it is a bus error, but cannot figure out why it is occurring. I have already set up the TxBDs and RxBDs, as well as all the relevant registers (eTSEC3_TBDBPH, _RCTRL, DMACTRL etc.). I updated my code to use non-cacheable memory, but the behavior does not change. Is there something I'm missing during init/config? Do I need to do some SMMU3 related stuff (not doing any currently), like setting up the SCFG_MAC3_ICID and such?