I think at a minimum, we need to conditionally include mpu.h only when the MPU support is actually needed. Options for that are CONFIG_ARM_MPU, CONFIG_ARCH_USE_MPU, or CONFIG_BUILD_PROTECTED. If we use either of the first two, the error will crop back up if MPU support is enabled without also performing a protected build since up_mpu.c is only included in a protected build. I know that it is possible to enable MPU support without performing a protected build, but is there any use case for this? If not, it seems odd that these would be separate options. But if there is, then we need to figure out how to get the build to compile in that scenario. That might be as simple as including up_mpu.c whenever MPU support is enabled as opposed to only doing so when a protected build is requested. Someone with more knowledge on how these two features interact would be a better source of info on that than I am.

On 3/20/20 11:21 AM, Gregory Nutt wrote:

If we want to support the compiler which don't support inline, it's better that:
1.Remove CONFIG_HAVE_INLINE from include/nuttx/compiler.h
2.Convert inline fucntion to macro to normal function
It isn't hard to fix because grep just can find inline about 100 times.
There are inline functions in common C files which are not a problem because we have the definitions in compiler.h.  The use in header files is causing all of the problems.
CONFIDENTIALITY NOTICE: This communication may contain private, confidential 
and privileged material for the sole use of the intended recipient. If you are 
not the intended recipient, please delete this e-mail and any attachments 
permanently.

Reply via email to