From 5b7aac6fd10e17865754c5a207f9b1dc076c04a3 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Sun, 4 Apr 2010 16:13:59 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1848 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- docs/Doxyfile | 2 +- os/kernel/include/ch.h | 2 +- os/ports/GCC/ARMCMx/LPC13xx/cmparams.h | 56 ++++++ os/ports/GCC/ARMCMx/LPC13xx/port.mk | 11 ++ os/ports/GCC/ARMCMx/LPC13xx/vectors.s | 308 +++++++++++++++++++++++++++++++++ readme.txt | 2 + 6 files changed, 379 insertions(+), 2 deletions(-) create mode 100644 os/ports/GCC/ARMCMx/LPC13xx/cmparams.h create mode 100644 os/ports/GCC/ARMCMx/LPC13xx/port.mk create mode 100644 os/ports/GCC/ARMCMx/LPC13xx/vectors.s diff --git a/docs/Doxyfile b/docs/Doxyfile index b15befac2..2ebead40f 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -31,7 +31,7 @@ PROJECT_NAME = ChibiOS/RT # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = 1.5.4 +PROJECT_NUMBER = 1.5.5 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. diff --git a/os/kernel/include/ch.h b/os/kernel/include/ch.h index 800fc2699..d84cc0310 100644 --- a/os/kernel/include/ch.h +++ b/os/kernel/include/ch.h @@ -39,7 +39,7 @@ /** * @brief Kernel version string. */ -#define CH_KERNEL_VERSION "1.5.4unstable" +#define CH_KERNEL_VERSION "1.5.5unstable" /** * @brief Kernel version major number. diff --git a/os/ports/GCC/ARMCMx/LPC13xx/cmparams.h b/os/ports/GCC/ARMCMx/LPC13xx/cmparams.h new file mode 100644 index 000000000..f951243ff --- /dev/null +++ b/os/ports/GCC/ARMCMx/LPC13xx/cmparams.h @@ -0,0 +1,56 @@ +/* + 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 ARMCMx/LPC13xx/cmparams.h + * @brief ARM Cortex-M0 LPC13xx Specific Parameters. + * + * @defgroup ARMCMx_LPC13xx LPC13xx Specific Parameters + * @ingroup ARMCMx + * @details This file contains the Cortex-M0 specific parameters for the + * LPC13xx platform. + * @{ + */ + +#ifndef _CMPARAMS_H_ +#define _CMPARAMS_H_ + +/** + * @brief Cortex core model. + */ +#define CORTEX_MODEL CORTEX_M3 + +/** + * @brief Systick unit presence. + */ +#define CORTEX_HAS_ST TRUE + +/** + * @brief Memory Protection unit presence. + */ +#define CORTEX_HAS_MPU FALSE + +/** + * @brief Number of bits in priority masks. + */ +#define CORTEX_PRIORITY_BITS 3 + +#endif /* _CMPARAMS_H_ */ + +/** @} */ diff --git a/os/ports/GCC/ARMCMx/LPC13xx/port.mk b/os/ports/GCC/ARMCMx/LPC13xx/port.mk new file mode 100644 index 000000000..6fb9ca494 --- /dev/null +++ b/os/ports/GCC/ARMCMx/LPC13xx/port.mk @@ -0,0 +1,11 @@ +# List of the ChibiOS/RT Cortex-M0 LPC13xx port files. +PORTSRC = ${CHIBIOS}/os/ports/GCC/ARMCMx/chcore.c \ + ${CHIBIOS}/os/ports/GCC/ARMCMx/chcore_v7m.c \ + ${CHIBIOS}/os/ports/GCC/ARMCMx/nvic.c \ + ${CHIBIOS}/os/ports/GCC/ARMCMx/cmsis/core_cm3.c + +PORTASM = ${CHIBIOS}/os/ports/GCC/ARMCMx/crt0.s + +PORTINC = ${CHIBIOS}/os/ports/GCC/ARMCMx \ + ${CHIBIOS}/os/ports/GCC/ARMCMx/LPC13xx \ + ${CHIBIOS}/os/ports/GCC/ARMCMx/cmsis diff --git a/os/ports/GCC/ARMCMx/LPC13xx/vectors.s b/os/ports/GCC/ARMCMx/LPC13xx/vectors.s new file mode 100644 index 000000000..50506cd19 --- /dev/null +++ b/os/ports/GCC/ARMCMx/LPC13xx/vectors.s @@ -0,0 +1,308 @@ +/* + 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 . +*/ + +.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: + +here: b here diff --git a/readme.txt b/readme.txt index 05f52ee85..cfe8f9b5c 100644 --- a/readme.txt +++ b/readme.txt @@ -56,6 +56,8 @@ *** Releases *** ***************************************************************************** +*** 1.5.5 *** + *** 1.5.4 *** - FIX: Fixed broken CH_CURRP_REGISTER_CACHE option in the ARM7 port (bug 2973365). -- cgit v1.2.3