1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

115 Commits

Author SHA1 Message Date
Joakim Nohlgård
d8b01a714c cpu/cortexm_common: Doxygen fix for cmsis_gcc.h 2016-03-14 22:16:52 +01:00
Joakim Nohlgård
61c9ba2c64 cpu/cortexm_common: Whitespace fix CMSIS header 2016-03-14 22:08:33 +01:00
Joakim Gebart
bea6cb9f15 cortexm: CMSIS: Add extern "C" to CMSIS headers 2016-03-14 22:05:57 +01:00
Joakim Nohlgård
26f43786b8 cpu/cortexm_common: Update CMSIS v4.5
Original headers unmodified from CMSIS-SP-00300-r4p5-00rel0.zip
2016-03-14 18:16:36 +01:00
6881f65f46 cpu: cortexm*: move cpu_conf.h stuff from cpu.h into cpu_conf_common.h 2016-03-05 18:20:17 +01:00
Martine Lenders
01248f0599 Merge pull request #4944 from gebart/pr/cortexm-irqn-unsigned-int
cpu/cortexm_common: use int for counter in startup IRQn loop
2016-03-04 05:40:51 +01:00
Oleg Hahm
cdd6878fca Merge pull request #4942 from gebart/pr/clang-asm
cpu/cortexm_common: Fix inline asm for ARMv6-M so that it compiles in Clang as well
2016-03-03 12:53:24 +01:00
Joakim Nohlgård
3da2c2d1c1 cpu/cortexm_common: use int for counter in startup IRQn loop 2016-03-02 10:58:59 +01:00
Joakim Nohlgård
0ae11cc9bc cpu/cortexm_common: call hard_fault_handler using bl
Fixes this error when building with Clang 3.7.1:

fatal error: error in backend: unsupported relocation on symbol
x86_64-pc-linux-gnu-clang-3.7: error: clang frontend command failed with exit code 70 (use -v to see invocation)
clang version 3.7.1 (tags/RELEASE_371/final)
Target: arm-none--eabi
Thread model: posix
x86_64-pc-linux-gnu-clang-3.7: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
x86_64-pc-linux-gnu-clang-3.7: note: diagnostic msg:
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
x86_64-pc-linux-gnu-clang-3.7: note: diagnostic msg: /tmp/vectors_cortexm-54333e.c
x86_64-pc-linux-gnu-clang-3.7: note: diagnostic msg: /tmp/vectors_cortexm-54333e.sh
x86_64-pc-linux-gnu-clang-3.7: note: diagnostic msg:

