设备树格式问题(&tegra_main_gpio报错)

Jetson AGX Orin Platform Adaptation and Bring-Up — NVIDIA Jetson Linux Developer Guide

你好,我按此指南修改tegra234-p3701-0000-p3737-0000.dtb文件时,遇到一个dts格式问题:

步骤如下:

1、dtc -I dtb -O dts -o orin.dts tegra234-p3701-0000-p3737-0000.dtb

2、修改orin.dts

3、dtc -I dts -O dtb -o tegra234-p3701-0000-p3737-0000.dtb orin.dts转回dtb时报错,

Error: orin.dts:5976.46-47 syntax error
FATAL ERROR: Unable to parse input tree

参考了几个帖子,好像其他人也是这样写的,这让我不知所措。

modify it from original source instead of using dtc tool.

dtc tool won’t know what is “tegra_main_gpio”.

谢谢你的回复。

你的意思是修改Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public目录吗?容我多问几句,继续调试rgmii的话,下一步是不是需要在Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/tegra234-p3737-0000+p3701.dtsi里去新增ethernet@2310000节点?还有一点我不是很确定,我要用的phy芯片是yt8521,我看到内核里有驱动文件,在drivers/net/phy/motorcomm.c,需要如何在设备树里配置?

在源码中修改后编译还是一样找不到,源码和报错信息如下图:

If this is rel-36, please directly use “&gpio” instead of tegra_main_gpio. tegra_main_gpio is the one for rel-35.

非常感谢。能再指导下yt8521的配置吗?是不是只要编译已有的驱动motorcomm.c就可以?设备树需要做额外的改动吗?

Yes, you could check from your final dtb name and trace back the code.

有一点我不是很确定,我要用的phy芯片是yt8521,我看到内核里有驱动文件,在drivers/net/phy/motorcomm.c,需要如何在设备树里配置?

This question shall check with vendor. Each vendor has their own device tree compatible nodes.