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

3067 Commits

Author SHA1 Message Date
Martine Lenders
62139bd0d2 Merge pull request #1207 from Kijewski/unittests-makefile.include
unittests: support Makefile.include in test suites
2014-05-26 14:51:12 +02:00
Christian Mehlis
ad46060929 Merge pull request #1227 from emmanuelsearch/CCN-documentation
CCN documentation
2014-05-26 14:22:50 +02:00
emmanuelsearch
a37e86db0a Documentation: Create README.md for the CCN-lite client and relay 2014-05-26 14:11:30 +02:00
Thomas Eichinger
44612df6d1 Merge pull request #1224 from thomaseichinger/pro-to-app
make: s/PROJECT/APPLICATION/g
2014-05-26 13:31:12 +02:00
Thomas Eichinger
1e983c9670 s/PROJECT/APPLICATION/g
fixes #548
2014-05-26 13:21:09 +02:00
Oleg Hahm
e2ff26efd9 Merge pull request #764 from Kijewski/implement-x86
Initial x86 port: "qemu-i386"
2014-05-26 12:42:45 +02:00
René Kijewski
4e4f908379 Initial import of the x86 port
Currently this works only in qemu.
2014-05-25 13:40:29 +02:00
René Kijewski
2b95e7b144 Merge pull request #1230 from Kijewski/fix-clean
make: fix clean together with TLSF
2014-05-25 13:39:41 +02:00
Martine Lenders
1bee1e1184 Merge pull request #1229 from OlegHahm/description_unification
Unification of descriptive text of similar modules
2014-05-25 12:45:21 +02:00
René Kijewski
054f9fd026 make: fix clean together with TLSF 2014-05-24 19:22:18 +02:00
Oleg Hahm
484f817ea6 Merge pull request #1152 from Kijewski/vtimer-test-warnings
vtimer: fix usage in test application
2014-05-24 18:46:11 +02:00
René Kijewski
a6fd5bff92 core: imply current_prio in sched_switch()
There is no need to supply the current priority to `sched_switch()`,
when this function can easily tell the value of
`active_thread->priority` itself.
2014-05-24 16:48:35 +02:00
Oleg Hahm
c8d474eae4 documentation: unified descriptive text for drivers 2014-05-24 16:06:05 +02:00
Oleg Hahm
ad28f4f1c0 cosmetics: converted tabs into spaces for lpc1768 header 2014-05-24 15:57:29 +02:00
Oleg Hahm
ef4fe6616c documentation: unified descriptive text for cpu 2014-05-24 15:56:57 +02:00
Oleg Hahm
a2db556139 cosmetics: cleaned up arm_common.h
* converted tabs to white spaces, fixed indentation, and removed SVN clutter
2014-05-24 15:16:26 +02:00
Oleg Hahm
de6e70c594 copyriot: fixed copyriot header for arm_common 2014-05-24 15:12:36 +02:00
Oleg Hahm
4ddc9539fd documentation: unified descriptive text for boards 2014-05-24 15:03:06 +02:00
Oleg Hahm
f2ee98c285 Merge pull request #1039 from Kijewski/buildtest-insufficient-ram
make: add `BOARD_INSUFFICIENT_RAM` blacklisting
2014-05-24 14:49:09 +02:00
René Kijewski
49778752b3 Use BOARD_INSUFFICIENT_RAM in examples and tests 2014-05-23 14:29:52 +02:00
René Kijewski
4198b7518c make: add BOARD_INSUFFICIENT_RAM blacklisting
Currently most blacklistings for examples and tests are done because the
board provides too little RAM or ROM. Besides of the actual linking all
the compiling should nevertheless work just fine.

