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

461 Commits

Author SHA1 Message Date
Ludwig Ortmann
bdd4252961 guard setitimer 2014-01-29 18:44:42 +01:00
Ludwig Ortmann
0766b92f7b Don't unblock signals again.
A late signal could kill the process otherwise.
2014-01-29 18:44:42 +01:00
Ludwig Ortmann
2c80f68d62 handle more errors and remove race condition in native_isr_entry 2014-01-29 18:44:42 +01:00
Ludwig Ortmann
a55e85f8d0 guard swapcontext in _native_syscall_leave 2014-01-29 18:44:42 +01:00
Ludwig Ortmann
7f1db86ae2 handle some should-be impossible paths 2014-01-29 18:44:41 +01:00
Ludwig Ortmann
573b154f44 handle select errors EAGAIN | EWOULDBLOCK in lpm 2014-01-29 18:44:18 +01:00
Ludwig Ortmann
3c087107f2 fix call to err() 2014-01-29 16:54:36 +01:00
56ee585c81 update Kaspar's email address
kaspar.schleiser@fu-berlin.de is obsolete.
(2nd try, first try was overwritten by some overzealous documenter)
2014-01-28 11:53:19 +01:00
Ludwig Ortmann
f04c3dc433 Merge pull request #559 from LudwigOrtmann/native_syscall_guards
Native syscall guards
2014-01-24 09:36:26 -08:00
Ludwig Ortmann
d8745e2861 add local debug macro
addresses https://github.com/RIOT-OS/RIOT/pull/559#issuecomment-33241773
2014-01-24 18:26:44 +01:00
Ludwig Ortmann
b22380990f fix DEBUG in syscalls 2014-01-24 17:30:47 +01:00
Ludwig Ortmann
4939473afb guard malloc/free family 2014-01-24 17:30:47 +01:00
Ludwig Ortmann
7685357990 Merge pull request #547 from LudwigOrtmann/native_hwtimer_fix
Native hwtimer fix
2014-01-24 08:10:42 -08:00
Ludwig Ortmann
7148f1db23 change wording
addresses https://github.com/RIOT-OS/RIOT/pull/555#discussion_r9118361
2014-01-23 17:25:41 +01:00
Ludwig Ortmann
f58b312129 improve error messages when tap ioctls fail 2014-01-23 17:16:00 +01:00
Ludwig Ortmann
e32bfa53d0 fix overdue mitigation 2014-01-23 00:03:23 +01:00
Ludwig Ortmann
91ebc1d0b5 improve debug messages 2014-01-22 22:19:53 +01:00
Ludwig Ortmann
332cf8807f fix callback offset 2014-01-22 22:19:53 +01:00
Oleg Hahm
8de53e2b78 Merge pull request #530 from thomaseichinger/msp430-intrinsics.h-fix
safeguard intrinsics.h include in lpm_cpu.c
2014-01-22 10:59:11 -08:00
Ludwig Ortmann
855eea6a53 add missing newlines 2014-01-22 18:26:53 +01:00
Ludwig Ortmann
ca53203f1f Merge pull request #539 from LudwigOrtmann/native_signal_patches
Native signal patches
2014-01-21 08:40:30 -08:00
Ludwig Ortmann
2b4a323a18 unclutter native_isr_entry a bit
remove heap_address - hopefully superflous, does not work in valgrind
remove stale TODO
2014-01-21 17:39:43 +01:00
Ludwig Ortmann
7789bbca16 fix signal trampoline
save and use the program counter on stack
removes race condition in trampoline
also push/pop full memory words explicitly
2014-01-21 17:39:15 +01:00
Oleg Hahm
0409d4b3a1 Merge pull request #521 from OlegHahm/fix_includes_for_msp430
Fix includes for msp430
2014-01-21 04:49:06 -08:00
Ludwig Ortmann
98a2d554b5 osx fixes 2014-01-21 12:30:53 +01:00
Thomas Eichinger
eff2c9aea3 safeguard intrinsics.h include since it is only provided by msp430-gcc >= 4.6 2014-01-21 11:27:21 +01:00
Oleg Hahm
a57b853401 removed own implementation of errno headers 2014-01-20 14:05:47 +01:00
Oleg Hahm
9eebc532ef Merge pull request #459 from rousselk/msp430-lpm-freq
Msp430 lpm freq
2014-01-16 04:57:27 -08:00
Ludwig Ortmann
fc6cd24ece reduce HWTIMERMINOFFSET 2014-01-15 12:40:55 +01:00
Ludwig Ortmann
dbcc898bcc update internal timer on hwtimer_arch_set 2014-01-15 12:40:03 +01:00
Ludwig Ortmann
d3a1c1bda7 add comment
addresses https://github.com/RIOT-OS/RIOT/pull/501#discussion_r8881054
2014-01-15 11:24:59 +01:00
Ludwig Ortmann
921b70d5e8 fix pre-init
set the internal relative time - don't rely on hwtimer_now() being
called externally
2014-01-14 17:23:15 +01:00
Ludwig Ortmann
396f6c2819 fix debug msg 2014-01-14 17:23:03 +01:00
Ludwig Ortmann
6fe1ecd1b4 Merge pull request #479 from LudwigOrtmann/nativenet_lenchck
Nativenet length check and cleanup
2014-01-10 01:47:35 -08:00
Oleg Hahm
fe575d52df Merge pull request #364 from OlegHahm/float_stack_sizes
added a dedicated stacksize for float printfs
2014-01-09 10:48:38 -08:00
Thomas Eichinger
dadd64e2f9 Merge pull request #473 from LudwigOrtmann/nativenet_osx_xmas
add io signal generating child for nativenet in osx
2014-01-09 07:14:34 -08:00
Ludwig Ortmann
83db6f6364 remove superflous include 2014-01-09 12:33:02 +01:00
Ludwig Ortmann
76b017aefd check payload length validity
make sure the payload does not exceed the amount of data received
2014-01-08 14:58:57 +01:00
Ludwig Ortmann
ac0ec1f6b3 nativenet clean up
Make nativenet tap payload type consistent with radio_packet_t
Also remove a trailing space
2014-01-08 14:57:11 +01:00
Kévin Roussel
32a6e168ff function 'lpm_get()' now returns LPM_UNKNOWN by default 2014-01-08 09:59:05 +01:00
Ludwig Ortmann
98d1136761 update native README 2014-01-07 10:20:58 +01:00
Oleg Hahm
775c0dee5c added missing mute prefixes in nativenet and shell 2014-01-05 16:11:08 +01:00
Oleg Hahm
9df07f9238 muting compiler and binutils optionally
Instead of muting all compiler and other binutils output by default,
introduce a variable to make this behaviour configurable.
2014-01-05 16:11:08 +01:00
Oleg Hahm
02612ff0ca further Makefile cleanup 2014-01-05 16:11:08 +01:00
Oleg Hahm
c7d985d371 removed redundant include pathes from Makefiles 2014-01-05 16:11:08 +01:00
Oleg Hahm
26c50522d5 simplified and unified cpu build structure 2014-01-05 16:11:07 +01:00
Kévin Roussel
5d393d270b Sets MCU frequency in 'board.h', instead of the common 'cpu.h' file 2013-12-24 15:41:32 +01:00
Kévin Roussel
2b4febf8df Basic implementation of LPM-related functions for MSP430 MCUs 2013-12-24 15:38:26 +01:00
Ludwig Ortmann
ea8b735232 fix nativenet_send documentation 2013-12-24 11:57:54 +01:00
Ludwig Ortmann
648bdaeed6 add io signal generating child for nativenet in osx 2013-12-24 11:54:00 +01:00
Ludwig Ortmann
1ac1646837 further clean up / filtering for cpu 2013-12-23 00:18:21 +01:00
Ludwig Ortmann
cf87e647c0 make native includes RIOT posix compatible 2013-12-22 23:26:54 +01:00
Ludwig Ortmann
ef315ed662 improve nativenet send functions return type 2013-12-21 16:56:42 +01:00
Ludwig Ortmann
751cfe6475 fix native hwtimer
The hardware timer used relative offsets that were never updated
before. This leads to two problems:
a) later timers will get pushed into the future by the amount of
   previous timers
