NVIDIA TX2自制底板的USB口无法使用的一种解决方法

这是由于官方的底板上采用INA3221芯片做了电源监控电路,只有确保5V电源达到要求的情况下才会使能USB口。而自制的底板上将上述电路省略了,所以导致了USB口无法使用。解决办法就是要给TX2更新设备树。在网上找到一些针对此问题的方法,找到了一些现成的替换文件,但是刷进去还是用不了,于是决定安装官方论坛提到的更改驱动源码重新编译,从而生成新的设备树文件进行替换。下面是亲测成功的方法:

1.主机安装JetPack,并给TX2刷机

我的主机安装的是Ubuntu 16.04 系统。

安装的JetPack版本是3.3下载链接,安装和刷机方法可以参照下面这篇文章

2.下载官方的源码

源码链接,下载“L4T Sources SHA ”这个文件并解压,里面有很多压缩包,解压这个文件kernel_src.tbz2

3.更改源码

我们需要更改下面这个文件:

<源码解压路径>/hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-

platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi

找到下面这一段代码,并照着修改:

pinctrl@3520000 {

vbus-0-supply = <&vdd_usb0_5v>;

vbus-1-supply = <&vdd_usb1_5v>;

vbus-2-supply = <&battery_reg>;

vbus-3-supply = <&dd_usb2_5v>;

vddio-hsic-supply = <&battery_reg>;

avdd_usb-supply = <&spmic_sd3>;

vclamp_usb-supply = <&spmic_sd2>;

avdd_pll_erefeut-supply = <&spmic_sd2>;

};

一般需要修改的是红色的那两行,改完之后保存。

4.编译源码,重新生成设备树

这里我们用的是官方提供的交叉编译工具,下载链接

根据自己的内核版本和主机下载,我下载的是“GCC Tool Chain for 64-bit BSP ”这个文件,解压出来可以直接使用。

接下来就是编译。打开终端:

1).输入环境变量

$ export CROSS_COMPILE=<crossbin>

$ export TEGRA_KERNEL_OUT=<outdir>

$ export ARCH=arm64

这里的 crossbin就是我们下载编译工具的可执行文件路径,格式如下:

<编译工具解压路径>/install/bin/aarch64-unknown-linux-gnu-

而outdir则是编译目标路径,编译后生成的文件都放在这个文件夹里,这里可以在文件夹中自己手动创建,也可以通过命令$ mkdir $TEGRA_KERNEL_OUT 去创建

2).生成.config文件

打开解压的源码所在文件夹:

$ cd <源码解压路径>/kernel/kernel-4.4

对于TX2执行以下命令:

make O=$TEGRA_KERNEL_OUT tegra18_defconfig

如果是TX1则执行这个命令:

$ make O=$TEGRA_KERNEL_OUT tegra21_defconfig

3).编译生成新的设备树文件

$ make O=$TEGRA_KERNEL_OUT dtbs

稍等片刻,等待编译完成。

5.用新生成的设备树文件替换原来的文件,并烧入TX2

生成的文件在

<outdir>/arch/arm64/boot/dts/

将这个文件夹重命名为dtb并复制到一下路径:

<JetPack路径>/64_TX2/Linux_for_Tegra/kernel/

并替换原来的整个文件夹。

将主机和TX2用USB连接,给TX2上电,按电源键,之后按住REC键不放,再按一下RST键立即放开,最后放开REC键,TX2进入Recovery模式。打开终端,cd到:

<JetPack安装路径>/64_TX2 /Linux_for_Tegra

在此路径下执行以下命令来烧写设备树:

sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1

待设备树烧写完毕,重启TX2即可。

 

 

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值