Commit Graph

3522 Commits

Author SHA1 Message Date
Joel Sherrill
15068f4c9a Remove AVR port
closes #2443.
2016-01-19 19:40:42 -06:00
Sebastian Huber
438fa8d548 psxtests: Fix link-time errors
Fix link-time errors introduced by
e39cdb875c.

Update #2531.
2016-01-19 09:37:31 +01:00
Sebastian Huber
bb291a4a87 libtests/devfs: Inc max dev to support more BSPs 2016-01-19 08:36:18 +01:00
Sebastian Huber
2e8c4ad642 sptests/sp37: Fix interrupt level usage 2016-01-19 08:36:18 +01:00
Sebastian Huber
6da81e25ba sptests/sp37: Enable interrupts after test case
This avoids a test failure on ARMv7-M targets.
2016-01-15 14:19:23 +01:00
Sebastian Huber
599d71f7ff score: Statically initialize TOD handler 2016-01-12 11:35:41 +01:00
Sebastian Huber
ccd54344d9 score: Introduce Thread_Entry_information
This avoids potential dead code in _Thread_Handler().  It gets rid of
the dangerous function pointer casts.

Update #2514.
2016-01-11 08:47:01 +01:00
Sebastian Huber
3d1becf925 smptests/README: Delete obsolete information 2016-01-11 07:57:12 +01:00
Sebastian Huber
fe100e1611 score: Add fatal errors for NULL entry init tasks
This simplifies the global construction.

Update #2514.
2016-01-08 09:00:53 +01:00
Sebastian Huber
f9f7321e0a Filesystem: Remove superfluous permission checks
The permission is check by the upper layer.
2016-01-05 14:29:09 +01:00
Joel Sherrill
f6a8663ec5 Remove H8300 port
updates #2452.
2016-01-04 11:07:26 -06:00
Joel Sherrill
f5201df0dc Remove M32R architecture
updates #2446.
2016-01-04 11:07:00 -06:00
Sebastian Huber
a061f9d3c5 score: Fix watchdog insert
Under certain conditions a new watchdog was inserted with a wrong
and very large delta interval due to a wrong iterator update.

Bug was introduced by 1ccbd05291.

Close #2507.
2016-01-04 10:23:20 +01:00
Sebastian Huber
07d4e76913 sptests/sp07: Fix test case
Fix things broken by commit d5154d0f6a.

Update #2493.
2016-01-04 10:23:19 +01:00
Aun-Ali Zaidi
d5154d0f6a api: Remove deprecated Notepads
Notepads where a feature of RTEMS' tasks that simply functioned in
the same way as POSIX keys or threaded local storage (TLS). They were
introduced well before per task variables, which are also deprecated,
and were barely used in favor of their POSIX alternatives.

In addition to their scarce usage, Notepads took up unnecessary memory.
For each task:

 - 16 32-bit integers were allocated.
 - A total of 64 bytes per task per thread.

This is especially critical in low memory and safety-critical applications.

They are also defined as uint32_t, and therefore are not guaranteed to
hold a pointer.

Lastly, they are not portable solutions for SMP and uniprocessor systems,
like POSIX keys and TLS.

updates #2493.
2015-12-24 16:52:34 -06:00
Sebastian Huber
a48b7c442d score: Fix watchdog removal
Under certain conditions a new watchdog was inserted with a wrong and
very large delta interval due to an incomplete iterator update.

Bug was introduced by 1ccbd05291.

Close #2501.
2015-12-21 08:32:20 +01:00
Sebastian Huber
2b137eda38 psxtests/psxcleanup02: New test 2015-12-15 08:21:42 +01:00
Sebastian Huber
d0c3983814 Use linker set for system initialization
Make rtems_initialize_data_structures(),
rtems_initialize_before_drivers() and rtems_initialize_device_drivers()
static.  Rename rtems_initialize_start_multitasking() to
rtems_initialize_executive() and call the registered system
initialization handlers in this function.  Add system initialization API
available via #include <rtems/sysinit.h>.  Update the documentation
accordingly.

This is no functional change, only the method to call the existing
initialization routines changes.  Instead of direct function calls a
table of function pointers contained in the new RTEMS system
initialization linker set is used.  This table looks like this (the
actual addresses depend on the target).

nm *.exe | grep _Linker | sort
0201a2d0 D _Linker_set__Sysinit_begin
0201a2d0 D _Linker_set__Sysinit_bsp_work_area_initialize
0201a2d4 D _Linker_set__Sysinit_bsp_start
0201a2d8 D _Linker_set__Sysinit_rtems_initialize_data_structures
0201a2dc D _Linker_set__Sysinit_bsp_libc_init
0201a2e0 D _Linker_set__Sysinit_rtems_initialize_before_drivers
0201a2e4 D _Linker_set__Sysinit_bsp_predriver_hook
0201a2e8 D _Linker_set__Sysinit_rtems_initialize_device_drivers
0201a2ec D _Linker_set__Sysinit_bsp_postdriver_hook
0201a2f0 D _Linker_set__Sysinit_end

Add test sptests/spsysinit01.

