xref: /rk3399_ARM-atf/docs/plat/qti/lemans_evk.rst (revision 8dae0862c502e08568a61a1050091fa9357f1240)
1Dragonwing IQ-9075 development platform
2=========================================
3
4Trusted Firmware-A (TF-A) platform port for Lemans SoC based EVK platform also
5known as IQ-9075 as the marketing name. For details about IQ-9075 platform,
6refer to this
7`link <https://www.qualcomm.com/internet-of-things/products/iq9-series/iq-9075>`__
8
9Boot flow
10-------------
11
12Similar to :ref:`Dragonwing RB3 Gen 2 development platform`.
13
14How to build
15------------
16
17Steps to build TF-A BL2 and FIP payload::
18
19	$ make CROSS_COMPILE=aarch64-none-elf- PLAT=lemans_evk SPD=opteed \
20            QTISECLIB_PATH=<qtiseclib-path> BL32=<path-to-optee-bin> \
21            BL33=<path-to-os-bootloader-bin> fip all
22
23        $ ./tools/qti/generate_fip_elf.sh build/lemans_evk/release/fip.bin \
24            0xaf000000
25
26QTISECLIB for lemans is still work under progress, the current port allows to
27boot OP-TEE OS.
28
29Note that the bl2.elf generated here is required to be signed as TZ image with
30QTI signing involved. Also, the fip.elf generated above is signed using
31`qtestsign <https://github.com/msm8916-mainline/qtestsign>`__ which just puts
32the OEM test signature to allow it to work on devices in non-secure mode. In
33secure mode, it is required to be signed using
34`sectools v2 <https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-11/tools.html>`__
35
36How to flash
37------------
38
39Generate a Yocto BSP image for iq-9075-evk following instructions from meta-qcom
40`here <https://github.com/qualcomm-linux/meta-qcom?tab=readme-ov-file#quick-build>`__
41
42It will generate a tar ball in the build folder for iq-9075-evk something like:
43`qcom-multimedia-image-iq-9075-evk.rootfs.qcomflash.tar.gz`. Untar it and replace
44`tz.mbn` with `bl2.mbn` and `uefi.elf` with `fip.elf` that you have generated by
45yourself.
46
47Then flash the board following the meta-qcom instructions
48`here <https://github.com/qualcomm-linux/meta-qcom?tab=readme-ov-file#flash-images>`__
49
50Boot Trace
51-------------
52
53Boot logs on lemans_evk::
54
55        Format: Log Type - Time(microsec) - Message - Optional Info
56        Log Type: B - Since Boot(Power On Reset),  D - Delta,  S - Statistic
57        S - QC_IMAGE_VERSION_STRING=BOOT.MXF.1.0.c1-00430-KODIAKLA-1
58        S - IMAGE_VARIANT_STRING=SocLeMansLAA
59        S - OEM_IMAGE_VERSION_STRING=258af405f4c7
60        <snip-XBL-logs>
61        NOTICE:  BL2: v2.14.0(release):v2.13.0-1873-g0c07fd50a
62        NOTICE:  BL2: Built : 17:52:29, Feb 17 2026
63        NOTICE:  BL2: Booting BL31
64        NOTICE:  BL31: v2.14.0(release):v2.13.0-1873-g0c07fd50a
65        NOTICE:  BL31: Built : 17:52:29, Feb 17 2026
66        ERROR:   Please use QTISECLIB_PATH while building TF-A
67        ERROR:   Please refer docs/plat/qti/* for more details.
68        I/TC:
69        I/TC: OP-TEE version: 4.9.0-1-gc6cb871cc (gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)) #1 Tue Feb 17 12:22:27 UTC 2026 aarch64
70        I/TC: WARNING: This OP-TEE configuration might be insecure!
71        I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
72        I/TC: Primary CPU initializing
73        I/TC: Platform Qualcomm: Flavor lemans
74        I/TC: Primary CPU switching to normal world boot
75        PANIC at PC : 0x000000001c200d70
76