Hi, iam using a custom board based on LS1046ARDB,
In my custom board iam using a different phy (Marvell 88e1512), now when i build and create a firmware image iam getting following error in the u-boot log,
EEPROM: NXID v1
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated
Net:
MMC read: dev # 0, block # 18432, count 128 ...
Fman1: Uploading microcode version 106.4.18
Could not get PHY for mdio@fc000: addr 2
Could not get PHY for mdio@fc000: addr 3
Could not get PHY for mdio@fc000: addr 4
eth0: fm1-mac3Could not get PHY for mdio@fc000: addr 2
Could not get PHY for mdio@fc000: addr 3
Could not get PHY for mdio@fc000: addr 4
, eth4: fm1-mac9, eth5: fm1-mac10
Hit any key to stop autoboot: 0
please let me know what needs to be done to resolve this issue.
Thank u.
Solved! Go to Solution.
Hi, i have disabled the "CONFIG_DM_ETH" in config file, and the issue is resolved.
Thank u.
Please modify the following section in u-boot source code board/freescale/ls1046ardb/eth.c according to your custom board.
/* Set the two on-board RGMII PHY address */
fm_info_set_phy_address(FM1_DTSEC3, RGMII_PHY1_ADDR);
fm_info_set_phy_address(FM1_DTSEC4, RGMII_PHY2_ADDR);
/* Set the two on-board SGMII PHY address */
fm_info_set_phy_address(FM1_DTSEC5, SGMII_PHY1_ADDR);
fm_info_set_phy_address(FM1_DTSEC6, SGMII_PHY2_ADDR);
/* Set the on-board AQ PHY address */
fm_info_set_phy_address(FM1_10GEC1, FM1_10GEC1_PHY_ADDR);
switch (srds_s1) {
case 0x1133:
break;
default:
printf("Invalid SerDes protocol 0x%x for LS1046ARDB\n",
srds_s1);
break;
}
dev = miiphy_get_dev_by_name(DEFAULT_FM_MDIO_NAME);
for (i = FM1_DTSEC1; i < FM1_DTSEC1 + CONFIG_SYS_NUM_FM1_DTSEC; i++)
fm_info_set_mdio(i, dev);
/* XFI on lane A, MAC 9 */
dev = miiphy_get_dev_by_name(DEFAULT_FM_TGEC_MDIO_NAME);
fm_info_set_mdio(FM1_10GEC1, dev);
Please define CONFIG_PHY_MARVELL=y in u-boot configuration file configs/ls1046ardb_tfa_defconfig.
Hi, thanks for the information, iam getting the same error even after i chnage the phy adress as per my custom board.
Also after below lines i have given a print statement, but that print statement is also not printing in the boot log.
/* Set the two on-board RGMII PHY address */
fm_info_set_phy_address(FM1_DTSEC3, RGMII_PHY1_ADDR);
fm_info_set_phy_address(FM1_DTSEC4, RGMII_PHY2_ADDR);
let me know what needs to be done.
Is there an option to debug step by step the booting sequence using code warrior tap???
Do you use flex-builder to build u-boot image, if so please remove u-boot build directory and rebuild the firmware image with the following command.
$ rm -rf build/firmware/u-boot/ls1046ardb/
$ flex-builder -c atf -m ls1046ardb -b qspi
$ flex-builder -i mkfw -m ls1046ardb -b qspi
For u-boot debugging, you could refer this document.
Hi, i have disabled the "CONFIG_DM_ETH" in config file, and the issue is resolved.
Thank u.