Hi all,
I’m trying to flash the Jetson AGX Xavier with the flash.sh script, the jetson was flashed successfully, but i had some weird output like the following :
*** Flashing target device started. ***
/home/uie82142/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_AGX_XAVIER_TARGETS/Linux_for_Tegra/bootloader/tegraflash_internal.py:2598: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while count is not 0 and not check_ismb2():
/home/uie82142/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_AGX_XAVIER_TARGETS/Linux_for_Tegra/bootloader/tegraflash_internal.py:2607: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while count is not 0:
/home/uie82142/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_AGX_XAVIER_TARGETS/Linux_for_Tegra/bootloader/tegraflash_impl_t234.py:858: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while count is not 0 and not self.check_is_mb2applet():
/home/uie82142/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_AGX_XAVIER_TARGETS/Linux_for_Tegra/bootloader/tegraflash_impl_t234.py:865: SyntaxWarning: "is not" with a literal. Did you mean "!="?
while count is not 0:
Welcome to Tegra Flash
version 1.0.0
Type ? or help for help and q or quit to exit
Use ! to execute system commands
The command i’ve used :
sudo ./flash.sh jetson-agx-xavier-devkit mmcblk0p1
I also tried with the commmand, but i had the same issue
sudo ./flash.sh jetson-xavier mmcblk0p1
[ 233.7379 ] Flashing completed
[ 233.7380 ] Coldbooting the device
[ 233.7434 ] tegrarcm_v2 --ismb2
[ 233.8254 ]
[ 233.8311 ] tegradevflash_v2 --reboot coldboot
[ 233.8348 ] Bootloader version 01.00.0000
[ 233.8653 ]
*** The target t186ref has been flashed successfully. ***
Reset the board to boot from internal eMMC.
When the flash is completed the jetson doesn’t boot, but it’s frozen with log below
[FAILED] Failed to start Configure USB flashingport for device mode
A start job is running for end-user configuration after initial oem installation
In the attached picture, you can find the the full logs
Thanks
Hi,
Please directly try to use sdkmanager to flash your device instead of manual setup. This is to prevent you corrupt the rootfs by yourself.
Also, please directly use rel-35 instead of rel34.
Hi @WayneWWW
I need to flash it this way to add custom driver.
Thanks
Does your custom driver matter to boot up?
I’ll remove it to test the flash, and i’ll keep you in touch if it worked.
To summarize the flash steps i’m doing :
-
Donwload the sources using source_sync.sh for JetPack 5.0.1 and the sources are from the tag jetson_34.1.1
-
Compile the sources and copy the Image and the dtb in the kernel folder
-
Apply tegra binaries using sudo .apply_binaries
-
Flash the jetson with the flash script
Am i missing something ?
Thanks for support
We can discuss that after you flash with sdkmanager …
After flashing the Jetson with the sdkmanager, the boot was successfully, i guess this means that the roofts folder was corrupted, when i tried to copy the binaries that was cross-compiled using GCC-Linaro, but it’s weird in fact that SDKManager is just a GUI that use the flash.sh script, i’m wondering why the roofts is corrupted in fact i just copied into it the kernel modules.
I tried to flash without the custom module i’ve added before but with the cross-compiling approach, it stucks at the logs below :
[FAILED] Failed to start Firmware update daemon
[FAILED] Failed to start Refresh fwupd metadata and update motd
A start job is running for end-user configuration after initial oem installation
Any idea about what’s corrupt the roofts ?
Thanks
It would be better if you could share what you installed to the rootfs and what is your method to copy it.
Hi,
I dont understand what’s happening, now i’ve used the nvsdkmanager_flash.sh to flash the jetson by the command below :
sudo ./nvsdkmanager_flash.sh --nv-auto-config --username jetson
The jetson boot successfully, but i couldn’t have the accesses to ubuntu desktop, but i’m able to connect into it using ssh from my host.
linuxDev@tsl8746u:~$ ssh jetson@192.168.55.1
jetson@192.168.55.1's password:
Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.10.65-tegra aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
This system has been minimized by removing packages and content that are
not required on a system that users do not log into.
To restore this content, you can run the 'unminimize' command.
247 updates can be applied immediately.
246 of these updates are standard security updates.
To see these additional updates run: apt list --upgradable
Last login: Tue Nov 22 13:43:33 2022 from 192.168.55.100
Please share the result of your lsmod.
@WayneWWW
Module Size Used by
fuse 118784 3
lzo_rle 16384 64
lzo_compress 16384 1 lzo_rle
zram 32768 8
hid_logitech_hidpp 45056 0
input_leds 16384 0
snd_soc_tegra186_asrc 36864 1
snd_soc_tegra186_dspk 20480 2
snd_soc_tegra210_mvc 20480 2
snd_soc_tegra210_ope 28672 1
snd_soc_tegra186_arad 24576 2 snd_soc_tegra186_asrc
snd_soc_tegra210_iqc 16384 0
snd_soc_tegra210_afc 20480 6
snd_soc_tegra210_dmic 20480 4
snd_soc_tegra210_adx 28672 4
snd_soc_tegra210_i2s 24576 6
snd_soc_tegra210_mixer 45056 1
snd_soc_tegra210_amx 28672 4
snd_soc_tegra210_sfc 57344 4
snd_soc_tegra210_admaif 118784 1
snd_soc_tegra_pcm 16384 1 snd_soc_tegra210_admaif
aes_ce_blk 36864 0
crypto_simd 24576 1 aes_ce_blk
cryptd 24576 1 crypto_simd
aes_ce_cipher 20480 1 aes_ce_blk
ghash_ce 28672 0
sha2_ce 20480 0
sha256_arm64 28672 1 sha2_ce
sha1_ce 20480 0
hid_logitech_dj 28672 0
loop 36864 1
snd_soc_tegra_machine_driver 16384 0
pwm_fan 24576 0
snd_soc_spdif_tx 16384 0
max77620_thermal 16384 0
nct1008 24576 0
snd_soc_rt5659 159744 1
snd_soc_rl6231 16384 1 snd_soc_rt5659
ucsi_ccg 28672 0
snd_soc_tegra210_adsp 753664 1
typec_ucsi 32768 1 ucsi_ccg
typec 40960 1 typec_ucsi
snd_soc_tegra_utils 24576 3 snd_soc_tegra210_admaif,snd_soc_tegra_machine_driver,snd_soc_tegra210_adsp
bluedroid_pm 24576 0
snd_soc_simple_card_utils 24576 1 snd_soc_tegra_utils
snd_hda_codec_hdmi 57344 4
snd_soc_tegra210_ahub 1228800 3 snd_soc_tegra210_ope,snd_soc_tegra210_sfc
nvadsp 106496 1 snd_soc_tegra210_adsp
tegra_bpmp_thermal 16384 0
tegra210_adma 28672 4 snd_soc_tegra210_admaif,snd_soc_tegra210_adsp
ahci 45056 0
userspace_alert 16384 0
snd_hda_tegra 20480 0
libahci 40960 1 ahci
snd_hda_codec 118784 2 snd_hda_codec_hdmi,snd_hda_tegra
libata 237568 2 libahci,ahci
snd_hda_core 81920 3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_tegra
spi_tegra114 32768 0
binfmt_misc 24576 1
ina3221 24576 0
ip_tables 36864 0
x_tables 49152 1 ip_tables
Looks like nvgpu driver is not there. Without it, desktop will not show.
@WayneWWW do you have any idea why this latter is not there and how to add it ?
Hi @WayneWWW,
It seems it’s due to the copy i’m doing, there is the step i’m doing to copy the binaries :
# Define paths use to compile and define where to put the different generated files
export JETPACK=$HOME/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_AGX_XAVIER_TARGETS/Linux_for_Tegra
export TOOLCHAIN_SRC=bootlin-toolchain-gcc-93
export KERNEL_SRC=$JETPACK/sources
export KERNEL_DIR=$KERNEL_SRC/kernel/kernel-5.10
export CROSS_COMPILE=$HOME/l4t-gcc/bin/aarch64-buildroot-linux-gnu-
export KERNEL_OUT=$JETPACK/images
export KERNEL_MODULES_OUT=$JETPACK/images/modules
# Build the BSP
cd $KERNEL_SRC && make -C $KERNEL_DIR ARCH=arm64 O=$KERNEL_OUT LOCALVERSION=-tegra CROSS_COMPILE=${CROSS_COMPILE} -j$(nproc) Image && \
make -C $KERNEL_DIR ARCH=arm64 O=$KERNEL_OUT LOCALVERSION=-tegra CROSS_COMPILE=${CROSS_COMPILE} -j$(nproc) dtbs && \
make -C $KERNEL_DIR ARCH=arm64 O=$KERNEL_OUT LOCALVERSION=-tegra CROSS_COMPILE=${CROSS_COMPILE} -j$(nproc) modules
if [[ $? -ne 0 ]]
then
echo "BSP build failed"
exit $?
fi
echo "BSP build successfully"
# Install modules
make -C $KERNEL_DIR modules_install ARCH=arm64 O=$KERNEL_OUT LOCALVERSION=-tegra CROSS_COMPILE=$CROSS_COMPILE INSTALL_MOD_PATH=$KERNEL_MODULES_OUT
if [[ $? -ne 0 ]]
then
echo "Installing modules failed"
exit $?
fi
echo "Installing modules succeeded"
# Copy the binaries built to the default locations expected by the flashing tool
cd $KERNEL_OUT
echo "Copying binaries..."
sudo cp -rfv ./arch/arm64/boot/Image $JETPACK/kernel/ && \
sudo cp -rfv ./arch/arm64/boot/dts/nvidia/* $JETPACK/kernel/dtb && \
sudo cp -rf $JETPACK/rootfs $JETPACK/rootfs-bk-orig && \
sudo cp -arfv $KERNEL_MODULES_OUT/lib rootfs/
echo "Copying binaries done"
if [[ $? -eq 0 ]]
then
echo "Build and copy done"
exit $?
fi
echo "Build and copy terminated with fails"
Is there anything missing @WayneWWW ?
Hi all,
The issue was fixed using nvbuild.sh and nvcommon_build.sh to compile the sources, you can get the shell script in public sources in kernel_src archive.
Follow the documentation below to be able to cross -compile the image, dtb and modules and copying it to right paths.
https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SD/Kernel/KernelCustomization.html