Connecting SGMII PHY to eTSEC1 on P1022
Hi,
On a custom P1022-based board I have SGMII PHY connected to eTSEC1. PHY address is 0x1. Ethernet works fine in u-boot, but in linux there's no link. I have the following in my device tree:
mdio@24000 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "fsl,etsec2-mdio";
reg = <0x24000 0x1000 0xb0030 0x4>;
phy0: ethernet-phy@1 {
interrupt-parent = <&mpic>;
interrupts = <3 1>;
reg = <0x1>;
};
tbi0: tbi-phy@11 {
reg = <0x11>;
device_type = "tbi-phy";
};
};
enet0: ethernet@B0000 {
#address-cells = <1>;
#size-cells = <1>;
cell-index = <0>;
device_type = "network";
model = "eTSEC";
compatible = "fsl,etsec2";
fsl,num_rx_queues = <0x8>;
fsl,num_tx_queues = <0x8>;
fsl,magic-packet;
fsl,wake-on-filer;
clk-handle = <&etsec1_clk>;
local-mac-address = [ 00 00 00 00 00 00 ];
interrupt-parent = <&mpic>;
phy-handle = <&phy0>;
tbi-handle = <&tbi0>;
phy-connection-type = "sgmii";
...
};What am I doing wrong ?
Thanks a lot in advance.
Felix.
Quoted 1 line · Felix Radensky
What am I doing wrong ?
Can you debug the PHY driver to see if it's getting called and trying to talk to the PHY itself?
Signature · 2 lines
Timur Tabi Linux kernel developer at Freescale
Hi Timur,
Quoted 5 lines · Timur Tabi
Quoted 1 line · Felix Radensky
What am I doing wrong ?
Can you debug the PHY driver to see if it's getting called and trying to talk to the PHY itself?
I'll do that tomorrow and report back.
Thanks.
Felix.
Hi,
Quoted 9 lines · Felix Radensky
Hi Timur,
Quoted 5 lines · Timur Tabi
Quoted 1 line · Felix Radensky
What am I doing wrong ?
Can you debug the PHY driver to see if it's getting called and trying to talk to the PHY itself?
I'll do that tomorrow and report back.
I've found the problem by looking at the code. My SGMII PHY is Marvell 88E1112. Marvell PHY driver claims it supports that PHY, but in reality it doesn't. It uses routines initially written for 88E1111 to configure 88E1112, essentially writing to registers that do not exist on that PHY. After disabling Marvell PHY driver my PHY started working.
Felix.