For your RTOS, do you know if communication to phy works? Do you get Link up and Ping fails or both? Maybe your design use wrong phy address (--> it's 1 instead of 0 from TE0720)
As a test: If I disconnect the ethernet cable and reboot, I get an error during initialization. Also as a test, I temporarily disconnected the MDC/MDIO lines today which also caused an error during initialization.
When the ethernet cable/MDC/MDIO pins are connected, my RTOS is able to communicate with the PHY and link is occurring. Just no ping.
Regarding the PHY Address being 1 vs 0: I never changed anything in my original RTOS net config when using the TE0720. Perhaps it worked simply because it defaults to 0. For the TE0745, I will look how to configure for address 1. For the Marvell 88E1512 what is the difference when the config pin is set high (PHY Addr == 1) vs low (PHY Addr == 0)? The Marvell datasheet doesn't give me a lot to go on.
or your RTOS hold the PHY into reset (rather unlikely but possible)
I traced the ethernet reset and it looks like the FSBL initializes the PS/performs all peripheral resets by calling the function: ps7_init() --> ps7_config() --> ps7_peripherals_init_data[]. The array is a series of registers writes. Since my RTOS never calls the ps7_init(), I don't think it has the ability to reset the ethernet which is ok because the FSBL will have already configured the PS.