This PR adds the variable `BOARD_INSUFFICIENT_RAM` to tell the
`buildtest` to compile the code for a board, but omit the linking step.
2014-05-23 14:29:38 +02:00
René Kijewski
27ae094413 make: remove clutter
Remove some outdated example code.
2014-05-23 14:28:27 +02:00
René Kijewski
e8bf4ef6a2 Merge pull request #1182 from Kijewski/msp-oneway-malloc
msp430: provide oneway-malloc implicitly
2014-05-23 14:19:00 +02:00
René Kijewski
9f40d019e3 Merge pull request #1201 from Kijewski/exclusive-make-clean
make: make clean usable together with `-j`
2014-05-23 03:48:55 +02:00
René Kijewski
d52651f61d Merge pull request #1215 from Kijewski/tlsf
Add TLSF (two level segregated fit) PKG
2014-05-22 18:54:20 +02:00
René Kijewski
f3eeb98a01 msp/tests: remove blacklist from test_bloom_bytes
Issue #1061 was fixed.
2014-05-22 15:40:25 +02:00
René Kijewski
75f71992e5 Add doxygen comments to MSP's oneway malloc 2014-05-22 15:40:25 +02:00
René Kijewski
1b89f334e3 msp430: provide oneway-malloc implicitly
For MSP430 boards oneway-malloc is already used *if* `malloc.h` was
included. The problem is that `malloc.h` is not a standard header, even
though it is common. `stdlib.h` in the right place to look for
`malloc()` and friends.

This change removes this discrepancy. `malloc()` is just named like
that, without the leading underscore. The symbols now are weak, which
means that they won't override library functions if MSP's standard
library will provide these functions at some point. (Unlikely, since
using `malloc()` on tiny systems is less then optimal ...)

Closes #1061 and #863.
2014-05-22 15:40:25 +02:00
Oleg Hahm
f54b363b6c Merge pull request #1015 from OlegHahm/sixlowpan_doxygen_fix
Some doxygen fixes
2014-05-22 13:21:50 +02:00
Oleg Hahm
6dbeacd2ce documentation: fixed sixlowpan doxygen filename 2014-05-22 13:01:44 +02:00
Oleg Hahm
f8168c86d3 documentation: fixed organization of 6LoWPAN doxygen 2014-05-22 13:01:37 +02:00
Oleg Hahm
9efc0d2255 documentation: added missing doxygen header to transceiver interface 2014-05-22 13:01:36 +02:00
Oleg Hahm
ce73fa56e2 documentation: moved network documentation to top level 2014-05-22 13:01:36 +02:00
Oleg Hahm
bf00b019e4 documentation: CMSIS cleanup
Put all CMSIS documentation into a dedicated subgroup of cpu.
2014-05-22 13:01:36 +02:00
Kévin Roussel
e9ff3e6cf8 Merge pull request #1211 from rousselk/complete-radio_driver_h
Completing low-level radio driver definition.
2014-05-22 10:22:08 +02:00
Kévin Roussel
2a02203067 Complete the definition of low-level radio driver API 2014-05-21 11:41:10 +02:00
Thomas Eichinger
5808662d05 Merge pull request #1193 from LudwigOrtmann/issue-924
core/hwtimer: disable interrupts in hwtimer_remove
2014-05-20 14:51:08 +02:00
Thomas Eichinger
1e12d5896b Merge pull request #977 from mehlis/doxygen-irq
core: kernel: improved doxygen documentation
2014-05-20 14:49:58 +02:00
Christian Mehlis
67428b5814 core: kernel: improved doxygen documentation
also added param[in] to irq.h and fix order of doxygen endguards
2014-05-20 14:47:41 +02:00
Christian Mehlis
0aa87a8ee7 Merge pull request #1208 from Kijewski/issue-1199
documentation: fix doxygen for `pthread_*.h`
2014-05-20 14:19:52 +02:00
René Kijewski
06eb95d687 Merge pull request #1216 from LudwigOrtmann/issue-1215
native: set _native_pid correctly in daemon mode
2014-05-20 14:09:44 +02:00
Oleg Hahm
8aa78edb0a Merge pull request #1213 from OlegHahm/ubuntu_msp430_errno_fix
msp430: workaround: define errno values if not provided by MSP430 lib
2014-05-20 12:03:11 +02:00
Ludwig Ortmann
c9f68e79b9 native: set _native_pid correctly in daemon mode
This fixes a bug that leads to all unix sockets being created as
`/tmp/riot.tty.0`.
2014-05-20 08:53:26 +02:00
René Kijewski
88e8915dfe Add TLSF (two level segregated fit) PKG
This is my second take on #669, because I was asked to separate it from #764.

