]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
iot2050: Update firmware layout
authorJan Kiszka <jan.kiszka@siemens.com>
Tue, 28 Feb 2023 18:19:11 +0000 (19:19 +0100)
committerTom Rini <trini@konsulko.com>
Wed, 29 Mar 2023 15:58:26 +0000 (11:58 -0400)
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>
arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
configs/iot2050_pg1_defconfig
configs/iot2050_pg2_defconfig
doc/board/siemens/iot2050.rst
tools/binman/missing-blob-help

index 4666957686464c30a4fbbeeb780a7836b3d8f004..3ee0842e993fed666f46cf47c3f81c7fd42746fa 100644 (file)
                        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";
                        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];
                };
        };
 };
index 579971c39cd5ea263b7df45124d675694596937c..57a2a6d6f14719c8e84f040f80377a7fbd4f603b 100644 (file)
@@ -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
index 65400b4696ae6dd9069967413db41bbf578b5fda..e3f82ad30656eca257232e279870d6e8b7e352f6 100644 (file)
@@ -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
index fd3431fa3f8ce701011be799a7eebcb7cb867a96..26972e20ae951286fb30c8434b6c77095203a98b 100644 (file)
@@ -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
 --------
index f3a44d08acceb19d4a67bd861c7d9180dbb7394f..5fdb22c88c8f84105dcb2371f9d91937644946d2 100644 (file)
@@ -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