I am using the core board of jeston agx orin 64G to adapt 34.1.1 on csutom board. Currently, I am stuck in the step of rgmii, and the phy chip I use is yt8531s. No matter how much I modify it according to the official manual, I cannot find the device
busybox_pinmux.log (660 Bytes)
dmesg.log (72.3 KB)
ifconfig.log (1.0 KB)
[sys_kernel_debug_gpio.log|attachment](upload://jOkJVwWpKGTj8ssv4A6Vd
tegra234-ethernet-3737-0000.txt (2.2 KB)
tegra234-mb1-bct-gpio-p3701-0000-a04.txt (2.8 KB)
tegra234-mb1-bct-pinmux-p3701-0000-a04.txt (66.3 KB)
tegra234-p3711-ethernet.txt (1.9 KB)
tegra234-soc-eqos.txt (4.3 KB)
OJikmT.log) (796 Bytes)
sys_kernel_debug_gpio.log (796 Bytes)
please do not use rel-34.1.1 anymore… That version is developer preview which should not be in use.
Orin AGX 64 GB is not supported on rel-34.1.1 either…
phy-mode = “rgmii-id”;
phy-handle = <$phy>;
nvidia,phy-reset-gpio = <$tegra_main_gpio TEGRA234_MAIN_GPIO(G, 5) 0>
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>;
};
};
Which file in the kernel should this part of the code go in
This conversation is not able to go further with such way. Please check my comment in this post first before asking anything more.
phy-mode = “rgmii-id”;
phy-handle = <$phy>;
nvidia,phy-reset-gpio = <$tegra_main_gpio TEGRA234_MAIN_GPIO(G, 5) 0>
mdio {
compatible = “nvidia,eqos-mdio”;
#address 单元格 = <1>;
#size 个单元格 = <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>;
};
};
这部分代码应该放在内核中的哪个文件中,jet36.4
你得先確認你板子先前燒哪個device tree. 然後就放到那個device tree裡面.
请问怎么确认烧的哪个device tree,我都是把内核编译的设备树全部拷贝到下载文件夹里面的,然后用的sudo ./flash.sh jetson-agx-orin-devkit internal直接烧写,另外 ethernet@2310000 {
status = “okay”;
phy-mode = “rgmii-id”;
phy-handle = <&yt_phy>;
nvidia,phy-reset-gpio = <&gpio TEGRA234_MAIN_GPIO(G, 5) 0>;
nvidia,mac-addr-idx = <0>;
nvidia,skip_mac_reset = <0>;
nvidia,mdio_addr = <0>;
nvidia,pause_frames = <0>;
local-mac-address = [3c 6d 66 18 55 e0]; // 这里添加你的 MAC 地址
mdio {
compatible = "nvidia,eqos-mdio";
#address-cells = <1>;
#size-cells = <0>;
yt_phy: phy@7 {
reg = <7>;
compatible = "yt,yt8531s";
nvidia,phy-rst-pdelay-msec = <224>; /* msec */
nvidia,phy-rst-duration-usec = <10000>; /* usec */
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
yt,phy-delay = <0x14F0>;
phy-connection-type = "rgmii-id";
};
};
};这是我的网络节点配置yt部分的驱动已经在xilinx 的petalinux下验证过没有问题
你確認一下你的flash log. 或是你開機之後去/boot/dtb下面會找的到
用那個檔名回去你的source code找
用的kernel_tegra234-p3737-0000+p3701-0005-nv.dtb,
kernel_tegra234-p3737-0000+p3701-0005-nv.dst包含头文件
include “staging/tegra234-p3737-0000+p3701-0005.dts”
include “tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi”
include “tegra234-p3701-0005.dtsi”
然后我在tegra234-p3701-0005.dtsi里面包含的#include "tegra234-p3701-0000.dtsi"的bus@0 节点下添加,可以吗?
你想要加在那裡都無所謂. 最後生成出來的dtb有你加的內容就可以了…
Device tree的架構沒有必要問檔案到底要加在哪裡 有一堆地方都可以加.
麻煩用附件的方式貼完整log.
完整log的意思是從你開機開始
serial-com35_08_09_21_08_28.log (83.0 KB)
ether_get_mac_address_dtb: bad mac address at /chosen/nvidia,ether-mac0: NULL.
Mac addr 沒有從EEPROM讀出來
你dtb是怎麼換的?
把编译后的文件(./source/kernel_out/kernel-devicetree/generic-dts/dtbs)全部拷贝到Linux_for_Tegra/kernel/dtb/
这个是我将kernel_tegra234-p3737-0000+p3701-0005-nv.dtb反编译出来的文件
1.dts.log (323.8 KB)
然後? 怎麼燒的?
sudo ./flash.sh jetson-agx-orin-devkit internal
前面的問題已經解掉的話就請你在對的地方講…
不要在你HDMI的post上講RGMII…