Saurabh Gorecha | 70389ca | 2020-04-22 21:31:24 +0530 | [diff] [blame] | 1 | Qualcomm Technologies, Inc. |
| 2 | =========================== |
| 3 | |
| 4 | Trusted Firmware-A (TF-A) implements the EL3 firmware layer for QTI SC7180. |
| 5 | |
| 6 | |
| 7 | Boot Trace |
| 8 | ------------- |
| 9 | |
| 10 | Bootrom --> BL1/BL2 --> BL31 --> BL33 --> Linux kernel |
| 11 | |
| 12 | BL1/2 and BL33 can currently be supplied from Coreboot + Depthcharge |
| 13 | |
| 14 | How to build |
| 15 | ------------ |
| 16 | |
| 17 | Code Locations |
| 18 | ~~~~~~~~~~~~~~ |
| 19 | |
| 20 | - Trusted Firmware-A: |
| 21 | `link <https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git>`__ |
| 22 | |
| 23 | Build Procedure |
| 24 | ~~~~~~~~~~~~~~~ |
| 25 | |
| 26 | QTI SoC expects TF-A's BL31 to get integrated with other boot software |
| 27 | Coreboot, so only bl31.elf need to get build from the TF-A repository. |
| 28 | |
| 29 | The build command looks like |
| 30 | |
| 31 | make CROSS_COMPILE=aarch64-linux-gnu- PLAT=sc7180 COREBOOT=1 |
| 32 | |
| 33 | update value of CROSS_COMPILE argument with your cross-compilation toolchain. |
| 34 | |
| 35 | Additional QTISECLIB_PATH=<path to qtiseclib> can be added in build command. |
| 36 | if QTISECLIB_PATH is not added in build command stub implementation of qtiseclib |
| 37 | is picked. qtiseclib with stub implementation doesn't boot device. This was |
| 38 | added to satisfy compilation. |
| 39 | |
| 40 | QTISELIB for SC7180 is available at |
| 41 | `link <https://review.coreboot.org/cgit/qc_blobs.git/plain/sc7180/qtiseclib/libqtisec.a>`__ |