I'm trying to use the external ethernet but I can't configure phy-reset. As a workaround, I've implemented a shell script to toggle the phy-reset and reboot the imx93, in this condition, the ethernet is working. When I try to configure the same gpio (GPIO2_IO27) as the phy-reset in the device tree, it's not working. Measuring with an oscilloscope, I didn't see the pin toggle. What I'm doing wrong? This a part of my device tree
};
ethernet@42890000 {
compatible = "fsl,imx93-fec", "fsl,imx8mq-fec";
reg = <0x42890000 0x10000>;
interrupts = <0x00 0xb3 0x04>, <0x00 0xb4 0x04>, <0x00 0xb5 0x04>, <0x00 0xb6 0x04>;
clocks = <0x07 0xb6>, <0x07 0xb6>, <0x07 0x5d>, <0x07 0x5f>, <0x07 0x60>;
clock-names = "ipg", "ahb", "ptp", "enet_clk_ref", "enet_out";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x3f>;
phy-mode = "rgmii-id";
phy-handle = <0x40>;
};
ethernet@428a0000 {
compatible = "nxp,imx93-dwmac-eqos\0snps,dwmac-5.10a";
reg = <0x428a0000 0x10000>;
interrupts = <0x00 0xb8 0x04 0x00 0xb7 0x04>;
interrupt-names = "macirq\0eth_wake_irq";
clocks = <0x07 0xb7 0x07 0xb7 0x07 0x5e 0x07 0x5c 0x07 0xb7>;
clock-names = "stmmaceth\0pclk\0ptp_ref\0tx\0mem";
assigned-clocks = <0x07 0x5e 0x07 0x5c>;
assigned-clock-parents = <0x07 0x06 0x07 0x04>;
assigned-clock-rates = <0x5f5e100 0xee6b280>;
intf_mode = <0x27 0x28>;
snps,clk-csr = <0x05>;
nvmem-cells = <0x42>;
nvmem-cell-names = "mac-address";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <0x43>;
phy-mode = "rgmii";
phy-handle = <0x44>;
phandle = <0xb3>;
mdio {
compatible = "snps,dwmac-mdio";
#address-cells = <0x01>;
#size-cells = <0x00>;
clock-frequency = <0xf4240>;
ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0x00>;
eee-broken-1000t;
reset-gpios = <0x13 0x07 0x01>;
reset-assert-us = <0x2710>;
reset-deassert-us = <0x186a0>;
mxl-8611x,led0_cfg = <0x2600>;
mxl-8611x,led1_cfg = <0x70>;
phandle = <0x44>;
};
ethernet-phy@5 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0x05>;
reset-gpios = <0x15 0x1b 0x01>;
reset-assert-us = <0x2710>;
reset-deassert-us = <0x13880>;
phandle = <0x40>;
};
};
};