Why my jetson nano doesn't boot if I use a DTB file?

Hello to everyone.

I’ve bought the jetson nano vers. b01. Actually I’m trying to emulate windows 10 arm. To do that I need to use a special dtb file created by a guy on this forum. This is my extlinux.conf

TIMEOUT 30
DEFAULT primary

MENU TITLE L4T boot options

#LABEL primary
#MENU LABEL primary kernel
#LINUX /boot/Image
#INITRD /boot/initrd
#APPEND ${cbootargs}

LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image_kvm
INITRD /boot/initrd
APPEND ${cbootargs}

as u can see,I don’t use any DTB file and the nano can boot properly. But if I try to use any DTB file that are saved on the sd card,it won’t boot. I would like to know the reason. And I would like to know if it reads a default DTB file saved somewhere even if I don’t add it on the extlinux.conf file. I don’t understand because there are a lot of people with the same model as mine (B01) and they can boot the board declaring a DTB file,but in my case it does not work. It does not care,it won’t boot with any of these files and with any kernel (if it is a kvm enabled kernel or not it does not care) :

tegra210-p3448-0000-p3449-0000-a02-kvm.dtb
tegra210-p3448-0000-p3449-0000-b00.dtb
tegra210-p3448-0000-p3449-0000-b00-kvm.dtb
tegra210-p3448-0002-p3449-0000-a02.dtb
tegra210-p3448-0002-p3449-0000-b00.dtb

Hi,

What does that mean " if I try to use any DTB file that are saved on the sd card,it won’t boot."? Do you mean adding FDT option in the extlinux.conf?

Could you provide any uart log?

exactly. I have added a custom DTB file on the extlinux file. it means that there are people that are using a custom DTB file on the nano B01 and it works. but for me it does not work. the model of the nano is the same,we are using the same DTB file,but for me it does not work. I’m referring to this thread :

unfortunately at the moment I have no uart connector. you can get the modified DTB file from here :

Which jetpack release is this?

Can you use at least rel-32.4.3 ?

I’ve got the same result with the latest jetpack installed on ubuntu 18.04 and with the jetpack R32.3.1 installed on the xubuntu 20.04 image. it makes no difference. It stucks on the nvidia logo.

Are you sure your dtb matches your BSP?

I mean if this dtb is based on 32.3.1, do not use it on rel-32.4.3 or any release that is not 32.3.1.

Also, why do you mention sdcard in comment #1? Is this nano a b01 with emmc and you are booting from sdcard?

the DTB file has been modified for running with the xubuntu 20.04 where it is installed the jetpack 32.3.1. and I have burned the xubuntu 20.04 image on the ssd. my nano does not support emmc. my nano can accept only ssd cards

The reason I mentioned to use rel-32.4.3 is because I remember there was a bug to cause extlinux not able to load dtb in previous release.

Also, if this is sdcard based module then I don’t see any problem in the boot process.

Since you cannot provide the UART log, I can only guess

  1. the old bug on rel-32.3.1 causes FDT failed.

  2. The dtb itself has problem.

You can verify (2) by directly flash this dtb instead of using FDT in extlinux.conf.

give me a link where it explains how to “flash the dtb” ? I don’t understand what to do. usually I flash the img file on the ssd. I never flashed a dtb file.

You didn’t use sdkmanager before?

yeah. I used it on ubuntu 18.04 to upgrade the jetpack to the 32.5 release. but i can’t use it with xubuntu 20.04,because it is not supported.

Pick up the sdkmanager and let it to install the corresponding jetpack on your host first.

For example, if you are using rel-32.3.1, let it download rel-32.3.1 to your host but don’t let it flash your board.

Then, replace the dtb to Linux_for_Tegra/kernel/dtb/, put device into recovery mode and use below command to flash your board.

sudo ./flash.sh -k DTB jetson-nano-qspi-sd mmcblk0p1

If you don’t even put device into recovery mode before, read the quick start guide from our download centner.

I can’t download 32.3.1…

???
Isn’t jetpack4.3 there?

ok. is there…

which file should I replace ? if I have understood correctly,in the folder below there is one file that I should copy and paste on the /boot folder of the nano ? what’s the name ?

is the jetson-nano-qspi-sd a file ? where it is ?

Go to your nano device and see what is the default dtb in use.

jetson-nano-qspi-sd is the board config name.

There are lots of “.conf” file under Linux_for_Tegra. jetson-nano-qspi-sd.conf is one of them.

If you create a file named 12345678.conf with correct format, then you can use it in flash.sh too.

something that I don’t know should have happened because I don’t see any file anymore inside the /boot folder of the nano !

Maybe that is the reason your board stuck in nvidia logo… ?

What does the dmesg tell you?