[U-Boot] How to test new bootloaders on Jetson TX1?

Varun Wadekar vwadekar at nvidia.com
Thu Feb 15 16:57:57 UTC 2018


Andreas, can you try the TOS packaging script available in our public repo?

http://nv-tegra.nvidia.com/gitweb/?p=3rdparty/ote_partner/tlk.git;a=blob;f=tools/gen_tos_part_img.py;h=47828f7028e56a6cffb9b773502b13dc431a015e;hb=HEAD

Please let me know if this does not work for you.

For the upstream ATF code, our downstream has not caught up with upstream yet, so I am not sure if upstream would directly work for TX1. But its definitely worth a try.

-----Original Message-----
From: Tom Warren 
Sent: Thursday, February 15, 2018 7:44 AM
To: Jonathan Hunter <jonathanh at nvidia.com>; Andreas Färber <afaerber at suse.de>
Cc: linux-tegra at vger.kernel.org; U-Boot <u-boot at lists.denx.de>; Alexander Graf <agraf at suse.de>; Mian Yousaf Kaukab <yousaf.kaukab at suse.com>; Varun Wadekar <vwadekar at nvidia.com>
Subject: RE: How to test new bootloaders on Jetson TX1?



-----Original Message-----
From: Jonathan Hunter 
Sent: Thursday, February 15, 2018 8:39 AM
To: Andreas Färber <afaerber at suse.de>
Cc: linux-tegra at vger.kernel.org; U-Boot <u-boot at lists.denx.de>; Alexander Graf <agraf at suse.de>; Mian Yousaf Kaukab <yousaf.kaukab at suse.com>; Tom Warren <TWarren at nvidia.com>; Varun Wadekar <vwadekar at nvidia.com>
Subject: Re: How to test new bootloaders on Jetson TX1?


On 15/02/18 15:12, Andreas Färber wrote:
> Hi Jon,
> 
> Am 15.02.2018 um 15:01 schrieb Jon Hunter:
>> On 15/02/18 12:32, Andreas Färber wrote:
>>> Am 15.02.2018 um 10:22 schrieb Jon Hunter:
>>>> On 15/02/18 01:51, Andreas Färber wrote:
>>>>> I would like to test the latest version of U-Boot on the Jetson TX1.
>>> [...]
>>>>> Here's what I have tried:
>>>>>
>>>>> $ sudo ./flash.sh p2371-2180-devkit mmcblk0p1
>>>> This should work. Which u-boot binary are you copying and where are 
>>>> you copying it?
>>>>
>>>> I copy the u-boot-dtb.bin over u-boot.bin in the L4T directory 
>>>> Linux_for_Tegra/bootloader/t186ref/p2771-0000/500/u-boot.bin.
>>>
>>> I downloaded the .rpm from
>>> https://build.opensuse.org/package/show/hardware:boot/u-boot-p2371-2
>>> 180 extracting all of u-boot, u-boot.bin, u-boot.dtb and 
>>> u-boot-dtb.bin to bootloader/t210ref/p2371-2180/ - and as described 
>>> it makes a difference in that it then ceases to boot to a U-Boot 
>>> prompt.
>>
>> Sorry, looks like I mixed TX1 and TX2. I see you are using TX1. 
>> However, I believe you are still booting the wrong u-boot file.
>>
>> If you look at the p2371-2180-devkit.conf you will see that it has ...
>>
>>  DFLT_KERNEL_IMAGE="bootloader/${target_board}/p2371-2180/u-boot.bin
>>
>> For using the upstream u-boot, we need to use the u-boot-dtb.bin and 
>> not the u-boot.bin. So you can either ...
>>
>> 1. Update the p2371-2180-devkit.conf to use the u-boot-dtb.bin that 
>> you copied.
>> 2. Move the u-boot-dtb.bin from your rpm to 
>> bootloader/t210ref/p2371-2180/u-boot.bin.
> 
> Both in the Nvidia tarball and in our upstream based package builds, 
> u-boot.bin and u-boot-dtb.bin are identical. Since some time 
> u-boot-dtb.bin gets copied over as u-boot.bin for consistency upstream.

Good to know!

> Should this work with the vanilla upstream files, or do they need any 
> headers or signatures or something?

Yes should work fine with vanilla upstream.

> Do any of you have that upstream version booting successfully, or 
> might it be an upstream U-Boot regression? I was so far assuming it's 
> a user error, so haven't tried bisecting yet.

I am using "U-Boot 2017.03". However, I realise that I am currently based upon L4T rel24.2.1 (as rel28.1 was not available when I started using L4T for testing upstream). I hope it would not matter, but you never know. I plan to move to rel28.2 once it is released. If we think it is a problem with rel28.1 I should be able to test my side.

[Tom] Current (R28.x) U-Boot requires CBoot to load - we no longer use NVTBoot as we did in R24.x.  Hence, upstream U-Boot needs some modifications to be able to be loaded by CBoot instead of NVTBoot.  I haven't done that work yet (patches to convert upstream Denx U-Boot source for T210/T186 to use CBoot as the loader - don't know how I'll structure it so old (NVTBoot) bootflow will still work as well as the new (CBoot) bootflow).  I've got it on my plate, but other priorities have prevented me from working on it. I'll try to get it into the queue.  Until then, you won't be able to load/run upstream U-Boot using the boot flow in R28.x. Sorry.


Cheers
Jon

--
nvpublic


More information about the U-Boot mailing list