OP-TEE / optee_os

Trusted side of the TEE
Other
1.54k stars 1.04k forks source link

i.MX6Q hanging at "Primary CPU switching to normal world boot" #2002

Closed janhieber closed 4 years ago

janhieber commented 6 years ago

Hi! I try to get OP-TEE working on a Wandboard Quad rev D1 (latest). I'm using OP-TEE 2.5.0, Linux 4.13.16, U-Boot v2017.11.

I did the following adaptions: In U-Boot In .config

CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg,MX6QDL,TEE_RAM_SIZE=0x4000000"

In board/wandboard/wandboard.c:dram_init()

gd->ram_size = imx_ddr_size() - CONFIG_TEE_RAM_SIZE;

Linux Enabled TEE stuff

CONFIG_TEE=y
CONFIG_OPTEE=y
CONFIG_ARM_PSCI_FW=y
CONFIG_HAVE_ARM_SMCCC=y

OP-TEE OS Everything in core/arch/arm/plat-imx/platform_config.h seems to be for 1 GiB RAM, do I need changes here? Compilation

make ARCH=arm CFG_PAGEABLE_ADDR=0 CFG_NS_ENTRY_ADDR=0x12000000 CFG_DT_ADDR=0x18000000 CFG_DT=y DEBUG=y CFG_TEE_CORE_LOG_LEVEL=4 PLATFORM=imx-mx6qsabresd CFG_BOOT_SYNC_CPU=n CFG_MX6Q=y CFG_BUILT_IN_ARGS=y
mkimage -A arm -O linux -C none -a 0x4dffffe4 -e 0x4e000000 -d
./out/arm-plat-imx/core/tee.bin uTee

Booting

ext4load mmc 0:1 0x12000000 /boot/zImage
ext4load mmc 0:1 0x18000000 /boot/imx6q-wandboard.dtb
ext4load mmc 0:1 0x20000000 /boot/uTee
bootm 0x20000000 - 0x18000000

Now I get this and than OP-TEE hangs:

## Booting kernel from Legacy Image at 20000000 ...
   Image Name:
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    249820 Bytes = 244 KiB
   Load Address: 4dffffe4
   Entry Point:  4e000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 18000000
   Booting using the fdt blob at 0x18000000
   Loading Kernel Image ... OK
CACHE: Misaligned operation at range [4dffffe4, 4e03cfe4]
   Using Device Tree in place at 18000000, end 1800bbfe

Starting kernel ...

DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: CFG_SHMEM_START type NSEC_SHM 0x4ff00000 size 0x00100000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: CFG_TA_RAM_START type TA_RAM 0x4e100000 size 0x01e00000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: VCORE_UNPG_RW_PA type TEE_RAM_RW 0x4e03b000 size 0x000c5000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: VCORE_UNPG_RX_PA type TEE_RAM_RX 0x4e000000 size 0x0003b000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: ANATOP_BASE type IO_SEC 0x02000000 size 0x00200000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: GIC_BASE type IO_SEC 0x00a00000 size 0x00100000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: CONSOLE_UART_BASE type IO_NSEC 0x02000000 size 0x00200000

DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: PL310_BASE type IO_SEC 0x00a00000 size 0x00200000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:537: Physical mem map overlaps 0xa00000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:524: SRC_BASE type IO_SEC 0x02000000 size 0x00200000
DEBUG:   [0x0] TEE-CORE:add_phys_mem:537: Physical mem map overlaps 0x2000000
DEBUG:   [0x0] TEE-CORE:verify_special_mem_areas:462: No NSEC DDR memory area defined
DEBUG:   [0x0] TEE-CORE:add_va_space:563: type RES_VASPACE size 0x00a00000
DEBUG:   [0x0] TEE-CORE:add_va_space:563: type SHM_VASPACE size 0x00a00000
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type TEE_RAM_RX   va 0x4e000000..0x4e03afff pa 0x4e000000..0x4e03afff size 0x0003b000 (
smallpg)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type TEE_RAM_RW   va 0x4e03b000..0x4e0fffff pa 0x4e03b000..0x4e0fffff size 0x000c5000 (
smallpg)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type SHM_VASPACE  va 0x4e100000..0x4eafffff pa 0x00000000..0x009fffff size 0x00a00000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type IO_SEC       va 0x4eb00000..0x4ecfffff pa 0x02000000..0x021fffff size 0x00200000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type RES_VASPACE  va 0x4ed00000..0x4f6fffff pa 0x00000000..0x009fffff size 0x00a00000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type TA_RAM       va 0x4f700000..0x514fffff pa 0x4e100000..0x4fefffff size 0x01e00000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type NSEC_SHM     va 0x51500000..0x515fffff pa 0x4ff00000..0x4fffffff size 0x00100000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type IO_NSEC      va 0x51600000..0x517fffff pa 0x02000000..0x021fffff size 0x00200000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:dump_mmap_table:690: type IO_SEC       va 0x51800000..0x519fffff pa 0x00a00000..0x00bfffff size 0x00200000 (
pgdir)
DEBUG:   [0x0] TEE-CORE:core_mmu_alloc_l2:249: L2 table used: 1/4
INFO:    TEE-CORE:
DEBUG:   [0x0] TEE-CORE:init_canaries:169: #Stack canaries for stack_tmp[0] with top at 0x4e0627f8
DEBUG:   [0x0] TEE-CORE:init_canaries:169: watch *0x4e0627fc
DEBUG:   [0x0] TEE-CORE:init_canaries:169: #Stack canaries for stack_tmp[1] with top at 0x4e062ef8
DEBUG:   [0x0] TEE-CORE:init_canaries:169: watch *0x4e062efc
DEBUG:   [0x0] TEE-CORE:init_canaries:169: #Stack canaries for stack_tmp[2] with top at 0x4e0635f8
DEBUG:   [0x0] TEE-CORE:init_canaries:169: watch *0x4e0635fc
DEBUG:   [0x0] TEE-CORE:init_canaries:169: #Stack canaries for stack_tmp[3] with top at 0x4e063cf8
DEBUG:   [0x0] TEE-CORE:init_canaries:169: watch *0x4e063cfc
DEBUG:   [0x0] TEE-CORE:init_canaries:170: #Stack canaries for stack_abt[0] with top at 0x4e064538
DEBUG:   [0x0] TEE-CORE:init_canaries:170: watch *0x4e06453c
DEBUG:   [0x0] TEE-CORE:init_canaries:170: #Stack canaries for stack_abt[1] with top at 0x4e064d78
DEBUG:   [0x0] TEE-CORE:init_canaries:170: watch *0x4e064d7c
DEBUG:   [0x0] TEE-CORE:init_canaries:170: #Stack canaries for stack_abt[2] with top at 0x4e0655b8
DEBUG:   [0x0] TEE-CORE:init_canaries:170: watch *0x4e0655bc
DEBUG:   [0x0] TEE-CORE:init_canaries:170: #Stack canaries for stack_abt[3] with top at 0x4e065df8
DEBUG:   [0x0] TEE-CORE:init_canaries:170: watch *0x4e065dfc
DEBUG:   [0x0] TEE-CORE:init_canaries:172: #Stack canaries for stack_thread[0] with top at 0x4e067e38
DEBUG:   [0x0] TEE-CORE:init_canaries:172: watch *0x4e067e3c
DEBUG:   [0x0] TEE-CORE:init_canaries:172: #Stack canaries for stack_thread[1] with top at 0x4e069e78
DEBUG:   [0x0] TEE-CORE:init_canaries:172: watch *0x4e069e7c
DEBUG:   [0x0] TEE-CORE:add_optee_dt_node:406: OP-TEE Device Tree node already exists!
INFO:    TEE-CORE: OP-TEE version: 2.5.0-dev #10 Di 12. Dez 14:34:01 UTC 2017 arm
DEBUG:   [0x0] TEE-CORE:mobj_mapped_shm_init:592: Shared memory address range: 4e100000, 4eb00000
INFO:    TEE-CORE: Initialized
DEBUG:   [0x0] TEE-CORE:init_primary_helper:680: Primary CPU switching to normal world boot

What also wonders me is the misaligned cache addr warning. The addresses seem to be OK, Why is that?

Is the problem that I have 2 GiB RAM and the addresses are in the middle of it?

JunOllyLi commented 6 years ago

I have dealt with this problem before. If I remember correctly, it was caused by the Linux kernel trying to turn on SMP. The Linux Kernel from the OPTEE team only supports one core on IMX6. And default SMP code on IMX6 tries to write to some HW which it does not have permission to access. You need to modify the Linux kernel to talk to OPTEE OS to turn on the other cores.

Sorry I cannot remember all the details about what to change anymore.

MrVan commented 6 years ago

@janhieber Did you disable CAAM in kernel dts? Could you enable earlyprintk and see where it crashes in kernel side?

janhieber commented 6 years ago

Yes I did disable CAAM, I'm not sure but I also compiled the kernel without CAAM I think. I'll disable SMP and check if that works, thanks!

I shall also have a look at how the kernel is compiled when building with OP_TEE/build...

Thanks!

MrVan commented 6 years ago

