Hi Marek,

On 11/25/25 3:20 PM, Marek Vasut wrote:
On 11/25/25 11:07 AM, Quentin Schulz wrote:

Hello Quentin,

Example invocation:
"
$ mkimage -E -A arm -C none -e 0xc0008000 -a 0xc0008000 -f auto \
           -d arch/arm/boot/zImage \
           -b arch/arm/boot/dts/st/stm32mp135f-dhcor-dhsbc.dtb \
           -z ../optee_os/out/arm-plat-stm32mp1/core/tee-raw.bin \
      -Z 0xde000000 \
           /path/to/output/fitImage
"

...

Which formats are supported for the --tee-file parameter? OP-TEE OS itself has multiple versions for the binary header (v1 and v2?) and we can pass either a binary (tee.bin) or an ELF (tee.elf) in binman, c.f. tools/binman/etype/tee_os.py

The raw binary only, see the example invocation above.


Must be documented then please.

Where would you document this ? In the manpage ? Elsewhere ?


Wherever the user can see it when using the tool. The manpage for sure yes. Maybe in the mkimage usage help string but I'm worried it'll make it harder to read.

Also, turns out that one really is supposed to use the raw binary format for OP-TEE OS (since 3.8.0). I had missed that part so it kinda makes sense to only support that, after all 3.8.0 is already 6 years old! Blobs from Rockchip do have a .bin extension so I assume they are raw binaries.

[...]

OK so... On Rockchip we have TF-A and OP-TEE OS split in multiple entries with different load addresses (see @atf-seq and @tee-seq in arch/arm/dts/rockchip-u-boot.dtsi). I guess this means we wouldn't be able to use this auto FIT?

Are those multiple "versions" of these binaries or are those really separate parts of a single binary ? The later seems a bit odd. Do you have an example of such configuration?


Same binary split.


[...]


Neither of the binaries listed above is TEE ?


Oopsies. Got distracted by reviewing both tf-a (already merged) and tee support in mkimage -f auto. So this applies to TF-A part only, where we (Rockchip) use the ELF file (for Rockchip blobs; maybe upstream TF-A is loadable in raw binary form as well?) and that is split by binman. Since one is supposed to use the raw bin for OP-TEE OS and that binman doesn't actually split this into multiple entries, this doesn't apply, sorry for the noise.

I can imagine you can have tee header and something else bundled in the fitImage, but for such more complex case, better use .its file to describe it.

Fair.

Quentin

Reply via email to