Intel® Stratix® 10 Hard Processor System Remote System Update User Guide

ID 683021
Date 2/23/2024
Public
Document Table of Contents

5.3.2. U-Boot RSU Commands

U-Boot offers the rsu command, with a full set of options for managing the RSU, similar with the functionality offered by the RSU client.

The following commands do not have an RSU client equivalent:
  • list
  • update
  • dtb
The rsu list command:
  • Queries the SDM about the location of the SPT in flash, reads and displays it.
  • Reads the CMF pointer block from flash and displays the relevant information.
  • Queries SDM about the currently running image, RSU state and the encountered errors and displays the information.
The following is an example of the rsu list command being used:
SOCFPGA # rsu list
RSU: Remote System Update Status
Current Image    : 0x01000000
Last Fail Image  : 0x00000000
State            : 0x00000000
Version          : 0x00000202
Error location   : 0x00000000
Error details    : 0x00000000
Retry counter    : 0x00000000
RSU: Sub-partition table 0 offset 0x00910000
RSU: Sub-partition table 1 offset 0x00918000
SF: Detected mt25qu02g with page size 256 Bytes, erase size 4 KiB, total 256 MiB
RSU: Sub-partition table content
       BOOT_INFO	Offset: 0x0000000000000000	Length: 0x00110000	Flag : 0x00000003
   FACTORY_IMAGE	Offset: 0x0000000000110000	Length: 0x00800000	Flag : 0x00000003
              P1	Offset: 0x0000000001000000	Length: 0x01000000	Flag : 0x00000000
            SPT0	Offset: 0x0000000000910000	Length: 0x00008000	Flag : 0x00000001
            SPT1	Offset: 0x0000000000918000	Length: 0x00008000	Flag : 0x00000001
            CPB0	Offset: 0x0000000000920000	Length: 0x00008000	Flag : 0x00000001
            CPB1	Offset: 0x0000000000928000	Length: 0x00008000	Flag : 0x00000001
              P2	Offset: 0x0000000002000000	Length: 0x01000000	Flag : 0x00000000
              P3	Offset: 0x0000000003000000	Length: 0x01000000	Flag : 0x00000000
RSU: CMF pointer block offset 0x00920000
RSU: CMF pointer block's image pointer list
Priority 1 Offset: 0x0000000001000000 nslot: 0
The rsu update command is used to tell the SDM to load an image from a specific address. The following is an example of the rsu update command:
SOCFPGA # rsu update 0x03000000
RSU: RSU update to 0x0000000003000000

The rsu dtb command is used to let U-Boot update the QSPI partition called "qspi_boot" in the Linux DTB so that it starts immediately after the BOOT_INFO partition. This way the decision firmware, decision firmware data, and the factory image are not accessible from Linux*, as this reduces the risk of accidental corruption for them. The size of the partition is also reduced accordingly.

For more information, refer to the Protected Access to Flash section.

The rsu dtb operates on the DTB loaded in memory by U-Boot, before passing it to Linux*. The sequence to use is:
  1. Load DTB.
  2. Run rsu dtb command.
  3. Boot Linux*

Refer to the Exercising U-Boot RSU Commands section for examples of how to use the U-Boot rsu command.

For more information about U-Boot commands, refer to the U-Boot RSU Reference Information section.