It maybe that you do not have the psci code for secondary cores. I use psci, but that code have not open source. I’ll finalize and public that later.

juppin commented 6 years ago

For me it is working. I use optee_os, optee_client and optee_test 3.0.0. U-Boot 2017.11 and Linux Kernel 4.14.14. Also SMP with 4 cores but my board has only 1 gb ram.

All tests are passed without errors

github-actions[bot] commented 4 years ago

This issue has been marked as a stale issue because it has been open (more than) 30 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 5 days. Note, that you can always re-open a closed issue at any time.

geneva1 commented 4 years ago

@MrVan @janhieber Are the following kernel configs for CAAM and SMP not needed ? And how to enable earlyprintk and see where it crashes in kernel side inside qemu emulation session ?

Besides, what about outer-cache ?

I do not understand why need to disable CAAM which is Cryptographic Accelerator and Assurance Module

rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build/kconfigs$ cat qemu.conf  | grep CAAM
CONFIG_CRYPTO_DEV_FSL_CAAM_COMMON=y
CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC=y
CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API_DESC=y
CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=y
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build/kconfigs$ cat qemu.conf  | grep SMP
CONFIG_X86_64_SMP=y
CONFIG_SMP=y
CONFIG_X86_VSMP=y
CONFIG_XEN_PV_SMP=y
CONFIG_XEN_PVHVM_SMP=y
CONFIG_MAXSMP=y
CONFIG_PM_SLEEP_SMP=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_BT_SELFTEST_SMP=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_VIDEO_VP27SMPX=y
CONFIG_QCOM_SMP2P=y
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build/kconfigs$ 

As for enabling earlyprintk for qemu inside extlinux.conf or conf.mk , which of the following files should I modify ?

rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build$ locate extlinux
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/amarula/a64-relic/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/amarula/vyasa/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/asus/tinker/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/embest/riotboard/rootfs_overlay/boot/extlinux
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/embest/riotboard/rootfs_overlay/boot/extlinux/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/orangepi/orangepi-lite2/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/orangepi/orangepi-one-plus/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/pine64/rock64/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/solidrun/clearfog/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/board/solidrun/macchiatobin/extlinux.conf
/home/rog/Downloads/optee_os/optee-qemu/buildroot/boot/syslinux/0011-extlinux-Use-the-host-toolchain-to-build.patch
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157A-DK1/boot/extlinux
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157A-DK1/boot/extlinux/extlinux.conf
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157C-DK2/boot/extlinux
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157C-DK2/boot/extlinux/extlinux.conf
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157C-EV1/boot/extlinux
/home/rog/optee_os/build/br-ext/board/stmicroelectronics/stm32mp1-tz/overlay-STM32MP157C-EV1/boot/extlinux/extlinux.conf
/home/rog/optee_os/buildroot/board/amarula/a64-relic/extlinux.conf
/home/rog/optee_os/buildroot/board/amarula/vyasa/extlinux.conf
/home/rog/optee_os/buildroot/board/asus/tinker/extlinux.conf
/home/rog/optee_os/buildroot/board/embest/riotboard/rootfs_overlay/boot/extlinux
/home/rog/optee_os/buildroot/board/embest/riotboard/rootfs_overlay/boot/extlinux/extlinux.conf
/home/rog/optee_os/buildroot/board/orangepi/orangepi-lite2/extlinux.conf
/home/rog/optee_os/buildroot/board/orangepi/orangepi-one-plus/extlinux.conf
/home/rog/optee_os/buildroot/board/pine64/rock64/extlinux.conf
/home/rog/optee_os/buildroot/board/solidrun/clearfog/extlinux.conf
/home/rog/optee_os/buildroot/board/solidrun/macchiatobin/extlinux.conf
/home/rog/optee_os/buildroot/boot/syslinux/0011-extlinux-Use-the-host-toolchain-to-build.patch
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build$ 
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build$ locate "conf.mk"
/home/rog/Downloads/optee_os/core/arch/arm/plat-amlogic/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-bcm/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-d02/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-hikey/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-hisilicon/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-imx/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-k3/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-ls/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-marvell/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-mediatek/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-poplar/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-rcar/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-rockchip/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-rpi3/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-sam/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-sprd/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-stm/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-sunxi/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-synquacer/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-ti/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-uniphier/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-vexpress/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/home/rog/Downloads/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/home/rog/Downloads/optee_os/mk/checkconf.mk
/home/rog/Downloads/optee_os/optee-qemu/buildroot/package/autoconf/autoconf.mk
/home/rog/Downloads/optee_os/optee-qemu/buildroot/package/gconf/gconf.mk
/home/rog/Downloads/optee_os/optee-qemu/buildroot/package/pkgconf/pkgconf.mk
/home/rog/Downloads/optee_os/optee-qemu/buildroot/package/python-zeroconf/python-zeroconf.mk
/home/rog/Downloads/optee_os/optee-qemu/buildroot/package/rs485conf/rs485conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-amlogic/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-bcm/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-d02/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-hikey/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-hisilicon/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-imx/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-k3/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-ls/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-marvell/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-mediatek/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-poplar/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-rcar/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-rockchip/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-rpi3/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-sam/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-sprd/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-stm/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-sunxi/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-synquacer/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-ti/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-uniphier/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-vexpress/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/mk/checkconf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/out/arm/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/out/arm/export-ta_arm32/host_include/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/out/arm/export-ta_arm32/mk/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/out/arm/export-ta_arm64/host_include/conf.mk
/home/rog/Downloads/optee_os/optee-qemu/optee_os/out/arm/export-ta_arm64/mk/conf.mk
/home/rog/optee_os/buildroot/package/autoconf/autoconf.mk
/home/rog/optee_os/buildroot/package/gconf/gconf.mk
/home/rog/optee_os/buildroot/package/pkgconf/pkgconf.mk
/home/rog/optee_os/buildroot/package/python-zeroconf/python-zeroconf.mk
/home/rog/optee_os/buildroot/package/rs485conf/rs485conf.mk
/home/rog/optee_os/core/arch/arm/plat-amlogic/conf.mk
/home/rog/optee_os/core/arch/arm/plat-bcm/conf.mk
/home/rog/optee_os/core/arch/arm/plat-d02/conf.mk
/home/rog/optee_os/core/arch/arm/plat-hikey/conf.mk
/home/rog/optee_os/core/arch/arm/plat-hisilicon/conf.mk
/home/rog/optee_os/core/arch/arm/plat-imx/conf.mk
/home/rog/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/home/rog/optee_os/core/arch/arm/plat-k3/conf.mk
/home/rog/optee_os/core/arch/arm/plat-ls/conf.mk
/home/rog/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/home/rog/optee_os/core/arch/arm/plat-marvell/conf.mk
/home/rog/optee_os/core/arch/arm/plat-mediatek/conf.mk
/home/rog/optee_os/core/arch/arm/plat-poplar/conf.mk
/home/rog/optee_os/core/arch/arm/plat-rcar/conf.mk
/home/rog/optee_os/core/arch/arm/plat-rockchip/conf.mk
/home/rog/optee_os/core/arch/arm/plat-rpi3/conf.mk
/home/rog/optee_os/core/arch/arm/plat-sam/conf.mk
/home/rog/optee_os/core/arch/arm/plat-sprd/conf.mk
/home/rog/optee_os/core/arch/arm/plat-stm/conf.mk
/home/rog/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/home/rog/optee_os/core/arch/arm/plat-sunxi/conf.mk
/home/rog/optee_os/core/arch/arm/plat-synquacer/conf.mk
/home/rog/optee_os/core/arch/arm/plat-ti/conf.mk
/home/rog/optee_os/core/arch/arm/plat-uniphier/conf.mk
/home/rog/optee_os/core/arch/arm/plat-vexpress/conf.mk
/home/rog/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/home/rog/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/home/rog/optee_os/mk/checkconf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-amlogic/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-bcm/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-d02/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-hikey/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-hisilicon/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-imx/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-k3/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-ls/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-marvell/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-mediatek/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-poplar/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-rcar/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-rockchip/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-rpi3/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-sam/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-sprd/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-stm/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-sunxi/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-synquacer/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-ti/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-uniphier/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-vexpress/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/home/rog/optee_os/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/home/rog/optee_os/optee_os/mk/checkconf.mk
/home/rog/optee_os/optee_os/out/arm/conf.mk
/home/rog/optee_os/optee_os/out/arm/export-ta_arm32/host_include/conf.mk
/home/rog/optee_os/optee_os/out/arm/export-ta_arm32/mk/conf.mk
/home/rog/optee_os/optee_os/out/arm/export-ta_arm64/host_include/conf.mk
/home/rog/optee_os/optee_os/out/arm/export-ta_arm64/mk/conf.mk
/home/rog/optee_os/out/arm-plat-vexpress/conf.mk
/home/rog/optee_os/trusted-firmware-a/lib/fconf/fconf.mk
/usr/share/cdbs/1/rules/autoreconf.mk
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build$ locate bios_qemu_tz_arm
rog@rog-GL502VMK:~/Downloads/optee_os/optee-qemu/build$