Skip to main content Link Menu Expand (external link) Document Search Copy Copied



         This section is under development or not public.

Date: 21/06/2022

Source Document

The bootloader must be loaded from the internal eMMC. the Kernel and the DTB can be loaded from the can be loaded from a GPT formatted SD card, USB drive, NVMe SSD or a network drive via DHCP/TFTP.

The CBoot Boot options (CBO) is a device tree that can be used to set certain boot configuration options such as device priority and IP addresses used to boot from a network. The name of the CBO device tree node is boot-configuration

Thr cbo.dts file can be found in the Linux_for_Tegra/bootloader directory

/*
 * Copyright (c) 2018-2020, NVIDIA CORPORATION.  All rights reserved.
 *
 * NVIDIA CORPORATION and its licensors retain all intellectual property
 * and proprietary rights in and to this software, related documentation
 * and any modifications thereto.  Any use, reproduction, disclosure or
 * distribution of this software and related documentation without an express
 * license agreement from NVIDIA CORPORATION is strictly prohibited.
 */

/dts-v1/;

/ {
    compatible = "nvidia,cboot-options-v1";
    boot-configuration {
        /* nvme boot-order can be in "nvme:C<n>", "nvme:pcie@<addr>", or "nvme" format */
        boot-order = "sd", "usb", "nvme", "emmc", "net";
        tftp-server-ip = /bits/ 8 <192 168 0 1>;
        dhcp-enabled;
        /* remove dhcp-enabled if uncommenting static-ip configuration */
        /* static-ip = /bits/ 8 <0 0 0 0>;
         * ip-netmask = /bits/ 8 <255 255 255 0>;
         * ip-gateway = /bits/ 8 <0 0 0 0>;
         */
    };
};

In some cases we may need to modify to force a certain order. Here I’ve given the emmc priority over nvme

 boot-order = "sd", "usb", "emmc", "nvme", "net";

Now that we’ve modified the DTS we need to rebuild the DTB.

Follow these steps

  1. Locate and cd to the $BSPDIR/Linux_for_Tegra/bootloader/ folder where the cbo.dts file sits.
  2. (HINT: $HOME/nvidia/nvidia_sdk/...)
  3. Modify the cbo.dts file as necessary as shown in the example above more info here.
  4. Enter the command to convert the DTS to DTB (this is run from the same bootloader directory as in step 1.)
  5. dtc -I dts -O dtb -o cbo.dtb cbo.dts the dtc executable can be found in $BSPDIR/Linux_for_Tegra/kernel/dtc
  6. Flash the partition CPUBL-CFG. using the flash script

Flashing the device with changes

click here for the original document. apart from the file systems prerequisites listed in the original document when running the usb cable must be connected to the recovery usb port of the Jetson xavier.

The flash.sh helper script exists to flash the board with the bootloader and the kernel and optionally flash the root file system to internal or external storage device.

sudo ./flash.sh -r -k CPUBL-CFG -d ./bootloader/cbo.dtb jetson-xavier mmcblk0p1

Back up and restore a Jetson Device:

tolls for backup and restore are located in /Linux_for_Tegra/tools/backup-restore/ instructions are in the README file in the same directory. (Need to install Secureboot)

boot console

see boot messages

Click here to report Errors, make Suggestions or Comments!