We are using both eTSECs of P1022 in RGMII mode in our custom board. The problem we are facing is with eTSEC2 which is connected to Marvell's RGMII to Copper PHY(88E1510). From PHY LEDs and MII registers, we have found the link is up and autonegotiation complete. But when we are trying to ping from U-BOOT, we are getting "eTSEC2 : tsec: tx error" and then "eTSEC2 : tsec: tx buffers full".
We have checked the POR value of cfg_tsec1_prtc, cfg_tsec2_prtc and cfg_serdes_ports are 1, 1 and "11111" respectively. We have the following questions on this -
1. What could be the possible reason for this ping failure?
2. We have only fed 125MHz clock from a oscillator in TSEC1_GTX_CLK125. Whereas TSEC2_GTX_CLK125 is kept floating. In GUTs_PMUXCR[1588_USB_PWRFIT] is set to GPIO_1 (i.e. 11). Do we need any other registers to be set for TSEC1_GTX_CLK125 to feed both eTSEC1 and eTSEC2?
3. Another doubt is the autonegotiation result is 100BaseT FDX, whereas it should be 1000BaseT as the link partner is advertising all 10/100/1000BaseT.