Hi Antonio,

 

I just tried checking out and building TF-M 1.5 for PSoC64 (admittedly with different versions of cmake and gcc) and I don’t see this problem.

 

Can you please try replacing the “-j” with “VERBOSE=1” in the second cmake command? That will show the actual gcc command that’s failing.

 

Chris

 

From: AntonioJavier.CabreraGutierrez--- via TF-M <tf-m@lists.trustedfirmware.org>
Sent: February 25, 2022 9:44 AM
To: tf-m@lists.trustedfirmware.org
Cc: Escobar Molero Antonio David (IFAG BEX RDE RDF EET) <Antonio.Escobar@infineon.com>
Subject: [TF-M] Problem compiling Trusted Firmware M in Linux for PSOC64
Importance: High

 

Caution: This e-mail originated outside Infineon Technologies. Do not click on links or open attachments unless you validate it is safe.

 

Hello,

 

I am writing to you asking help because we are having problems when I try to compile the Trusted Firmware M from source code.

 

I downloaded the code from the official repository: https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git

 

I moved to the last TAG: TF-Mv1.5.0

 

I am following this tutorial for PSOC64 platform https://tf-m-user-guide.trustedfirmware.org/platform/ext/target/cypress/psoc64/cypress_psoc64_spec.html

 

When I execute the first cmake command indicating the platform and the toolchain everything works well: cmake -DTFM_PLATFORM=cypress/psoc64 -DTFM_TOOLCHAIN_FILE=../toolchain_GNUARM.cmake ..

 

The problems appears when I build the code using the second cmake command: cmake --build cmake_build -- -j

 

I got this output

 

 

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c: In function 't_cose_crypto_pub_key_verify':

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c:145:5: error: conversion to non-scalar type requested

  145 |     verification_key_psa = (psa_key_handle_t)verification_key.k.key_handle;

      |     ^~~~~~~~~~~~~~~~~~~~

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c: In function 't_cose_crypto_pub_key_sign':

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c:194:5: error: conversion to non-scalar type requested

  194 |     signing_key_psa = (psa_key_handle_t)signing_key.k.key_handle;

      |     ^~~~~~~~~~~~~~~

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c: In function 't_cose_crypto_sig_size':

/home/admin/Escritorio/trusted-firmware-m/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.c:245:5: error: conversion to non-scalar type requested

  245 |     signing_key_psa = (psa_key_handle_t)signing_key.k.key_handle;

      |     ^~~~~~~~~~~~~~~

secure_fw/partitions/internal_trusted_storage/CMakeFiles/tfm_psa_rot_partition_its.dir/build.make:425: recipe for target 'secure_fw/partitions/internal_trusted_storage/CMakeFiles/tfm_psa_rot_partition_its.dir/__/__/__/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.o' failed

make[2]: *** [secure_fw/partitions/internal_trusted_storage/CMakeFiles/tfm_psa_rot_partition_its.dir/__/__/__/lib/ext/t_cose/crypto_adapters/t_cose_psa_crypto.o] Error 1

make[2]: *** Waiting for unfinished jobs....

CMakeFiles/Makefile2:1347: recipe for target 'secure_fw/partitions/internal_trusted_storage/CMakeFiles/tfm_psa_rot_partition_its.dir/all' failed

make[1]: *** [secure_fw/partitions/internal_trusted_storage/CMakeFiles/tfm_psa_rot_partition_its.dir/all] Error 2

Makefile:135: recipe for target 'all' failed

make: *** [all] Error 2

 

 

 

There are the version of the software that are using:

 

arm-none-eabi-gcc (GNU Arm Embedded Toolchain 10.3-2021.10) 10.3.1 20210824 (release)

cmake version 3.23.0-rc2

 

It seems strange to me that there are compilation errors in the source code, that's why I am writing this mail, in case there is a bug in the code.

 

Best regards.

 

Antonio Javier Cabrera Gutierrez

 

Infineon Technologies AG

PhD Candidate

R&D Engineer

IFAG BEX RDE RDF ISS

Office: +49 89 234 36403

Mobile: +49 151 181 34322

AntonioJavier.CabreraGutierrez@infineon.com

 

Am Campeon 1-15

85579 Neubiberg

Germany

 

www.infineon.com  Discoveries  Facebook  Twitter  LinkedIn

 

Part of your life. Part of tomorrow.

 

Infineon Technologies AG

Chairman of the Supervisory Board: Dr. Wolfgang Eder

Management Board: Dr. Reinhard Ploss (CEO), Dr. Helmut Gassel, Jochen Hanebeck, Dr. Sven Schneider

Registered Office: Neubiberg

Commercial Register: München HRB 126492

 

This e-mail and any attachments are confidential. They are intended solely for the attention and use of the named addressee(s). If you are not the named addressee(s) you must not use, disclose, retain or reproduce all or any part of the information contained in this e-mail or any attachments. Any unauthorized use or disclosure may be unlawful. If you have received this e-mail by mistake, please inform the sender immediately and delete it and all copies from your system and destroy any hard copies of it.