소스 검색

Device: Fixed startup/system files for Armv8.1-MML.
- Added cast from pointer-to-stack to address.
- Use compiler provisions for VTOR setup.

Change-Id: I57fefa9ba2e23223bda202afd17111bdad53a218

Jonatan Antoni 6 년 전
부모
커밋
81e510e38c
2개의 변경된 파일6개의 추가작업 그리고 6개의 파일을 삭제
  1. 2 2
      Device/ARM/ARMv81MML/Source/startup_ARMv81MML.c
  2. 4 4
      Device/ARM/ARMv81MML/Source/system_ARMv81MML.c

+ 2 - 2
Device/ARM/ARMv81MML/Source/startup_ARMv81MML.c

@@ -2,7 +2,7 @@
  * @file     startup_ARMv81MML.c
  * @brief    CMSIS Core Device Startup File for ARMv81MML Device
  * @version  V2.0.0
- * @date     08. May 2019
+ * @date     09. May 2019
  ******************************************************************************/
 /*
  * Copyright (c) 2009-2019 Arm Limited. All rights reserved.
@@ -116,7 +116,7 @@ extern const pFunc __VECTOR_TABLE[496];
  *----------------------------------------------------------------------------*/
 void Reset_Handler(void)
 {
-  __set_MSPLIM(&__STACK_LIMIT);
+  __set_MSPLIM((uint32_t)(&__STACK_LIMIT));
 
   SystemInit();                             /* CMSIS System Initialization */
   __PROGRAM_START();                        /* Enter PreMain (C library entry point) */

+ 4 - 4
Device/ARM/ARMv81MML/Source/system_ARMv81MML.c

@@ -2,8 +2,8 @@
  * @file     system_ARMv81MML.c
  * @brief    CMSIS Device System Source File for
  *           Armv8.1-M Mainline Device Series
- * @version  V1.0.0
- * @date     15. March 2019
+ * @version  V1.1.0
+ * @date     09. May 2019
  ******************************************************************************/
 /*
  * Copyright (c) 2009-2019 Arm Limited. All rights reserved.
@@ -45,7 +45,7 @@
   Externals
  *----------------------------------------------------------------------------*/
 #if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
-  extern uint32_t __Vectors;
+  extern uint32_t __VECTOR_TABLE;
 #endif
 
 /*----------------------------------------------------------------------------
@@ -69,7 +69,7 @@ void SystemInit (void)
 {
 
 #if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U)
-  SCB->VTOR = (uint32_t) &__Vectors;
+  SCB->VTOR = (uint32_t)(&__VECTOR_TABLE);
 #endif
 
 #if defined (__FPU_USED) && (__FPU_USED == 1U)