很常见的就是sdk刷机
使用SDKmanager 刷机 在SDKmanager 下载所需要的文件 连接Orin,执行step1/2/3/4 即可,操作比较简单。 如...
连接Orin,执行step1/2/3/4 即可,操作比较简单。
Jetpack的安装顺便也就安装了步骤4。
2. 通过命令行方式:
下载L4TBSP以及filesystem安装包
官方下载下载地址Jetson Linux Archive | NVIDIA Developer
Jetson_Linux_R35.1.0_aarch64.tbz2
Tegra_Linux_Sample-Root-Filesystem_R35.1.0_aarch64.tbz2
mkdir orin351
cd orin351
sudo tar -vxf Jetson_Linux_R35.1.0_aarch64.tbz2
cd Linux_for_Tegra/rootfs
sudo tar -jxpf ../../Tegra_Linux_Sample-Root-Filesystem_R35.1.0_aarch64.tbz2
cd ..
sudo ./apply_binaries.sh
为了不用每次刷机时,创建用户,可以执行Linux_for_Tegra/tools/l4t_create_default_user.sh 中创建默认的用户名和密码。
./l4t_create_default_user.sh -u 用户名 -p 密码 -a
set -e
function usage()
{
echo "Usage:"
echo "${script_name} [-u ] [-p ] [-a] [-h]"
echo " -u | --username - If not specified then default will be set to 'nvidia'."
echo " -p | --password - If not set then randomized password will be generated."
echo " -a | --autologin - If specified autologin will be enabled. Default is disabled"
echo " -n | --hostname - If not specified then default will be set to 'tegra-ubuntu'."
echo " -h | --help - print usage"
echo " --accept-license - Specified to accept the terms and conditions of EULA"
echo "Example:"
echo "${script_name} -u nvidia -p NDZjMWM4"
echo "${script_name} -u ubuntu -a"
echo "${script_name} -n tegra"
exit 1
}
3. 第三方厂家通过命令行方式:
列举几家大同小异的方法
某准科技
sudo tar xpf flashtool_TDZ_geac_xavier_jp4.6.1_TDZDEV1.0_v.tar.gz
1.进入烧录文件夹: cd flashtool_tDZ_geac_xavier_jp4.6.1_TDZDEV1.0_v2.5.5.1/Linux_for_Tegra
2.文件系统的机器(电脑接USB口,主板机器接microUSB口)(用microUSB接口的线)
3.机器上电,用手同时按住主板的rst键和Recovery键,先松rst键,后松Recovery键,进入烧录模式。
注:可以在终端输入lsusb 检查是否挂载Nvidia Crop,如果有表示进入了烧录模式可以继续往下。否则重复此步操作.
4.进入文件夹内:cd TDZ-master/Linux_for_Tegra
5.执行脚本: ./TDZ_flash.sh
6.接下来会提示输入烧录功能编号:输入8(注:全部系统烧录flash-all-with-system) 平台型号编号:输入1
7.等待30分钟左右烧录完成后,自动进入系统
某为科技
注意:刷固件包有两种方式,可以根据自身需求去进行相应操作,第一种方式为格式化刷机,使用命令将设备内之前所有的东西包括系统全都刷掉,重新安装系统,包含我们的驱动.第二种方式为分区升级,如果核心板中已安装了 JetPack4.4 系统,不希望更新整个系统的情况下,只需要更新对应载板的驱动(即dtb 和Image 文件),可以按照如需方法升级载板驱动而不变动当前核心板内的软件.
格式化刷机:
cp tw.v1.3/Linux_for_Tegra/* Linux_for_Tegra/ -rf cd Linux_for_Tegra
sudo ./flash.sh jetson-nano-emmc mmcblk0p1 分区升级:
cp tw.v1.3/Linux_for_Tegra/* Linux_for_Tegra/ -rf cd Linux_for_Tegra
更新DTB 设备树(涉及外设驱动)
sudo ./flash.sh -r -k kernel-dtb jetson-nano-emmc mmcblk0p1 (执行完此项后,需要再次按键进入recover 模式执行后续命令)
更新内核镜像(kernel/Image 涉及外设驱动)
由于Nano 检索内核先判断根目录下/boot/Image 文件,所以升级 Nano 内核只需要把内核编译出的Image 文件复制到 Nano 开机后的/boot/ 目录后再重启即可,通过 uname -a 查看内核信息包括编译日期
第四步、升级完成等待机器开机并查看各项功能是否完备,如遇到功能异常,需提供如下命令的结果以便分析dmesg > dmesg.log (内核debug 日志)
查找内核版本及日期uname -a
查看设备树 dtb dmesg | grep 'DTB'
某泰科技
某文科技
某立科技
方式都是添加了定制载板的文件到原来的nvidia烧录工具l4t文件内然后再进行烧录,每家的方法都各有千秋。
注意:由于第三方定制厂家与 nvidia 开发板接口驱动不同,使用 upgrade 这个
指令会升级内核,覆盖设备树,如果必须使用 upgrade 进行更新,在使用之前,请运行以下命令
sudo rm /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
sudo apt-get update
sudo apt-get upgra
Error: Return value 4
Command tegradevflash_v2 --oem platformdetails eeprom cvm /home/ubuntu/3261/Linux_for_Tegra/bootloader/cvm.bin
Reading board information failed.
可以尝试如下命令过滤掉eeprom的信息进行全量烧录
sudo BOARDID=2888 FAB=400 BOARDSKU=0001 BOARDREV=D.0 ./flash.sh -r jetson-xavier mmcblk0p1
sudo echo 驱动名称 >> /etc/modules #将驱动添加到开机启动列表