iot2050: Update firmware layout
The latest version of the binary-only firmware parts come in a combined form of FSBL and sysfw containers. This implies some layout changes to the generated firmware image but also makes handling of artifacts much simpler (4 files less). The env locations will not change, just the space reserved for U-Boot will shrink from 4 to 3 MB - still plenty of space left in practice. Adjust configuration and documentation accordingly. Along this change, add a new reservation for update commands of the user-controlled OTP part. A specific userspace tool will fill it, and the FSBL will evaluate it during boot. This reservation will use 64K of the former sysfw section. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
This commit is contained in:
parent
ffbd5b29a4
commit
6ac9131702
5 changed files with 11 additions and 35 deletions
|
@ -25,15 +25,15 @@
|
|||
missing-msg = "iot2050-seboot";
|
||||
};
|
||||
|
||||
blob@0x080000 {
|
||||
offset = <0x080000>;
|
||||
blob@0x180000 {
|
||||
offset = <0x180000>;
|
||||
filename = "tispl.bin";
|
||||
};
|
||||
|
||||
fit@0x280000 {
|
||||
fit@0x380000 {
|
||||
description = "U-Boot for IOT2050";
|
||||
fit,fdt-list = "of-list";
|
||||
offset = <0x280000>;
|
||||
offset = <0x380000>;
|
||||
images {
|
||||
u-boot {
|
||||
description = "U-Boot";
|
||||
|
@ -94,25 +94,11 @@
|
|||
fill-byte = [00];
|
||||
};
|
||||
|
||||
/* sysfw, basic variant */
|
||||
blob-ext@0x6c0000 {
|
||||
/* OTP update command block */
|
||||
fill@0x6c0000 {
|
||||
offset = <0x6c0000>;
|
||||
#ifdef CONFIG_TARGET_IOT2050_A53_PG1
|
||||
filename = "sysfw_sr1.itb";
|
||||
#else
|
||||
filename = "sysfw_sr2.itb";
|
||||
#endif
|
||||
missing-msg = "iot2050-sysfw";
|
||||
};
|
||||
/* sysfw, advanced variant */
|
||||
blob-ext@0x740000 {
|
||||
offset = <0x740000>;
|
||||
#ifdef CONFIG_TARGET_IOT2050_A53_PG1
|
||||
filename = "sysfw_sr1.itb_HS";
|
||||
#else
|
||||
filename = "sysfw_sr2.itb_HS";
|
||||
#endif
|
||||
missing-msg = "iot2050-sysfw";
|
||||
size = <0x010000>;
|
||||
fill-byte = [ff];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -52,7 +52,7 @@ CONFIG_SPL_POWER_DOMAIN=y
|
|||
# CONFIG_SPL_SPI_FLASH_TINY is not set
|
||||
CONFIG_SPL_SPI_FLASH_SFDP_SUPPORT=y
|
||||
CONFIG_SPL_SPI_LOAD=y
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x280000
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x380000
|
||||
CONFIG_SYS_MAXARGS=64
|
||||
CONFIG_SYS_PBSIZE=1050
|
||||
CONFIG_CMD_ASKENV=y
|
||||
|
|
|
@ -54,7 +54,7 @@ CONFIG_SPL_POWER_DOMAIN=y
|
|||
# CONFIG_SPL_SPI_FLASH_TINY is not set
|
||||
CONFIG_SPL_SPI_FLASH_SFDP_SUPPORT=y
|
||||
CONFIG_SPL_SPI_LOAD=y
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x280000
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x380000
|
||||
CONFIG_SYS_MAXARGS=64
|
||||
CONFIG_SYS_PBSIZE=1050
|
||||
CONFIG_CMD_ASKENV=y
|
||||
|
|
|
@ -25,11 +25,7 @@ https://github.com/siemens/meta-iot2050/tree/master/recipes-bsp/u-boot/files/pre
|
|||
The following binaries from that source need to be present in the build folder:
|
||||
|
||||
- seboot_pg1.bin
|
||||
- sysfw_sr1.itb
|
||||
- sysfw_sr1.itb_HS
|
||||
- seboot_pg2.bin
|
||||
- sysfw_sr2.itb
|
||||
- sysfw_sr2.itb_HS
|
||||
|
||||
Building
|
||||
--------
|
||||
|
|
|
@ -21,13 +21,7 @@ Please read the section on SCP firmware in board/sunxi/README.sunxi64
|
|||
iot2050-seboot:
|
||||
See the documentation for IOT2050 board. Your image is missing SEBoot
|
||||
which is mandatory for board startup. Prebuilt SEBoot located at
|
||||
meta-iot2050/tree/master/recipes-bsp/u-boot/files/prebuild/tiboot3.bin.
|
||||
|
||||
iot2050-sysfw:
|
||||
See the documentation for IOT2050 board. Your image is missing system
|
||||
firmware which is mandatory for board startup. Prebuilt system firmware
|
||||
located at meta-iot2050/tree/master/recipes-bsp/u-boot/files/prebuild/
|
||||
with sysfw prefix.
|
||||
meta-iot2050/tree/master/recipes-bsp/u-boot/files/prebuild/seboot_pg*.bin.
|
||||
|
||||
k3-rti-wdt-firmware:
|
||||
If CONFIG_WDT_K3_RTI_LOAD_FW is enabled, a firmware image is needed for
|
||||
|
|
Loading…
Reference in a new issue