Hi,
We have a Marvell 88q6113 switch on our customized carrier board connected to XFI0 of the 32G Orin module through a fixed 10G link.
The XFI0 interface can be initialized successfully(eth1) with correct IP address. But when I tried to read the 88q6113 register through phytool(Orin can not read the PHY reg data - #15 by WayneWWW) with MDIO C45 clause, I always get the same results.
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/0:3/0x3
0x0e03
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/0:3/0x4
0x0e03
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/0:2/0x4
0x0e03
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/0:2/0x3
0x0e03
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/1:3/0x4
0x0e03
root@ubuntu:/home/nvidia/phytool# ./phytool read eth1/1:3/0x3
0x0e03
The device tree source for XFI0:
ethernet@6810000 {
status = "okay";
nvidia,mac-addr-idx = <1>;
nvidia,max-platform-mtu = <16383>;
/* 0=enable, 1=disable */
nvidia,pause_frames = <0>;
/* 1: 10G, 0: 5G */
nvidia,uphy-gbe-mode = <1>;
/* 0:XFI 10G, 1:XFI 5G, 2:USXGMII 10G, 3:USXGMII 5G */
nvidia,phy-iface-mode = <0>;
nvidia,mdio_addr = <0>;
fixed-link {
speed = <10000>;
full-duplex;
};
mdio {
compatible = "nvidia,eqos-mdio";
#address-cells = <1>;
#size-cells = <0>;
ethernet_phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
reg = <0x0>;
nvidia,phy-rst-pdelay-msec = <150>; /* msec */
nvidia,phy-rst-duration-usec = <221000>; /* usec */
};
};
};
After tracing the code, I found the raw data returned from mgbe_read_phy_reg() was also always 0x0e03.
Could you help have a look and give us some suggestions for debugging?
Thanks!