********************
2016-03-02 10:28:10 +01:00
Joakim Nohlgård
efa5cd4066 cpu/cortexm_common: Fix inline asm for ARMv6-M so that it compiles in Clang as well
ARMv6 does not have the mov instruction, only movs
2016-03-02 10:26:55 +01:00
Hauke Petersen
eb79646ab1 cpu/cortexm_common: added sleep_until_event 2016-03-01 23:22:03 +01:00
9082273746 core: header cleanup 2016-02-28 22:46:28 +01:00
938ff5c5e7 core: cpu: sys: simplify reboot() 2016-01-27 13:30:01 +01:00
Oleg Hahm
f24e810de5 cpu cortexm_common: fix pedantic compiler warnings 2015-12-07 20:28:52 +01:00
Hauke Petersen
c389f5be02 cpu/cortexm_common: fixes to vectors_cortexm.c
- (optimization) only fill ISR stack with canary values if
  DEVELHELP macro is set (as we don't use these values otherwise)
- (cosmetic) moved define before variable definitions
2015-11-23 12:13:17 +01:00
Hauke Petersen
cf11b073d6 cpu/cortexm_common: define ISR stacksize in cpu.h 2015-11-19 11:55:35 +01:00
Hauke Petersen
3ab389b1fd Merge pull request #4134 from gebart/pr/cortexm-hardfault-naked-fix
cpu/cortexm_common: only set naked attribute on DEVELHELP hardfault handler
2015-11-02 18:04:57 +01:00
Joakim Nohlgård
3033738e30 Merge pull request #4126 from gebart/pr/cortexm-r7-O0-fix
cortexm-common: Workaround for error: r7 cannot be used in asm here
2015-10-28 07:01:32 +01:00
Joakim Nohlgård
c3340b7ccf cpu/cortexm_common: Use PRIx32 for printing uint32_t in hard fault handler
fixes errors like:
    error: format specifies type 'unsigned long' but the argument has
    type 'uint32_t' (aka 'unsigned int') [-Werror,-Wformat]
2015-10-28 06:59:28 +01:00
Joakim Nohlgård
a5449bcbd4 cpu/cortexm_common: only set naked attribute on DEVELHELP hardfault handler
Fixes error on LLVM/Clang:

   cpu/cortexm_common/vectors_cortexm.c:287:5: error: non-ASM statement in naked function is not supported
       core_panic(PANIC_HARD_FAULT, "HARD FAULT HANDLER");
       ^
   cpu/cortexm_common/include/vectors_cortexm.h:65:46: note: attribute is here
   void hard_fault_default(void) __attribute__((naked));
                                                ^
   1 error generated.
2015-10-28 06:51:51 +01:00
daniel-k
c5e220c140 cortexm_common: check for possible stack overflow in hardfault handler 2015-10-27 15:58:36 +01:00
Joakim Nohlgård
30584a49e5 cortexm-common: Workaround for error: r7 cannot be used in asm here
Fixes https://github.com/RIOT-OS/RIOT/issues/4125
2015-10-21 14:35:02 +02:00
Sebastian Sontberg
bc1e6c815e cpu/cortexm_common: add used attributes for LTO 2015-09-30 15:56:38 +02:00
effb15a2cc Merge pull request #3313 from gebart/pr/eINT-fixes
eINT/dINT fixes
2015-09-29 12:39:16 +02:00
Joakim Gebart
56c6d629f7 cpu/cortexm_common: Improve hardfault debug information
Print more relevant information and attempt to reconstruct the state for GDB before halting.
2015-09-23 13:50:06 +02:00
Joakim Nohlgård
98c465008b all: Update @gebart family name, email 2015-09-20 13:47:39 +02:00
Joakim Gebart
b6a88cba5f cpu/cortexm_common: remove dINT/eINT definitions 2015-09-19 10:37:17 +02:00
391bc02c06 cpu: cortexm_common: busywait before resetting 2015-09-16 10:58:51 +02:00
Martine Lenders
93f555ef69 Merge pull request #3782 from OlegHahm/RIOT_assert
core: RIOT's own assert macro
2015-09-12 13:12:34 +02:00
Oleg Hahm
49917a5797 core: cpu: fix check for DEVELHELP 2015-09-12 12:43:15 +02:00
Oleg Hahm
f3245cecac core: panic: last instruction's address for assert 2015-09-11 23:23:31 +02:00
Oleg Hahm
d7161b6d4b cpu: inline function to print instruction register 2015-09-11 23:23:31 +02:00
d3006b171a cpu: cortexm_common: remove obsolete UART0_BUFSIZE define 2015-09-04 17:46:23 +02:00
Oleg Hahm
e2639d7f83 core: use enums for panic 2015-09-04 16:14:35 +02:00
Peter Kietzmann
86af1969b5 Merge pull request #3666 from daniel-k/cortexm_r13_deprecated
cortexm_common: don't compare with r13/sp in assembly, fix #3664
2015-08-20 11:48:13 +02:00
Joakim Gebart
56b0beeebe Merge pull request #3107 from gebart/pr/cppsupport
c++: Define some support functions required by GCC
2015-08-19 21:49:24 +02:00
Daniel Krebs
cb4aec676b cortexm_common: don't compare with r13/sp in assembly, fix #3664 2015-08-19 20:56:43 +02:00
daniel-k
7a86344c4d cpu/cortexm_common: gather addition information on hardfault 2015-08-19 14:24:54 +02:00
Joakim Gebart
62b1435646 cortexm: Remove __dso_handle from startup.c in favour of sys/cpp11-compat/cppsupport.cpp 2015-08-08 14:44:41 +02:00
Cenk Gündoğan
6e1a593e28 cortexm_common: use doxygen todo 2015-08-03 11:00:21 +02:00
d359c86c60 cpu: cortexm_common: set pendSV to default priority 2015-07-28 20:02:45 +02:00
Joakim Gebart
32c213d0b0 cpu/cortexm_common: Fix signedness warning 2015-07-14 08:11:14 +02:00
Joakim Gebart
ee4182b246 cpu/cortexm_common: Overwrite stack up until the current stack pointer only. 2015-07-07 18:04:30 +02:00
Hauke Petersen
c286da8d7f cpu/cortexm: unified startup code and isr handlers 2015-06-15 16:00:51 +02:00
Joakim Gebart
fc92ec98bf cortexm: CMSIS: Add extern "C" to CMSIS headers 2015-05-31 17:27:24 +02:00
Joakim Gebart
1cfb11bcde cortexm: CMSIS: Suppress cppcheck error about uninitialized result
False positive, the variable result is assigned from within inline assembly
2015-05-31 17:27:24 +02:00
Joakim Gebart
9511027946 cortexm: CMSIS: Replace tabs by spaces 2015-05-31 17:27:24 +02:00
Joakim Gebart
5bfed6c3f7 cortexm: Update CMSIS to v4.3
found at www.arm.com/cmsis
2015-05-31 17:27:23 +02:00
Peter Kietzmann
6dc0e789e1 Merge pull request #3101 from gebart/pr/warning-fixes
Various warning fixes
2015-05-31 17:03:49 +02:00
Hauke Petersen
19ef9dbe4e cpu/cortexm: raised ISR stack size to safer value
256 Byte were not enough for some boards (not sure why, yet).
So go back to 512 byte as a save (and known working value).
2015-05-31 12:00:17 +02:00
Hauke Petersen
8752894cc9 cpu/cortexm: added base linkerscript 2015-05-30 13:43:19 +02:00
Hauke Petersen
78d65a4dec cpu/cortexm_common: centralized init and defines
- added a centralized core implementation for all cortex CPUs
- moved default stack size defines to cpu.h in cortexm_common
- moved uart0 bufsize define to cpu.h in cortexm_common
- moved typed of panic_t to cpu.h in cortexm_common
2015-05-29 16:42:05 +02:00
Joakim Gebart
8a34b15964 cortexm_common: Conditionally define __set_FPSCR
It is an error to call __set_FPSCR if no FPU is present in the CPU.
2015-05-29 14:16:35 +02:00
Hauke Petersen
b8dd144e03 cpu: unified cortexm_common folder
- removed coretx-m[0|3|4]
- moved their content to cortexm_common
- adjusted cortex Makefiles to this new name
- adjusted cortex Makefiles new structure
2015-05-28 19:30:07 +02:00
Hauke Petersen
407e36ec5f cpu - cortex-m3: moved crash.c to cortex-m3_common 2014-06-18 11:49:45 +02:00
Thomas Eichinger
b4fceaca89 Merge pull request #1313 from thomaseichinger/cortexm_crash
cpu:cortex_common: add core_panic function
2014-06-11 15:02:46 +02:00
Thomas Eichinger
3639ae9b25 cpu:cortex_common: add core_panic function 2014-06-11 14:43:02 +02:00
Hauke Petersen
ebb496cc26 cpu: renamed cortexm_common->cortex-m3_common and cleanup 2014-06-11 00:24:10 +02:00
René Kijewski
b6dc5c9b76 core/cortex-m: add missing NORETURNs to thread_arch 2014-06-05 21:01:35 +02:00
Martin Lenders
2362623490 Fix trailing whitespaces
Fixes #1138
2014-05-26 14:54:23 +02:00
Oleg Hahm
ef4fe6616c documentation: unified descriptive text for cpu 2014-05-24 15:56:57 +02:00
Oleg Hahm
ef5ec344fd core: prefix API functions correctly
Also changed names for bitarithm functions and rename thread_pid to sched_active_pid.
2014-05-18 08:53:20 +02:00
Ludwig Ortmann
aa4e61fab2 documentation: clean up doxygen mess after cortex
fixes #1190
2014-05-16 19:47:54 +02:00
Hauke Petersen
31915bfe61 cpu: Initial import of SAM3X8E
- fixed spelling in uart driver
- marked cortexm-common a phony target
- fixed Makefiles
- added reboot interface implementation
- fixed documentation

- added UART0_BUFSIZE define

- added license header

- fixed documentation issues
2014-05-13 21:19:38 +02:00
Hauke Petersen
27133d25fe cpu: Initial import of cortexm_common files
- fixes to cortexm-common
- Added ARM CMSIS headers to cortexm_common
- thread_exit fixes to cortexm-common
- cortexm-common adjusted documentation

- cortexm_common added eINT dINT defines for now
2014-05-13 21:19:18 +02:00