From b7d55fb1eb6d8c2b2453158e854a17bf9e028cfa Mon Sep 17 00:00:00 2001 From: gdisirio Date: Wed, 1 Dec 2010 21:28:38 +0000 Subject: Fixed bug 3124849. git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@2452 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/ports/GCC/ARMCMx/LPC11xx/vectors.c | 169 ++++++++++++++++++ os/ports/GCC/ARMCMx/LPC11xx/vectors.s | 228 ------------------------ os/ports/GCC/ARMCMx/LPC13xx/vectors.c | 223 +++++++++++++++++++++++ os/ports/GCC/ARMCMx/LPC13xx/vectors.s | 324 ---------------------------------- readme.txt | 1 + 5 files changed, 393 insertions(+), 552 deletions(-) create mode 100644 os/ports/GCC/ARMCMx/LPC11xx/vectors.c delete mode 100644 os/ports/GCC/ARMCMx/LPC11xx/vectors.s create mode 100644 os/ports/GCC/ARMCMx/LPC13xx/vectors.c delete mode 100644 os/ports/GCC/ARMCMx/LPC13xx/vectors.s diff --git a/os/ports/GCC/ARMCMx/LPC11xx/vectors.c b/os/ports/GCC/ARMCMx/LPC11xx/vectors.c new file mode 100644 index 000000000..86672a338 --- /dev/null +++ b/os/ports/GCC/ARMCMx/LPC11xx/vectors.c @@ -0,0 +1,169 @@ +/* + ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 Giovanni Di Sirio. + + This file is part of ChibiOS/RT. + + ChibiOS/RT is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + ChibiOS/RT is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +/** + * @file LPC11xx/vectors.c + * @brief Interrupt vectors for the LPC11xx family. + * + * @defgroup ARMCMx_LPC11xx_VECTORS LPC11xx Interrupt Vectors + * @ingroup ARMCMx_SPECIFIC + * @details Interrupt vectors for the LPC11xx family. + * @{ + */ + +#include "ch.h" + +#if !defined(__DOXYGEN__) +extern void __ram_end__(void); +extern void ResetHandler(void); +extern void NMIVector(void); +extern void HardFaultVector(void); +extern void MemManageVector(void); +extern void BusFaultVector(void); +extern void UsageFaultVector(void); +extern void Vector1C(void); +extern void Vector20(void); +extern void Vector24(void); +extern void Vector28(void); +extern void SVCallVector(void); +extern void DebugMonitorVector(void); +extern void Vector34(void); +extern void PendSVVector(void); +extern void SysTickVector(void); +extern void Vector40(void); +extern void Vector44(void); +extern void Vector48(void); +extern void Vector4C(void); +extern void Vector50(void); +extern void Vector54(void); +extern void Vector58(void); +extern void Vector5C(void); +extern void Vector60(void); +extern void Vector64(void); +extern void Vector68(void); +extern void Vector6C(void); +extern void Vector70(void); +extern void Vector74(void); +extern void Vector78(void); +extern void Vector7C(void); +extern void Vector80(void); +extern void Vector84(void); +extern void Vector88(void); +extern void Vector8C(void); +extern void Vector90(void); +extern void Vector94(void); +extern void Vector98(void); +extern void Vector9C(void); +extern void VectorA0(void); +extern void VectorA4(void); +extern void VectorA8(void); +extern void VectorAC(void); +extern void VectorB0(void); +extern void VectorB4(void); +extern void VectorB8(void); +extern void VectorBC(void); +#endif + +/** + * @brief LPC11xx vectors table. + */ +#if !defined(__DOXYGEN__) +__attribute__ ((section("vectors"))) +#endif +void (*_vectors[])(void) = { + __ram_end__, ResetHandler, NMIVector, HardFaultVector, + MemManageVector, BusFaultVector, UsageFaultVector, Vector1C, + Vector20, Vector24, Vector28, SVCallVector, + DebugMonitorVector, Vector34, PendSVVector, SysTickVector, + Vector40, Vector44, Vector48, Vector4C, + Vector50, Vector54, Vector58, Vector5C, + Vector60, Vector64, Vector68, Vector6C, + Vector70, Vector74, Vector78, Vector7C, + Vector80, Vector84, Vector88, Vector8C, + Vector90, Vector94, Vector98, Vector9C, + VectorA0, VectorA4, VectorA8, VectorAC, + VectorB0, VectorB4, VectorB8, VectorBC +}; + +/** + * @brief Unhandled exceptions handler. + * @details Any undefined exception vector points to this function by default. + * This function simply stops the system into an infinite loop. + * + * @notapi + */ +#if !defined(__DOXYGEN__) +__attribute__ ((naked)) +#endif +void _unhandled_exception(void) { + + asm volatile ( + ".weak NMIVector \nNMIVector: \n\t" + ".weak HardFaultVector \nHardFaultVector: \n\t" + ".weak MemManageVector \nMemManageVector: \n\t" + ".weak BusFaultVector \nBusFaultVector: \n\t" + ".weak UsageFaultVector \nUsageFaultVector: \n\t" + ".weak Vector1C \nVector1C: \n\t" + ".weak Vector20 \nVector20: \n\t" + ".weak Vector24 \nVector24: \n\t" + ".weak Vector28 \nVector28: \n\t" + ".weak SVCallVector \nSVCallVector: \n\t" + ".weak DebugMonitorVector \nDebugMonitorVector: \n\t" + ".weak Vector34 \nVector34: \n\t" + ".weak PendSVVector \nPendSVVector: \n\t" + ".weak SysTickVector \nSysTickVector: \n\t" + ".weak Vector40 \nVector40: \n\t" + ".weak Vector44 \nVector44: \n\t" + ".weak Vector48 \nVector48: \n\t" + ".weak Vector4C \nVector4C: \n\t" + ".weak Vector50 \nVector50: \n\t" + ".weak Vector54 \nVector54: \n\t" + ".weak Vector58 \nVector58: \n\t" + ".weak Vector5C \nVector5C: \n\t" + ".weak Vector60 \nVector60: \n\t" + ".weak Vector64 \nVector64: \n\t" + ".weak Vector68 \nVector68: \n\t" + ".weak Vector6C \nVector6C: \n\t" + ".weak Vector70 \nVector70: \n\t" + ".weak Vector74 \nVector74: \n\t" + ".weak Vector78 \nVector78: \n\t" + ".weak Vector7C \nVector7C: \n\t" + ".weak Vector80 \nVector80: \n\t" + ".weak Vector84 \nVector84: \n\t" + ".weak Vector88 \nVector88: \n\t" + ".weak Vector8C \nVector8C: \n\t" + ".weak Vector90 \nVector90: \n\t" + ".weak Vector94 \nVector94: \n\t" + ".weak Vector98 \nVector98: \n\t" + ".weak Vector9C \nVector9C: \n\t" + ".weak VectorA0 \nVectorA0: \n\t" + ".weak VectorA4 \nVectorA4: \n\t" + ".weak VectorA8 \nVectorA8: \n\t" + ".weak VectorAC \nVectorAC: \n\t" + ".weak VectorB0 \nVectorB0: \n\t" + ".weak VectorB4 \nVectorB4: \n\t" + ".weak VectorB8 \nVectorB8: \n\t" + ".weak VectorBC \nVectorBC: \n\t" + ); + + while (TRUE) + ; +} + +/** @} */ diff --git a/os/ports/GCC/ARMCMx/LPC11xx/vectors.s b/os/ports/GCC/ARMCMx/LPC11xx/vectors.s deleted file mode 100644 index 3f44c900f..000000000 --- a/os/ports/GCC/ARMCMx/LPC11xx/vectors.s +++ /dev/null @@ -1,228 +0,0 @@ -/* - ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 Giovanni Di Sirio. - - This file is part of ChibiOS/RT. - - ChibiOS/RT is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS/RT is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/** - * @file LPC11xx/vectors.s - * @brief Interrupt vectors for the LPC11xx family. - * - * @addtogroup ARMCMx_CORE - * @{ - */ - -#if !defined(__DOXYGEN__) - -.syntax unified -.thumb - -.section vectors -_vectors: - .word __ram_end__ - .word ResetHandler - .word NMIVector - .word HardFaultVector - .word MemManageVector - .word BusFaultVector - .word UsageFaultVector - .word Vector1C - .word Vector20 - .word Vector24 - .word Vector28 - .word SVCallVector - .word DebugMonitorVector - .word Vector34 - .word PendSVVector - .word SysTickVector - .word Vector40 - .word Vector44 - .word Vector48 - .word Vector4C - .word Vector50 - .word Vector54 - .word Vector58 - .word Vector5C - .word Vector60 - .word Vector64 - .word Vector68 - .word Vector6C - .word Vector70 - .word Vector74 - .word Vector78 - .word Vector7C - .word Vector80 - .word Vector84 - .word Vector88 - .word Vector8C - .word Vector90 - .word Vector94 - .word Vector98 - .word Vector9C - .word VectorA0 - .word VectorA4 - .word VectorA8 - .word VectorAC - .word VectorB0 - .word VectorB4 - .word VectorB8 - .word VectorBC - -.weak NMIVector -NMIVector: - -.weak HardFaultVector -HardFaultVector: - -.weak MemManageVector -MemManageVector: - -.weak BusFaultVector -BusFaultVector: - -.weak UsageFaultVector -UsageFaultVector: - -.weak Vector1C -Vector1C: - -.weak Vector20 -Vector20: - -.weak Vector24 -Vector24: - -.weak Vector28 -Vector28: - -.weak SVCallVector -SVCallVector: - -.weak DebugMonitorVector -DebugMonitorVector: - -.weak Vector34 -Vector34: - -.weak PendSVVector -PendSVVector: - -.weak SysTickVector -SysTickVector: - -.weak Vector40 -Vector40: - -.weak Vector44 -Vector44: - -.weak Vector48 -Vector48: - -.weak Vector4C -Vector4C: - -.weak Vector50 -Vector50: - -.weak Vector54 -Vector54: - -.weak Vector58 -Vector58: - -.weak Vector5C -Vector5C: - -.weak Vector60 -Vector60: - -.weak Vector64 -Vector64: - -.weak Vector68 -Vector68: - -.weak Vector6C -Vector6C: - -.weak Vector70 -Vector70: - -.weak Vector74 -Vector74: - -.weak Vector78 -Vector78: - -.weak Vector7C -Vector7C: - -.weak Vector80 -Vector80: - -.weak Vector84 -Vector84: - -.weak Vector88 -Vector88: - -.weak Vector8C -Vector8C: - -.weak Vector90 -Vector90: - -.weak Vector94 -Vector94: - -.weak Vector98 -Vector98: - -.weak Vector9C -Vector9C: - -.weak VectorA0 -VectorA0: - -.weak VectorA4 -VectorA4: - -.weak VectorA8 -VectorA8: - -.weak VectorAC -VectorAC: - -.weak VectorB0 -VectorB0: - -.weak VectorB4 -VectorB4: - -.weak VectorB8 -VectorB8: - -.weak VectorBC -VectorBC: - - .global _unhandled_exception -_unhandled_exception: - b _unhandled_exception - -#endif - -/** @} */ diff --git a/os/ports/GCC/ARMCMx/LPC13xx/vectors.c b/os/ports/GCC/ARMCMx/LPC13xx/vectors.c new file mode 100644 index 000000000..2d62da81f --- /dev/null +++ b/os/ports/GCC/ARMCMx/LPC13xx/vectors.c @@ -0,0 +1,223 @@ +/* + ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 Giovanni Di Sirio. + + This file is part of ChibiOS/RT. + + ChibiOS/RT is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + ChibiOS/RT is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +/** + * @file LPC13xx/vectors.c + * @brief Interrupt vectors for the LPC13xx family. + * + * @defgroup ARMCMx_LPC13xx_VECTORS LPC13xx Interrupt Vectors + * @ingroup ARMCMx_SPECIFIC + * @details Interrupt vectors for the LPC13xx family. + * @{ + */ + +#include "ch.h" + +#if !defined(__DOXYGEN__) +extern void __ram_end__(void); +extern void ResetHandler(void); +extern void NMIVector(void); +extern void HardFaultVector(void); +extern void MemManageVector(void); +extern void BusFaultVector(void); +extern void UsageFaultVector(void); +extern void Vector1C(void); +extern void Vector20(void); +extern void Vector24(void); +extern void Vector28(void); +extern void SVCallVector(void); +extern void DebugMonitorVector(void); +extern void Vector34(void); +extern void PendSVVector(void); +extern void SysTickVector(void); +extern void Vector40(void); +extern void Vector44(void); +extern void Vector48(void); +extern void Vector4C(void); +extern void Vector50(void); +extern void Vector54(void); +extern void Vector58(void); +extern void Vector5C(void); +extern void Vector60(void); +extern void Vector64(void); +extern void Vector68(void); +extern void Vector6C(void); +extern void Vector70(void); +extern void Vector74(void); +extern void Vector78(void); +extern void Vector7C(void); +extern void Vector80(void); +extern void Vector84(void); +extern void Vector88(void); +extern void Vector8C(void); +extern void Vector90(void); +extern void Vector94(void); +extern void Vector98(void); +extern void Vector9C(void); +extern void VectorA0(void); +extern void VectorA4(void); +extern void VectorA8(void); +extern void VectorAC(void); +extern void VectorB0(void); +extern void VectorB4(void); +extern void VectorB8(void); +extern void VectorBC(void); +extern void VectorC0(void); +extern void VectorC4(void); +extern void VectorC8(void); +extern void VectorCC(void); +extern void VectorD0(void); +extern void VectorD4(void); +extern void VectorD8(void); +extern void VectorDC(void); +extern void VectorE0(void); +extern void VectorE4(void); +extern void VectorE8(void); +extern void VectorEC(void); +extern void VectorF0(void); +extern void VectorF4(void); +extern void VectorF8(void); +extern void VectorFC(void); +extern void Vector100(void); +extern void Vector104(void); +extern void Vector108(void); +extern void Vector10C(void); +extern void Vector110(void); +extern void Vector114(void); +extern void Vector118(void); +extern void Vector11C(void); +#endif + +/** + * @brief LPC13xx vectors table. + */ +#if !defined(__DOXYGEN__) +__attribute__ ((section("vectors"))) +#endif +void (*_vectors[])(void) = { + __ram_end__, ResetHandler, NMIVector, HardFaultVector, + MemManageVector, BusFaultVector, UsageFaultVector, Vector1C, + Vector20, Vector24, Vector28, SVCallVector, + DebugMonitorVector, Vector34, PendSVVector, SysTickVector, + Vector40, Vector44, Vector48, Vector4C, + Vector50, Vector54, Vector58, Vector5C, + Vector60, Vector64, Vector68, Vector6C, + Vector70, Vector74, Vector78, Vector7C, + Vector80, Vector84, Vector88, Vector8C, + Vector90, Vector94, Vector98, Vector9C, + VectorA0, VectorA4, VectorA8, VectorAC, + VectorB0, VectorB4, VectorB8, VectorBC, + VectorC0, VectorC4, VectorC8, VectorCC, + VectorD0, VectorD4, VectorD8, VectorDC, + VectorE0, VectorE4, VectorE8, VectorEC, + VectorF0, VectorF4, VectorF8, VectorFC, + Vector100, Vector104, Vector108, Vector10C, + Vector110, Vector114, Vector118, Vector11C +}; + +/** + * @brief Unhandled exceptions handler. + * @details Any undefined exception vector points to this function by default. + * This function simply stops the system into an infinite loop. + * + * @notapi + */ +#if !defined(__DOXYGEN__) +__attribute__ ((naked)) +#endif +void _unhandled_exception(void) { + + asm volatile ( + ".weak NMIVector \nNMIVector: \n\t" + ".weak HardFaultVector \nHardFaultVector: \n\t" + ".weak MemManageVector \nMemManageVector: \n\t" + ".weak BusFaultVector \nBusFaultVector: \n\t" + ".weak UsageFaultVector \nUsageFaultVector: \n\t" + ".weak Vector1C \nVector1C: \n\t" + ".weak Vector20 \nVector20: \n\t" + ".weak Vector24 \nVector24: \n\t" + ".weak Vector28 \nVector28: \n\t" + ".weak SVCallVector \nSVCallVector: \n\t" + ".weak DebugMonitorVector \nDebugMonitorVector: \n\t" + ".weak Vector34 \nVector34: \n\t" + ".weak PendSVVector \nPendSVVector: \n\t" + ".weak SysTickVector \nSysTickVector: \n\t" + ".weak Vector40 \nVector40: \n\t" + ".weak Vector44 \nVector44: \n\t" + ".weak Vector48 \nVector48: \n\t" + ".weak Vector4C \nVector4C: \n\t" + ".weak Vector50 \nVector50: \n\t" + ".weak Vector54 \nVector54: \n\t" + ".weak Vector58 \nVector58: \n\t" + ".weak Vector5C \nVector5C: \n\t" + ".weak Vector60 \nVector60: \n\t" + ".weak Vector64 \nVector64: \n\t" + ".weak Vector68 \nVector68: \n\t" + ".weak Vector6C \nVector6C: \n\t" + ".weak Vector70 \nVector70: \n\t" + ".weak Vector74 \nVector74: \n\t" + ".weak Vector78 \nVector78: \n\t" + ".weak Vector7C \nVector7C: \n\t" + ".weak Vector80 \nVector80: \n\t" + ".weak Vector84 \nVector84: \n\t" + ".weak Vector88 \nVector88: \n\t" + ".weak Vector8C \nVector8C: \n\t" + ".weak Vector90 \nVector90: \n\t" + ".weak Vector94 \nVector94: \n\t" + ".weak Vector98 \nVector98: \n\t" + ".weak Vector9C \nVector9C: \n\t" + ".weak VectorA0 \nVectorA0: \n\t" + ".weak VectorA4 \nVectorA4: \n\t" + ".weak VectorA8 \nVectorA8: \n\t" + ".weak VectorAC \nVectorAC: \n\t" + ".weak VectorB0 \nVectorB0: \n\t" + ".weak VectorB4 \nVectorB4: \n\t" + ".weak VectorB8 \nVectorB8: \n\t" + ".weak VectorBC \nVectorBC: \n\t" + ".weak VectorC0 \nVectorC0: \n\t" + ".weak VectorC4 \nVectorC4: \n\t" + ".weak VectorC8 \nVectorC8: \n\t" + ".weak VectorCC \nVectorCC: \n\t" + ".weak VectorD0 \nVectorD0: \n\t" + ".weak VectorD4 \nVectorD4: \n\t" + ".weak VectorD8 \nVectorD8: \n\t" + ".weak VectorDC \nVectorDC: \n\t" + ".weak VectorE0 \nVectorE0: \n\t" + ".weak VectorE4 \nVectorE4: \n\t" + ".weak VectorE8 \nVectorE8: \n\t" + ".weak VectorEC \nVectorEC: \n\t" + ".weak VectorF0 \nVectorF0: \n\t" + ".weak VectorF4 \nVectorF4: \n\t" + ".weak VectorF8 \nVectorF8: \n\t" + ".weak VectorFC \nVectorFC: \n\t" + ".weak Vector100 \nVector100: \n\t" + ".weak Vector104 \nVector104: \n\t" + ".weak Vector108 \nVector108: \n\t" + ".weak Vector10C \nVector10C: \n\t" + ".weak Vector110 \nVector110: \n\t" + ".weak Vector114 \nVector114: \n\t" + ".weak Vector118 \nVector118: \n\t" + ".weak Vector11C \nVector11C: \n\t" + ); + + while (TRUE) + ; +} + +/** @} */ diff --git a/os/ports/GCC/ARMCMx/LPC13xx/vectors.s b/os/ports/GCC/ARMCMx/LPC13xx/vectors.s deleted file mode 100644 index 2716ff378..000000000 --- a/os/ports/GCC/ARMCMx/LPC13xx/vectors.s +++ /dev/null @@ -1,324 +0,0 @@ -/* - ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 Giovanni Di Sirio. - - This file is part of ChibiOS/RT. - - ChibiOS/RT is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - ChibiOS/RT is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . -*/ - -/** - * @file LPC13xx/vectors.s - * @brief Interrupt vectors for the LPC13xx family. - * - * @addtogroup ARMCMx_CORE - * @{ - */ - -#if !defined(__DOXYGEN__) - -.syntax unified -.thumb - -.section vectors -_vectors: - .word __ram_end__ - .word ResetHandler - .word NMIVector - .word HardFaultVector - .word MemManageVector - .word BusFaultVector - .word UsageFaultVector - .word Vector1C - .word Vector20 - .word Vector24 - .word Vector28 - .word SVCallVector - .word DebugMonitorVector - .word Vector34 - .word PendSVVector - .word SysTickVector - .word Vector40 - .word Vector44 - .word Vector48 - .word Vector4C - .word Vector50 - .word Vector54 - .word Vector58 - .word Vector5C - .word Vector60 - .word Vector64 - .word Vector68 - .word Vector6C - .word Vector70 - .word Vector74 - .word Vector78 - .word Vector7C - .word Vector80 - .word Vector84 - .word Vector88 - .word Vector8C - .word Vector90 - .word Vector94 - .word Vector98 - .word Vector9C - .word VectorA0 - .word VectorA4 - .word VectorA8 - .word VectorAC - .word VectorB0 - .word VectorB4 - .word VectorB8 - .word VectorBC - .word VectorC0 - .word VectorC4 - .word VectorC8 - .word VectorCC - .word VectorD0 - .word VectorD4 - .word VectorD8 - .word VectorDC - .word VectorE0 - .word VectorE4 - .word VectorE8 - .word VectorEC - .word VectorF0 - .word VectorF4 - .word VectorF8 - .word VectorFC - .word Vector100 - .word Vector104 - .word Vector108 - .word Vector10C - .word Vector110 - .word Vector114 - .word Vector118 - .word Vector11C - -.weak NMIVector -NMIVector: - -.weak HardFaultVector -HardFaultVector: - -.weak MemManageVector -MemManageVector: - -.weak BusFaultVector -BusFaultVector: - -.weak UsageFaultVector -UsageFaultVector: - -.weak Vector1C -Vector1C: - -.weak Vector20 -Vector20: - -.weak Vector24 -Vector24: - -.weak Vector28 -Vector28: - -.weak SVCallVector -SVCallVector: - -.weak DebugMonitorVector -DebugMonitorVector: - -.weak Vector34 -Vector34: - -.weak PendSVVector -PendSVVector: - -.weak SysTickVector -SysTickVector: - -.weak Vector40 -Vector40: - -.weak Vector44 -Vector44: - -.weak Vector48 -Vector48: - -.weak Vector4C -Vector4C: - -.weak Vector50 -Vector50: - -.weak Vector54 -Vector54: - -.weak Vector58 -Vector58: - -.weak Vector5C -Vector5C: - -.weak Vector60 -Vector60: - -.weak Vector64 -Vector64: - -.weak Vector68 -Vector68: - -.weak Vector6C -Vector6C: - -.weak Vector70 -Vector70: - -.weak Vector74 -Vector74: - -.weak Vector78 -Vector78: - -.weak Vector7C -Vector7C: - -.weak Vector80 -Vector80: - -.weak Vector84 -Vector84: - -.weak Vector88 -Vector88: - -.weak Vector8C -Vector8C: - -.weak Vector90 -Vector90: - -.weak Vector94 -Vector94: - -.weak Vector98 -Vector98: - -.weak Vector9C -Vector9C: - -.weak VectorA0 -VectorA0: - -.weak VectorA4 -VectorA4: - -.weak VectorA8 -VectorA8: - -.weak VectorAC -VectorAC: - -.weak VectorB0 -VectorB0: - -.weak VectorB4 -VectorB4: - -.weak VectorB8 -VectorB8: - -.weak VectorBC -VectorBC: - -.weak VectorC0 -VectorC0: - -.weak VectorC4 -VectorC4: - -.weak VectorC8 -VectorC8: - -.weak VectorCC -VectorCC: - -.weak VectorD0 -VectorD0: - -.weak VectorD4 -VectorD4: - -.weak VectorD8 -VectorD8: - -.weak VectorDC -VectorDC: - -.weak VectorE0 -VectorE0: - -.weak VectorE4 -VectorE4: - -.weak VectorE8 -VectorE8: - -.weak VectorEC -VectorEC: - -.weak VectorF0 -VectorF0: - -.weak VectorF4 -VectorF4: - -.weak VectorF8 -VectorF8: - -.weak VectorFC -VectorFC: - -.weak Vector100 -Vector100: - -.weak Vector104 -Vector104: - -.weak Vector108 -Vector108: - -.weak Vector10C -Vector10C: - -.weak Vector110 -Vector110: - -.weak Vector114 -Vector114: - -.weak Vector118 -Vector118: - -.weak Vector11C -Vector11C: - - .global _unhandled_exception -_unhandled_exception: - b _unhandled_exception - -#endif - -/** @} */ diff --git a/readme.txt b/readme.txt index 4e4daad49..c54fa04cf 100644 --- a/readme.txt +++ b/readme.txt @@ -65,6 +65,7 @@ ***************************************************************************** *** 2.1.5 *** +- FIX: Fixed missing vector.c files in LPC11xx and LPC13xx ports (bug 3124849). - FIX: Fixed pwmDisableChannel() now working in STM32 PWM driver (bug 3121246). - FIX: Fixed problem with PWM channel callbacks (bug 3120785). - NEW: Added support for TIM5 in the STM32 PWM driver. -- cgit v1.2.3