This change adds a malloc implementation as a PKG, which uses *TLSF* (two
level segregated fit).

The patch file removes the 64bit capatibilities, debug functions, and the
option to have multiple "control blocks" (a control block holds multiple
memory pools). It wraps `malloc()` and friends in `disableIRQ() … restoreIRQ()`.

The implemention does not support 16bit platforms, yet, but probably only some
constants would need fixing. I limited the maximum size of a memory pool to
2**30 bytes = 1GB.

This PKG is not meant to be used by applicitions directly, but by the boards.
The board's initialition code needs to call
`int tlsf_add_pool(void *mem, size_t bytes)` for every free memory region it
has. If the board in using newlib, then this call needs to happen before the
first call to `puts`, `printf`, and friends, because newlib allocates the
control data IO streams (stdin, stdout, stderr) on the heap. Adding a small
(e.g. 1kB) pool before proper board initialization would be a possible solution.

Please read the additional information in the website of the implementator,
http://tlsf.baisoku.org/:

> TLSF (two level segregated fit) is a relatively new memory
allocator designed for embedded systems. It boasts constant
time O(1) malloc/free response time and a 4-byte block
overhead. Though it typically is slightly slower than other
allocators such as dlmalloc, it has no worst-case behavior.

> The original implementation, which comes alongside the white
paper, is distributed under the GNU GPL/LGPL. The code found
here is an original implementation, released into the public
domain, therefore is not subject to any licensing restrictions.

> Features:
 -  O(1) cost for malloc, free, realloc, memalign
 -  Extremely low overhead per allocation (4 bytes)
 -  Low overhead per pool (~3kB)
 -  Low fragmentation
 -  Compiles to only a few kB of code and data

> Caveats:
 -  Currently, assumes architecture can make 4-byte aligned accesses
 -  Not designed to be thread safe; the user must provide this

> Known Issues:
Due to the internal block structure size and the implementation
details of tlsf_memalign, there is worst-case behavior when requesting
small (<16 byte) blocks aligned to 8-byte boundaries. Overuse of memalign
will generally increase fragmentation, but this particular case will leave
lots of unusable "holes" in the heap. The solution would be to internally
align all blocks to 8 bytes, but this will require significantl changes
to the implementation. Contact me if you are interested.
2014-05-20 03:17:09 +02:00
Oleg Hahm
05a3570ffe Merge pull request #1189 from Kijewski/compile_test-empty-folders
buildtest: ignore empty folders
2014-05-19 19:03:51 +02:00
Oleg Hahm
31351a0dc0 msp430: workaround: define errno values if not provided by MSP430 lib 2014-05-19 18:54:20 +02:00
René Kijewski
57429954c1 Merge pull request #1212 from authmillenon/fix-application-names
Fix application name for test_bloom_byte application
2014-05-19 16:35:31 +02:00
Martin Lenders
3daa80124e Fix application name for test_bloom_byte application 2014-05-19 16:16:19 +02:00
Oleg Hahm
e980f82f99 Merge pull request #1202 from OlegHahm/cortex_doxygen_cleanup
documentation: cleanup doxygen for SAM3x8e and Z1
2014-05-19 11:34:32 +02:00
Oleg Hahm
4f645ecf36 documentation: fix doxygen group for Z1 2014-05-19 10:45:17 +02:00