b) if a short timer is set continuously, a longer timer will never be
   called

Example:
a)
Timer a with 500 ms is set, timer b with 600 ms is set.
timer a expires after 500 ms, timer b will be set to expire in 600 ms
which totals to 1100 ms.
b)
Timer a is set to 500 ms, timer b is set to 600 ms.
Timer a expires and is set again. Now timer a will expire in 500 ms
and timer b will be pushed further into the future. Repeating this
will lead to b never expiring.
2013-12-20 18:55:47 +01:00
Martin Lenders
69809928d3 Make UART0_BUFSIZE configurable by CPU 2013-12-20 11:10:42 +01:00
Oleg Hahm
1cc2767bb4 Merge pull request #318 from OlegHahm/lpc1768
initial support for the mbed NXP LPC168
2013-12-19 09:03:22 -08:00
Oleg Hahm
cdb77c2392 Merge pull request #437 from OlegHahm/include_directives
making include directives consistent
2013-12-19 08:38:14 -08:00
Thomas Eichinger
aa84138531 Merge pull request #451 from OlegHahm/mc1322x_check
Fixes check for Mc1322x  CPU in arm_common
2013-12-19 06:34:58 -08:00
Oleg Hahm
903ec54a43 making include directives consistent 2013-12-19 15:31:37 +01:00
Oleg Hahm
aabef88d20 fix check for used cpu in arm_common 2013-12-19 15:25:12 +01:00
Ludwig Ortmann
50d488e6bc remove suprerfluous thread_yield declaration 2013-12-19 13:05:53 +01:00
Ludwig Ortmann
437c0ee5c9 msp430 lpm stub 2013-12-19 13:04:08 +01:00
Ludwig Ortmann
76cfdc33b1 stack alignment workaround
Should be fixed in thread.c instead, this is just a temporary
workaround to enable msp-430 threads in the mean time.
2013-12-19 13:04:08 +01:00
Ludwig Ortmann
2a8411b6a3 fix main return for msp430
mspgcc handles main specially, this introduces code to make main
behave normally
2013-12-19 13:04:08 +01:00
Ludwig Ortmann
69f6748a7c clean up msp430 cpu-conf.h 2013-12-19 13:04:08 +01:00
Oleg Hahm
37a7393a6b Merge pull request #408 from rousselk/simplify-msp430-headers
Simplify msp430 headers
2013-12-19 02:23:21 -08:00
Kévin Roussel
c1f8106138 Quoted (instead of brackets) the custom header files #includes 2013-12-19 10:22:44 +01:00
Oleg Hahm
ead2e117a1 Merge pull request #439 from OlegHahm/thread_yield_prototype
put prototype for thread_yield() in core/include
2013-12-18 13:36:55 -08:00
Christian Mehlis
2a9aac7f0b Merge pull request #423 from OlegHahm/fix_warnings
Fix warnings
2013-12-18 12:02:37 -08:00
Thomas Eichinger
cfa8879760 Merge pull request #435 from OlegHahm/fix_assembler_ifdef
macros are not handled by the preprocessor in ASM
2013-12-18 11:53:27 -08:00
Oleg Hahm
2cdfc5b585 Merge pull request #382 from OlegHahm/transceiver_return
transceiver return signed values for sending
2013-12-18 09:33:32 -08:00
Oleg Hahm
d87d827d88 transceiver return signed values for sending
negative values indicate an error value
2013-12-18 18:22:59 +01:00
Oleg Hahm
227c847135 put prototype for thread_yield() in core/include 2013-12-18 17:47:49 +01:00
Oleg Hahm
856548c63d macros are not handled by the preprocessor in ASM 2013-12-18 16:56:13 +01:00
Thomas Eichinger
0afb992fc7 changed copyright statement 2013-12-18 11:16:41 +01:00
Thomas Eichinger
1d2f1479b6 hwtimer_wait issue fixed 2013-12-18 11:11:15 +01:00
Thomas Eichinger
1fcb47f9ed fixed interrupt handling for hwtimer 2013-12-18 11:11:15 +01:00
Thomas Eichinger
1e39e7e486 change to the mc1322x IRQ handling
since mc1322x lacks a VIC this is a kind of SW VIC with low latency and
compatibility to the VIC API in mind.
2013-12-18 11:11:14 +01:00
Thomas Eichinger
a1cd29d68e added basic install_irq function 2013-12-18 11:10:21 +01:00
Thomas Eichinger
a26b7ac4ba remove isr.c to change interrupt handling to VIC model 2013-12-18 11:10:20 +01:00
Thomas Eichinger
8aeaea6fdc changed CFLAGS to CFLAGS_BASIC (no -mthumb flag) 2013-12-18 11:10:20 +01:00
Thomas Eichinger
39c69166c5 fixes startup code and adds proper irq handler for mc1322x 2013-12-18 11:10:20 +01:00
Kévin Roussel
c6e43adb62 Removed 'flashrom.c' from the 'msp430-common' directory
since flash management differs with the MSP430 family
2013-12-18 10:51:46 +01:00
Kévin Roussel
63d78a231c Made the headers of files in 'cpu/msp430x16x' and 'cpu/cc430' generic 2013-12-18 10:49:23 +01:00
Kévin Roussel
6428daf9c7 Removed all references to a specific MCU in "generic" files
Inclusion of generic <msp430.h> file is done in cpu.h
2013-12-18 10:49:23 +01:00
Hauke Petersen
edcabf7cb6 Fixed a lot of comments by removing tabs and correcting format. 2013-12-16 14:00:33 +01:00
Hauke Petersen
3785fe956b Fixed doxygen comments, focused on file headers and group definitions 2013-12-16 14:00:24 +01:00
Ludwig Ortmann
0817675f5e fix native hwtimer unsetting
reverts bug introduced by 2bfb062
2013-12-14 00:12:47 +01:00
Ludwig Ortmann
d03d7b1773 clean up native hwtimer 2013-12-14 00:07:49 +01:00
Oleg Hahm
72586f7a6d limit maximum payload size to 255 for nativenet if 6lowpan is used 2013-12-13 18:53:48 +01:00
Christian Mehlis
2bfb06230a fix: native hwtimer backend emulation
searching for the next pending timer was broken
this commit rewrites this functionality
2013-12-11 16:22:14 +01:00
Christian Mehlis
b17ffabce5 reduce minimal timer from 100ms to 10ms 2013-12-10 22:08:49 +01:00
Ludwig Ortmann
916757cf4c implement err.h
valgrind reported invalid reads/writes with glibc err[x]|warn[x] (in
glibc printf) when stdio had been redirected in between.