Update #2408.
2015-12-11 08:17:16 +01:00
Sebastian Huber
b618d8cfc5 Add RTEMS linker sets
Update #2408.
2015-12-08 09:25:22 +01:00
Sebastian Huber
60c5461547 score: Statically initialize API extensions
Update #2408.
2015-12-08 08:38:06 +01:00
Sebastian Huber
8054b1c718 Remove <rtems/debug.h>
Close #2477.
2015-12-07 13:11:07 +01:00
Joel Sherrill
4b8184f0ed psxtmtests_plan.csv: Fix typo 2015-12-01 08:33:43 -06:00
Sebastian Huber
459ebc8397 libtests/termios04: Avoid use of freed memory 2015-11-12 08:28:45 +01:00
Sebastian Huber
aa473025f7 sapi: Add rtems_chain_get_first_unprotected()
Close #2459.
2015-11-05 11:30:09 +01:00
Sebastian Huber
893f9efe10 sptests/spsimplesched02: Fix warning
Close #2455.
2015-11-04 07:37:41 +01:00
Sebastian Huber
08a807b0ad libblock: Print block sizes and count 2015-11-02 08:21:49 +01:00
Joel Sherrill
69be1a222a CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK was undocumented and not error checked
closes #2431.
2015-10-27 07:31:29 -05:00
Sebastian Huber
f97536dcd3 basdefs.h: Add and use RTEMS_UNUSED 2015-10-26 09:13:19 +01:00
Ben Gras
7e06bd982b Fail gracefully if pax is not found
The $(PAX) variable is used unconditionally so it shouldn't be
left empty if not found at configure time. Fixes #2437.
2015-10-22 21:56:50 +02:00
Sebastian Huber
c03c71b170 libfdt: Merge into librtemscpu
This allows BSPs to use this library.
2015-10-19 09:51:28 +02:00
Sebastian Huber
175263ec91 libfdt: Initial import
Import from:

git://git.kernel.org/pub/scm/utils/dtc/dtc.git

Commit:

604e61e081e3c6c8fa1a8189c71cb3908a5bbc1e

Date:

2015-09-29T09:09:08Z
2015-10-16 07:46:56 +02:00
Sebastian Huber
54406d9f6c Delete CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
This define accidentally re-appeared.
2015-10-15 11:56:15 +02:00
Sebastian Huber
cff773f580 libstdthreads: Add C11 threads 2015-10-14 07:47:12 +02:00
Sebastian Huber
258ad71e96 SMP: Fix and optimize thread dispatching
According to the C11 and C++11 memory models only a read-modify-write
operation guarantees that we read the last value written in modification
order.  Avoid the sequential consistent thread fence and instead use the
inter-processor interrupt to set the thread dispatch necessary
indicator.
2015-09-28 13:56:57 +02:00
Sebastian Huber
8d296cd54e score: Use uintptr_t for atomic pointer operations
Do not obfuscate the standard API.
2015-09-26 21:23:53 +02:00
Sebastian Huber
1f7c5c88ca score: Fix atomic compare exchange 2015-09-25 21:48:24 +02:00
Sebastian Huber
314ff3c43f score: Fix resource count for self-contained mutex 2015-09-14 08:30:09 +02:00
Sebastian Huber
10c4636947 rbheap: Fix rtems_rbheap_free()
Remove unused descriptor of merged free chunks from the free chain and
add them to the spare descriptors.

Close #2417.
2015-09-11 11:28:13 +02:00
Sebastian Huber
5e4714b032 libtests/rbheap01: Simplify
Update #2417.
2015-09-11 11:27:33 +02:00
Sebastian Huber
808230add9 Upgrade to 4.11.99.0 2015-09-11 08:24:18 +02:00
Sebastian Huber
dafa5d8843 score: Implement priority boosting 2015-09-04 13:26:17 +02:00
Sebastian Huber
3995e6d9c2 score: Implement SMP-specific priority queue 2015-09-04 13:25:03 +02:00
Sebastian Huber
e9fbaa3b48 rbtree: Replace implementation
Use the BSD <sys/tree.h> implementation since it is faster, more
flexible and uses less storage.  See https://github.com/sebhub/rb-bench.
2015-09-03 13:58:16 +02:00
Sebastian Huber
3b3d1489e4 posix: glibc compatibility 2015-09-02 14:05:02 +02:00
Sebastian Huber
d9d0a84f85 psxtests/psxcancel: Check return status
Update #2402.
2015-09-01 14:07:51 +02:00
Sebastian Huber
44f3ea917f score: Fix return status of mutex try acquire
This fixes a copy and paste error (from libbsd).
2015-09-01 12:50:56 +02:00
Sebastian Huber
509e8d7f4d rbtree: Delete rtems_rbtree_find_control()
This function is hard to support in alternative implementations.  It has
no internal use case.
2015-09-01 09:07:08 +02:00
Sebastian Huber
2d48456ef5 rbheap: Drop direction from _RBTree_Iterate() 2015-08-31 09:59:42 +02:00
Sebastian Huber
d7c93070cc sptests/sprbtree01: Avoid internal API 2015-08-31 09:56:55 +02:00
Sebastian Huber
d128b4f2ed sptests/sprbtree01: Fix random ops test case 2015-08-31 09:56:55 +02:00