Re: [PATCH v2 3/3] arm64: dts: rockchip: Add Luckfox Omni3576 Board support

John Clark
2025-05-04T21:02:50Z

On 5/4/25 10:12 AM, Andrew Lunn wrote:
>>> +&gmac0 {
>>> + clock_in_out = "output";
>>> + phy-handle = <&rgmii_phy0>;
>>> + phy-mode = "rgmii-rxid";
>>
>> See Andrew's remark on v1 of this patch.
>
> Hi John
>
> If you have questions, please ask. It is not a good idea to silently
> ignore reviewers comments. Either do something about it, ask
> questions, or politely argue why the reviewer is wrong, because
> sometimes we are.
>
Hi Andrew,
Thanks for your feedback and the link to the RGMII delays discussion. I
assumed you suggested switching to phy-mode = "rgmii-id" from
rgmii-rxid. The vendor’s downstream kernel uses rgmii-rxid with tx_delay
= <0x20>, as shown in my post. I tried rgmii-id and removed tx_delay,
but the interface failed to get a DHCP address. Reverting to rgmii-rxid
with the delay restored functionality. Any advice on correctly
configuring rgmii-id or adjusting delays for this board?
Best,
John Clark

>>> + pinctrl-names = "default";
>>> + pinctrl-0 = <&eth0m0_miim
>>> + &eth0m0_tx_bus2
>>> + &eth0m0_rx_bus2
>>> + &eth0m0_rgmii_clk
>>> + &eth0m0_rgmii_bus
>>> + &ethm0_clk0_25m_out>;
>>> + snps,reset-gpio = <&gpio2 RK_PB3 GPIO_ACTIVE_LOW>;
>>> + snps,reset-active-low;
>>> + snps,reset-delays-us = <0 20000 100000>;
>>
>> The snps,reset- props are depracated, please move to reset props in the
>> Ethernet PHY node.
>
> FYI: snps,dwmac.yaml says:
>
> snps,reset-gpio:
> deprecated: true
> maxItems: 1
> description:
> PHY Reset GPIO
>
> Anything with 'deprecated: true' you should not be using in new DT
> blobs. Don't blindly copy vendor DT, you need to verify it is up to
> Mainline quality, and if not, bring it up to Mainline quality.
>
>>> + tx_delay = <0x20>;
>
> This property probably plays a role in the issue with phy-mode.
>
> arch/arm64/boot/dts/rockchip$ grep "rgmii-id" *
> rk3328-orangepi-r1-plus-lts.dts: phy-mode = "rgmii-id";
> rk3566-bigtreetech-cb2.dtsi: phy-mode = "rgmii-id";
> rk3566-nanopi-r3s.dts: phy-mode = "rgmii-id";
> rk3566-odroid-m1s.dts: phy-mode = "rgmii-id";
> rk3566-orangepi-3b.dtsi: phy-mode = "rgmii-id";
> rk3566-radxa-zero-3e.dts: phy-mode = "rgmii-id";
> rk3566-rock-3c.dts: phy-mode = "rgmii-id";
> rk3568-evb1-v10.dts: phy-mode = "rgmii-id";
> rk3568-evb1-v10.dts: phy-mode = "rgmii-id";
> ...
> etc.
>
> You might be able to learn something from these.
>
> Andrew