RGMII Ethernet configuration


Following those topics and this guide :

I’m trying to setup RGMII for my 1Gb Ethernet on custom board. I have correctly setup the pinmux (here is the file Orin-jetson_agx_orin-pinmux.dtsi (65.7 KB)) and am trying to change the dt file tegra234-ethernet-3737-0000.dtsi located here Linux_for_Tegra/source/public/hardware/nvidia/platform/t23x/concord/kernel-dts/cvb this way :

/* RGMII - A */
ethernet@2310000 {
status = “okay”;
nvidia,mac-addr-idx = <0>;
nvidia,max-platform-mtu = <8000>;
nvidia,pause_frames = <0>;
local-mac-adress = [1a 2b 3c 4d 5e 6f];
nvidia,phy-reset-gpio = <&tegra_main_gpio TEGRA234_MAIN_GPIO(g, $) 0>;
phy-handle = <&phy>;
phy-mode = “rgmii-id”;

  mdio {
  	compatible = "nvidia,eqos-mdio";
  	#address-cells = <1>;
  	#size-cells = <0>;

  	phy: phy@1 {
  		reg = <1>;
  		nvidia,phy-rst-pdelay-msec = <224>; /* msec */
  		nvidia,phy-rst-duration-usec = <10000>; /* usec */
  		interrupt-parent = <&tegra_main_gpio>;
  		interrupts = <TEGRA234_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;


However, it does not compile when trying to rebuild kernel.

Please let me know what to do to fix it!

Thank you,


Do you mean the whole dtb is not able to get built or you are saying it got built but your file is taking effect?

DeveloperGuide seems wrong.

nvidia,phy-reset-gpio = <$tegra_main_gpio TEGRA234_MAIN_GPIO(g, $) 0>

should be

nvidia,phy-reset-gpio = <&tegra_main_gpio TEGRA234_MAIN_GPIO(G, 5) 0>;

Sorry. will try to update this minior error in next document release.

@loic.boileau hope you are not affected by this silly mistake from document.


By fixing this error it did compile correctly! So i proceeded to flash the jetson with the newly built kernels.

But when trying to connect to an ethernet interface, it shows the same thing as To be enable RGMII for AGX Orin Custom Board - #10 by sumin.lee1.

Here is the pinmux file
Orin-jetson_agx_orin-pinmux.dtsi (65.7 KB)

Here is the source file for ethernet configuration :
tegra234-ethernet-3737-0000.dtsi (2.2 KB)

Here is the dmesg from kernels
dmesg.log (259.8 KB)

What is wrong ?

Thank you!