define _progname (pointing to argv[0])
2013-12-10 17:00:01 +01:00
Ludwig Ortmann
864267f238 daemonization, io socket and file redirection 2013-12-10 17:00:01 +01:00
Oleg Hahm
3319fa484c remove profiler from lpc_common
The profiling functions (gcc -finstrument_function) should be better
defined within the application.
2013-12-06 10:31:20 +01:00
f85adf608f change my email address
kaspar.schleiser@fu-berlin.de will be obsoleted soon. Replace it with
kaspar@schleiser.de, which will (hopefully) stay.
2013-12-04 15:09:56 +01:00
Christian Mehlis
ff12887eae Merge pull request #380 from OlegHahm/fix_watchdog
initializes watchdog properly for MSB-A2
2013-12-03 03:17:43 -08:00
Christian Mehlis
faa7b0c702 Merge pull request #394 from LudwigOrtmann/native_fix_include
fix native stdlib.h include
2013-12-03 02:26:30 -08:00
Ludwig Ortmann
2d7c328870 fix native stdlib.h include
Fixes segfault in OSX introduced by 45ffdea
2013-12-02 11:39:22 +01:00
Ludwig Ortmann
1c128f5ed6 improve valgrind section 2013-12-02 11:17:25 +01:00
Oleg Hahm
9817043ada Merge pull request #375 from LudwigOrtmann/license_header_fix
fix grammar in license header
2013-11-26 10:55:41 -08:00
Oleg Hahm
24314a2167 Merge pull request #358 from OlegHahm/fix_warnings
Fix warnings
2013-11-25 17:10:55 -08:00
Oleg Hahm
749a24c515 initializes watchdog properly for MSB-A2
It the watchdog does not reset the WDMOD, BSL pin remains ignored.
2013-11-25 16:53:32 +01:00
Ludwig Ortmann
926c1d3da0 GNU Lesser General Public License -> LGPLv2 2013-11-23 13:43:47 +01:00
Ludwig Ortmann
d6c213fb47 fix grammar in license header 2013-11-23 13:11:56 +01:00
Ludwig Ortmann
2f53c0d32f rework sigmasks
only mask signals actively being used
always enable shutdown
2013-11-23 11:21:40 +01:00
Ludwig Ortmann
0c6050a814 mask all signals in signal handler 2013-11-23 11:21:40 +01:00
Ludwig Ortmann
0a6dba11e5 mitigate against signals when signals are off 2013-11-23 11:21:40 +01:00
Ludwig Ortmann
5e1eadc353 add in_isr sighndl safeguard 2013-11-23 11:21:40 +01:00
Ludwig Ortmann
3a04671912 replace 1 with EXIT_FAILURE in all err calls 2013-11-23 11:21:40 +01:00
Ludwig Ortmann
3ca8181c73 reset context before makecontext call, check
check return value of swapcontext
2013-11-23 11:21:40 +01:00
Oleg Hahm
1f50d91332 making the pedantic gcc happy 2013-11-23 03:45:26 +01:00
Ludwig Ortmann
709cc9c158 add toa to packets in nativenet
also change order of fields to reflect radio types header
2013-11-22 10:55:49 +01:00
Oleg Hahm
6a1fcaf288 added a dedicated stacksize for float printfs 2013-11-21 20:41:28 +01:00
Christian Mehlis
45ffdeaf52 add missing stdlib.h include 2013-11-21 00:26:13 +01:00
Ludwig Ortmann
c1ea408274 move struct timeval to msp430_types.h 2013-11-19 17:56:05 +01:00
Ludwig Ortmann
3b2b02e99a enable building chronos board 2013-11-19 17:56:05 +01:00
Ludwig Ortmann
f7a1edeb2c fix and clean up some board Makefiles
enables building wsn430-v1_3b and wsn430-v1_4
fixes some but not all chronos building issues
2013-11-19 17:56:05 +01:00
Ludwig Ortmann
03957ab57d dont overwrite CFLAGS in Makefile 2013-11-15 11:41:15 +01:00
Ludwig Ortmann
7caf7881a2 fix msb-430 Makefiles and includes 2013-11-14 15:08:32 +01:00
Oleg Hahm
cc45909ffc Merge pull request #236 from OlegHahm/telosb
Telosb
2013-11-14 01:55:47 -08:00
Oleg Hahm
19f4f45445 added some debug output for the network stack 2013-11-14 10:46:21 +01:00
Ludwig Ortmann
01e30016d6 add lpm syscall barrier for native w/out UART 2013-11-13 23:43:26 +01:00
Ludwig Ortmann
c764728398 pre-init native hwtimer
make it behaver more like a regular timer
2013-11-13 01:31:31 +01:00
Ludwig Ortmann
1df56ed47b cope with SIGIO behaviour
SIGIO appears to be edge triggered, therefore we need to read
continuously until no more data is available
2013-11-13 00:01:42 +01:00
Ludwig Ortmann
2c7070bf0c disable interrupts for sighnd ctx switch 2013-11-13 00:01:42 +01:00
Ludwig Ortmann
9f080c54c6 fix race in thread_yield, cpu_switch_context_exit
call *context only with interrupts disabled, use isr trampoline for
this if necessary
2013-11-13 00:01:42 +01:00
Ludwig Ortmann
7b9d199ec8 make system calls safer/clean up headers
wrap some libc functions that do system calls (terminal output)
wrap read/write with syscall guard
define real_read/write (next dynamic linker find for read/write)
guard system calls in remaining code
introduce native_internhal.h
throw out some debug statements that break things
clean up includes a bit
declare board_init in native_internhal.h
add -ldl to LINKFLAGS for cpu/syscalls
2013-11-13 00:01:42 +01:00
Oleg Hahm
b6a7dc953f initial support for the mbed NXP LPC168
* http://mbed.org/platforms/mbed-LPC1768/
2013-11-09 18:40:25 -08:00
Ludwig Ortmann
bad523831b allow for custom tap names 2013-11-08 13:59:26 +01:00
Oleg Hahm
1117867eaf Merge pull request #231 from thomaseichinger/maca_move
move mc1322x MACA implementation from the boards to RIOT repo
2013-11-06 14:21:58 -08:00
Christian Mehlis
4f4c4bfedd use radio_packet_length_t for native frames 2013-10-29 20:36:13 +01:00
Christian Mehlis
2e59096390 fix wrong error handling introduced in 945aef 2013-10-26 15:40:01 +02:00
LudwigOrtmann
37158553b9 Merge pull request #264 from LudwigOrtmann/native_hwtimer_delta
add time delta to hwtimer
2013-10-25 04:07:32 -07:00
Christian Mehlis
22a2cdaea4 Merge pull request #249 from mehlis/time-rtc
add rtc_time function
2013-10-25 03:55:06 -07:00
Ludwig Ortmann
7e02c7dd2b add time delta to hwtimer 2013-10-25 12:11:54 +02:00
Christian Mehlis
945aefad4f add rtc_time implementation for native 2013-10-25 11:53:45 +02:00
Ludwig Ortmann
7f7290a26a normalize stack defines 2013-10-25 11:40:33 +02:00
Ludwig Ortmann
944d10c07d improve native README 2013-10-24 12:58:28 +02:00
Ludwig Ortmann
45c9f92b5e implement graceful shutdown in native 2013-10-23 23:16:45 +02:00
Oleg Hahm
9f0aed27f3 Merge pull request #245 from LudwigOrtmann/fix_tramp
fix signal handler context switch
2013-10-23 10:05:40 -07:00
Christian Mehlis
7fb1ac4402 msp430: add time_t and struct timespec 2013-10-22 11:07:18 +02:00
Ludwig Ortmann
4c5273211b fix signal handler context switch 2013-10-18 14:23:58 +02:00
Ludwig Ortmann
badcf390d1 initialize processing field in nativenet tap 2013-10-13 21:23:12 +02:00
Ludwig Ortmann
81f3ddde44 free reference pointer, fix indentation 2013-10-13 20:45:35 +02:00
Christian Mehlis
ff7cf37ccd Merge pull request #230 from LudwigOrtmann/issue_154
valgrind support for native
2013-10-11 03:42:41 -07:00
Oleg Hahm
031e335e24 Merge pull request #97 from OlegHahm/makefile_windows_fixes
merged zkasmi/makefile_fixes to makefile_windows_fixes
2013-10-10 09:25:03 -07:00
Oleg Hahm
46deefe0f8 make Makefiles proof for spaces in $PATH 2013-10-09 15:28:53 +02:00
Ludwig Ortmann
21a0f39867 valgrind support 2013-10-09 15:20:59 +02:00
Kévin Roussel
c7501ce5e0 Added mising reference to cpu/msp430-common/include/cpu.h
so as to get the needed definition of F_RC_OSCILLATOR
2013-10-09 15:10:22 +02:00