Hi Gyorgy,

 

With this implementation, the SPM module can rely on toolchain only, instead of -I<CMSIS_INC>.

 

This implementation is for assembler-specific so it is tiny, while CMSIS does not provide some necessary wrapper (such as the “syntax unified”).

 

Thanks.

 

/Ken

 

From: Gyorgy Szing <Gyorgy.Szing@arm.com>
Sent: Wednesday, May 27, 2020 4:45 PM
To: Ken Liu <Ken.Liu@arm.com>; tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>; nd <nd@arm.com>
Subject: RE: [Compiler related] Unify necessary and minimal set compiler definitions for SPM

 

Hi Ken,

 

One of the most well working part of CMSIS is the compiler abstraction layer:

 

What are the benefits driving re-implementation?

 

/George

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of Ken Liu via TF-M
Sent: 27 May 2020 02:39
To: tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>
Subject: Re: [TF-M] [Compiler related] Unify necessary and minimal set compiler definitions for SPM

 

Hi Jamie,

 

At the current stage:

 

BR

 

/Ken

 

From: Jamie Fox <Jamie.Fox@arm.com>
Sent: Tuesday, May 26, 2020 10:52 PM
To: Ken Liu <Ken.Liu@arm.com>; tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>
Subject: RE: [Compiler related] Unify necessary and minimal set compiler definitions for SPM

 

Hi Ken,

 

Many similar abstractions for compiler C language extensions are provided by cmsis_compiler.h, already copied into the TF-M code base. If it does not meet all of our needs, should we consider proposing improvements to the upstream CMSIS project?

 

Kind regards,

Jamie

 

From: TF-M <tf-m-bounces@lists.trustedfirmware.org> On Behalf Of Ken Liu via TF-M
Sent: 25 May 2020 05:02
To: tf-m@lists.trustedfirmware.org
Cc: nd <nd@arm.com>
Subject: [TF-M] [Compiler related] Unify necessary and minimal set compiler definitions for SPM

 

Hi,

 

We created a proposal to define a minimal set of compiler specific-definitions for SPM. The reason is to avoid many #ifdef inside SPM code.

 

Only limited definitions are defined. Platform sources need to use platform defined headers for these definitions, such as CMSIS headers.

 

Special usage such as ‘weak’  or ‘noreturn’ are forbidden inside SPM.

 

Please put comments for this change:

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

 

Or reply here.

 

This is just an example patch, the follow up would apply this defined headers to all SPM sources.

 

Thanks

 

/Ken