HI,
I have a board with imx8qm processor connected to a Maxlinear PHY. The connection is as follows
IMX8QM <-- RGMII--> MaxLinear PHY <--SGMII-->
What I observe is that the PHY never goes to 1G speed (despite being explicitly set). This setup is functional in 10Mbps. When I measured the clocks TXC and RXC , both were 2.5Mhz , confirming the 10Mbs speed/connection.
Now, I have the below device tree entirees on the IMX8QM linux.
#include <dt-bindings/usb/pd.h>
#include "imx8qp.dtsi"
&fec1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_fec1>;
phy-mode = "rgmii-txid";
phy-handle = <ðphy1>;
fsl,magic-packet;
fsl,mii-exclusive;
nvmem-cells = <&fec_mac0>;
nvmem-cell-names = "mac-address";
rx-internal-delay-ps = <2000>;
status = "okay";
mdio {
#address-cells = <1>;
#size-cells = <0>;
ethphy1: ethernet-phy@1 { // PHY connected to the MDIO bus
reg = <1>; // PHY address on the MDIO bus
compatible = "ethernet-phy-ieee802.3-c22"; // Generic PHY compatible string
mxl,disable-autoneg = <1>; // Disable Auto negotiation
mxl,force-speed = <1000>; // Force speed to 1Gbps
reset-gpios = <&lsio_gpio3 3 GPIO_ACTIVE_LOW>; // HRST pin connected to GPIO3_IO04
status = "okay";
};
};
};
My configuration requires Auto neg to be disabled and PHY speed set to 1G always.
What might I be doing wrong?
Is there a way I can force the TXC/RXC to 125Mhz?
Or is it that the MAC sets these based on the PHY configuration after reading from the PHY Standard Status registers?
Any thoughts?