SPRACN3 September 2019 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , 66AK2L06 , AM5K2E02 , AM5K2E04
On K2E devices, there is an errata associated with ethernet boot that prevents the device to directly boot the ethernet. For more information, see the KeyStoneII.BTS_errata_advisory.25 in the K2E device errata here. The example included in the path examples/k2e/eth/multistage shows how to apply the fix to the Ethernet ROM code and PHY on the K2E EVM. The first stage is built by default for UART and I2C , but the makefile can be modified to rebuild the image into one that can be loaded onto NAND or NOR. The first stage is designed to apply the fix. After this image is loaded and finished executing, the device transmits the BOOTP packets at a regular intervals, which uses the MAC ID of the device to load an image over ethernet.
The PHY workaround code in ethWard.c can be safely removed if this example is not running on the K2E/K2L EVM. This code starts with the comment "EVM PHY Workaround" and ends at "End of EVM PHY Workaround." The function call 'setup_Marvell_Phy(1);' in main() can also be removed, if desired.