Hi.<br><br>
<div>I have 2 Ethernet PHYs connected to Powerpc MPC8313 TSEC1 and TSEC2 interfaces. The PHY I'm having trouble with is a Marvell 88E3015, and its connected to TSEC2. I have mapped them in DTS file as follows:
<br>
<br>
mdio@24520 {
<br>
#address-cells = <1>;
<br>
#size-cells = <0>;
<br>
compatible = "fsl,gianfar-mdio";
<br>
reg = <0x24520 0x20>;
<br>
phy3: ethernet-phy@3 {
<br>
reg = <0x3>;
<br>
device_type = "ethernet-phy";
<br>
};
<br>
phy1: ethernet-phy@1 {
<br>
interrupt-parent = <&ipic>;
<br>
interrupts = <24 0x8>;
<br>
reg = <0x1>;
<br>
device_type = "ethernet-phy";
<br>
};
<br>
};
<br>
<br>
enet0: ethernet@24000 {
<br>
cell-index = <0>;
<br>
device_type = "network";
<br>
compatible = "gianfar";
<br>
reg = <0x24000 0x1000>;
<br>
model = "eTSEC";
<br>
local-mac-address = [ 00 00 00 00 00 00 ];
<br>
interrupts = <32 0x8 33 0x8 34 0x8>;
<br>
interrupt-parent = <&ipic>;
<br>
fixed-link = <3 1 100 1 0>;
<br>
linux,network-index = <0>;
<br>
};
<br>
<br>
enet1: ethernet@25000 {
<br>
#address-cells = <1>;
<br>
#size-cells = <1>;
<br>
<br>
cell-index = <1>;
<br>
device_type = "network";
<br>
model = "eTSEC";
<br>
compatible = "gianfar";
<br>
reg = <0x25000 0x1000>;
<br>
local-mac-address = [ 00 a0 3e a8 a6 6E ];
<br>
interrupts = <35 0x8 36 0x8 37 0x8>;
<br>
interrupt-parent = <&ipic>;
<br>
phy-handle = < &phy1 >;
<br>
};
<br>
<br>
The problem is I'm not being able to set <b>ETH1</b> up. When i try, say "<b>ifconfig eth1 up</b>" i got:
<br>
<strong>vmunix: Trying to connect phy mdio@e0024520:01
<br>
vmunix: eth1: Could not attach to PHY</strong>
<br>
<br>
I've tried to track this error down and found that the it raises from <strong>bus_find_device_by_name</strong> function at <strong>bus.c</strong>. For some reason ETH1 is never added do <strong>devices_kset</strong> for MDIO bus. It only contains an entry for ETH0, which is 00:3.
<br>
<br>
What could be wrong? In a hardware point of view, this PHY seems to be OK, since I've made some tests
from U-boot command line trying some MDIO commands. I've also checked MDIO pins with oscilloscope and everything seems to be fine. But during Linux initialization I could not see any activity in MDIO pins. Is that normal? Is there any other files
I should change (other than DTS) to make PHYs work? </div><div>
<br>
<br>
Thanks <br clear="all"><br>-- <br>Juliano Maia<br><br><br>
</div>