Hi gyosun,
I have following suggestions for you.
1. It seems that MDIO registers addresses are not correct in your dts file.
Please refer to the following CCS memory map.
0x2_4000 eTSEC 1
0x2_5000 eTSEC 2
0x2_6000 eTSEC 3
Please refer to the following definition provided in P2020RDB dts in Linux SDK.
mdio@24520 {
phy0: ethernet-phy@0 {
interrupts = <3 1 0 0>;
reg = <0x0>;
};
phy1: ethernet-phy@1 {
interrupts = <2 1 0 0>;
reg = <0x1>;
};
};
mdio@25520 {
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
};
};
mdio@26520 {
status = "disabled";
};
2. Please check whether eTSEC2 and eTSEC3 can work normally in u-boot.
3. Please provide the following information under u-boot, it could help to check PHY addresses information corresponding to eTSECx.
=> mii info
PHY 0x00: OUI = 0x1374, Model = 0x07, Rev = 0x04, 1000baseX, HDX
PHY 0x01: OUI = 0x1374, Model = 0x07, Rev = 0x04, 1000baseX, HDX
PHY 0x02: OUI = 0x1374, Model = 0x07, Rev = 0x04, 1000baseX, HDX
PHY 0x1F: OUI = 0x0000, Model = 0x00, Rev = 0x00, 1000baseX, HDX
=> mdio list
FSL_MDIO:
0 - AR8031/AR8033 <--> eTSEC2
1 - AR8031/AR8033 <--> eTSEC1
2 - AR8031/AR8033 <--> eTSEC3
Have a great day,
Yiping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------