I am using SDK 14.2 and just upgraded to IAR EWARM 8.22.1. When compiling, it now gives me the following complain for virtually every .c file in my project:
Warning: The header file 'cmsis_iar.h' is obsolete and should not be used.
A sutiable version is automatically included from the CMSIS-core package.
This file will be removed in a future release.
I tracked down the include statement to this file: components\toolchain\CMSIS\Include\core_cmSimd.h
I'm not sure if this is something with my IAR installation or with the SDK.
It is probably an IAR issue. The CMSIS we use in SDK 14.2.0 is version 4.5.0 I believe, but IAR 8.22 seems to be using v5.3.0. I don't have access to IAR 8.22 so I can't check it out, but there is a report (and maybe a solution) here: https://www.amobbs.com/thread-5687902-1-1.html (some google translation might be required).
Ok, I contacted IAR in this matter and their answer was that they will contact you: IAR says: "The correct solution is to remove all occurrences of #include <cmsis_iar.h>." The IAR ticket number about this is CALL 621786s_IAR.
I removed the #include <cmsis_iar.h> from three files: core_cmFunc.h, core_cmInstr.h, and core_cmSimd.h. But that gives me a new set of errors stating function definitions are not found.
How did you removed the the #include <cmsis_iar.h>?
Here's an example of the error:
Error[Li005]: no definition for "__disable_irq" [referenced from ...
Try replacing that pragma-message block in the cmsis_iar.h file with this...
#if defined(__CM_CMSIS_VERSION) && (__CM_CMSIS_VERSION >= 0x50001)
#pragma message("\nWarning: The header file 'cmsis_iar.h' is obsolete and should not be used.")
#pragma message(" A suitable version is automatically included from the CMSIS-core package.")
As part of a recent patch from IAR, this is the only thing that changed in the file.
Thanks, it hid the warnings. I'll continue to monitor this post.
I can verify that the patch removed the warnings.
The cmsis_iar.h file to be patched is located here: C:\Program Files (x86)\IAR Systems\Embedded Workbench [ver]\arm\inc\c
I have tried this and it did not work, could you post the cmsis_iar.h file just so Inow if i've replaced the correct block?
Where can we obtain the patch? I've not been able to find it at the IAR site.
In EWARM 8.30.1 this issue is fixed.