Thanks for the quick response!

That build now works for me.

 

Chris

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of David Hu via TF-M
Sent: Thursday, June 17, 2021 7:55 AM
To: Mark Horvath <Mark.Horvath@arm.com>; Brand Chris (CSCA CSS ICW SW PSW 1) <Chris.Brand@infineon.com>; tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>
Subject: Re: [TF-M] Building for Musca B1 with proxy service

 

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

 

The fix is merged.

Thanks to Chris for reporting this issue.

Also thanks to Mark for such a quick fix.

 

Best regards,

Hu Ziji

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of Mark Horvath via TF-M
Sent: Thursday, June 17, 2021 2:59 PM
To: tf-m@lists.trustedfirmware.org; Chris.Brand@infineon.com
Subject: Re: [TF-M] Building for Musca B1 with proxy service

 

Hi Chris,

 

The build failure is a regression caused by moving the arm platforms under arm directory. Here is the patch to fix it:

https://review.trustedfirmware.org/c/TF-M/trusted-firmware-m/+/10333

 

No need to pass artifacts from SE build to SSE-200 build, and the warning about the redefinition is not nice, but that does not cause any issue.

 

Best regards,

Mark


From: TF-M <tf-m-bounces@lists.trustedfirmware.org> on behalf of Chris.Brand--- via TF-M <tf-m@lists.trustedfirmware.org>
Sent: Wednesday, June 16, 2021 11:34 PM
To: tf-m@lists.trustedfirmware.org <tf-m@lists.trustedfirmware.org>
Subject: [TF-M] Building for Musca B1 with proxy service

 

Hi,

 

I’m trying to build for the Musca B1 with the proxy service. I understand that I have to two separate builds, one for the secure_enclave and one for the SSE-200. The secure enclave build works fine, but I’m getting errors for the SSE-200 build and my various attempts to get around them have all failed. I’m (also) wondering if there are artifacts form the secure_enclave build that need to feed into the SSE-200 build somehow, and if so how that works.

 

Here's my command line and resulting errors:

cmake -S . -B build_musca_sse200_GNUARM_Relwithdebinfo '-GUnix Makefiles' -DTFM_PLATFORM=arm/musca_b1/sse_200 -DTFM_TOOLCHAIN_FILE=toolchain_GNUARM.cmake -DCMAKE_BUILD_TYPE=Relwithdebinfo -DTFM_PSA_API=ON -DFORWARD_PROT_MSG=ON

 

In file included from /lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/bl0/bl0_main.c:17:0:

/lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Include/cmsis.h:63:10: fatal error: core_cm33.h: No such file or directory

#include <core_cm33.h>    /*!< Arm Cortex-M33 processor and core peripherals */

          ^~~~~~~~~~~~~

compilation terminated.

/lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Source/gcc/startup_cmsdk_musca_bl2.S:20:10: fatal error: tfm_plat_config.h: No such file or directory

#include "tfm_plat_config.h"

          ^~~~~~~~~~~~~~~~~~~

compilation terminated.

In file included from /lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Include/platform_description.h:23:0,

                 from /lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Source/system_core_init.c:23:

/lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Include/cmsis.h:63:10: fatal error: core_cm33.h: No such file or directory

#include <core_cm33.h>    /*!< Arm Cortex-M33 processor and core peripherals */

          ^~~~~~~~~~~~~

compilation terminated.

/lhome/cbrand/work/trees_2/psoc6_atfm/trusted-firmware-m/platform/ext/target/arm/musca_b1/sse_200/Device/Source/device_definition.c:29:10: fatal error: tfm_plat_defs.h: No such file or directory

#include "tfm_plat_defs.h"

          ^~~~~~~~~~~~~~~~~

compilation terminated.

[…]

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

<command-line>:0:0: warning: "FORWARD_PROT_MSG" redefined

<command-line>:0:0: note: this is the location of the previous definition

[…]

platform/target/bl0/CMakeFiles/bl0.dir/build.make:86: recipe for target 'platform/target/bl0/CMakeFiles/bl0.dir/bl0_main.o' failed

gmake[2]: *** [platform/target/bl0/CMakeFiles/bl0.dir/bl0_main.o] Error 1

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

platform/target/bl0/CMakeFiles/bl0.dir/build.make:138: recipe for target 'platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/system_core_init.o' failed

gmake[2]: *** [platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/system_core_init.o] Error 1

platform/target/bl0/CMakeFiles/bl0.dir/build.make:125: recipe for target 'platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/device_definition.o' failed

gmake[2]: *** [platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/device_definition.o] Error 1

platform/target/bl0/CMakeFiles/bl0.dir/build.make:81: recipe for target 'platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/gcc/startup_cmsdk_musca_bl2.o' failed

gmake[2]: *** [platform/target/bl0/CMakeFiles/bl0.dir/__/Device/Source/gcc/startup_cmsdk_musca_bl2.o] Error 1

CMakeFiles/Makefile2:2539: recipe for target 'platform/target/bl0/CMakeFiles/bl0.dir/all' failed

gmake[1]: *** [platform/target/bl0/CMakeFiles/bl0.dir/all] Error 2

gmake[1]: *** Waiting for unfinished jobs....

 

This is from a clean checkout of 54d47fbd5269 (current HEAD).

 

I see that my tree does contain platform/ext/cmsis/core_cm33.h, platform/include/tfm_plat_config.h and platform/include/tfm_plat_defs.h so I guess it’s the include paths that are messed up somehow…?

 

Thanks,

 

Chris Brand

 

Cypress Semiconductor (Canada), Inc.

Sr Prin Software Engr

CSCA CSS ICW SW PSW 1

Office: +1 778 234 0515

Chris.Brand@infineon.com