Commit Graph
28437 Commits
Author SHA1 Message Date
Christian Mauderer 81329f9ecf bsp/altera-cyclone-v: Add RTC driver. 2014-08-11 08:01:26 +02:00
Christian Mauderer 3f9cd87d76 bsp/altera-cyclone-v: Add a simple I2C driver. 2014-08-11 08:01:26 +02:00
Christian Mauderer 1642d27e4c bsp/altera-cyclone-v: Add socal from hwlib.
Some of the headers from the hwlib need the files from the socal subdirectory.
2014-08-11 08:01:26 +02:00
Sebastian Huber 0b9fe3ec66 sptests/sprbtree01: Add random ops test case 2014-08-08 11:11:27 +02:00
Sebastian Huber 0ef6e3bfb9 rbtree: Simplify _RBTree_Extract() 2014-08-07 15:59:29 +02:00
Sebastian Huber 993f5acd25 rbtree: Simplify insert and extract
Simplify _RBTree_Insert() and _RBTree_Extract().  Remove more
superfluous NULL pointer checks.  Change _RBTree_Is_root() to use only
the node.  Add parent parameter to _RBTree_Sibling().  Delete
_RBTree_Grandparent() and _RBTree_Parent_sibling().
2014-08-07 15:59:29 +02:00
Sebastian Huber 4752550f80 rbtree: Simplify _RBTree_Rotate()
Add and use _RBTree_Direction().
2014-08-07 15:59:25 +02:00
Sebastian Huber d472d21780 sptests/sprbtree01: Check tree layout 2014-08-05 15:17:51 +02:00
Sebastian Huber 888edf69a9 sptests/sprbtree01: Reduce stack usage 2014-08-05 15:17:43 +02:00
Sebastian Huber 390cfcda71 posix: Simplify key implementation 2014-08-05 09:30:37 +02:00
Sebastian Huber 60fe374247 rbtree: Add and use RBTree_Compare_result 2014-08-05 09:30:37 +02:00
Sebastian Huber 40dcafaf80 Add and use RTEMS_CONTAINER_OF() 2014-08-05 09:30:33 +02:00
Sebastian Huber b767683a5e rbtree: Rename find header in find control
Simplify _RBTree_Find_control().  Avoid superfluous NULL pointer checks.
2014-07-29 14:05:17 +02:00
Sebastian Huber 6e93c836e2 rbtree: Simplify off-tree handling
Only use the parent pointer, since this pointer is never NULL for nodes
which are part of a tree.

Rename functions from *_off_rbtree() to *_off_tree().
2014-07-29 14:05:08 +02:00
Sebastian Huber 4cd55724bb Delete unused *_Is_null() functions 2014-07-26 12:52:22 +02:00
Sebastian Huber 639117fd12 rbtree: Update maximum node in LIFO order
The test sptests/sp35 showed a NULL pointer access due to an invalid
maximum node field (e.g. a tree with one element and NULL as the maximum
node).
2014-07-26 12:01:25 +02:00
Joel Sherrill 9113798c83 todimpl.h: Add missing Doxygen 2014-07-23 16:53:24 -05:00
Joel Sherrill 0a84c29890 coretod*.c: Fix Doxygen group and comment formatting 2014-07-23 16:53:24 -05:00
Joel Sherrill 875fff0ae3 Add _TOD_Adjust to SCORE TOD Handler.
This lays the proper structure for doing future work on
time adjustment algorithms. Any TOD adjustments should be
requested at the API level and performed at the SCORE level.

Additionally updated a test.
2014-07-23 16:53:24 -05:00
Joel Sherrill 3b6352d2e6 adjtime.c: Use timestamp math and simplify 2014-07-23 14:24:49 -05:00
Sebastian Huber 8abbbdde38 rbtree: Do not set node off-tree in extract 2014-07-22 12:31:41 +02:00
Sebastian Huber d7a9469378 rbtree: Remove superfluous NULL pointer checks 2014-07-22 12:31:39 +02:00
Sebastian Huber 6b0a7efc77 rbtree: Format 2014-07-22 12:30:53 +02:00
Sebastian Huber 87894c0743 doc: Update console driver documentation 2014-07-21 17:43:11 +02:00
Joel Sherrill 742402b5e0 m68k/gen68360/include/tm27.h: Correct comment 2014-07-16 15:45:59 -05:00
Joel Sherrill 6e868d8724 Add More Testsuite Configuration Files and Update Existing Ones
The first pass at building these was without networking enabled.
This pass addresses that plus accounts for some new BSPs which
needed testsuite.tcfg files and BSPs which could not link tests
which had been added since the first pass.
2014-07-16 15:45:59 -05:00
Chris Johns 6832a5606a Common ARM A8 code. 2014-07-16 14:17:25 +10:00
Joel Sherrill 0ea6d07a03 Use Shared Method for Thread Unblock Cleanup
When a thread is removed from a thread queue or is unblocked
by receiving an event, the same actions are required.

 + timeout watchdog canceled,
 + thread must be unblocked, and
 + (MP only) proxy cleaned up

This patch makes sure there is only one copy of this code.
2014-07-15 13:42:30 -05:00
Joel Sherrill 3250664700 Thread Queue: Merge discipline subroutines into main methods
There was a lot of duplication between the discipline subroutines.
With the transition to RBTrees for priority discipline, there were
only a few lines of source code manipulating the data structure
for FIFO and priority. Thus is made sense to fold these back
into the main methods.

As part of doing this all of the tests for discipline were changed
to be in the same order.
2014-07-15 13:42:30 -05:00
Joel Sherrill ed7a02895e Thread Queue Priority Discipline Reimplemented with RBTree 2014-07-15 12:43:44 -05:00
Sebastian Huber 64939bc9ef rbtree: Reduce RBTree_Control size
Remove compare function and is unique indicator from the control
structure.  Rename RBTree_Compare_function to RBTree_Compare.  Rename
rtems_rbtree_compare_function to rtems_rbtree_compare.  Provide C++
compatible initializers.  Add compare function and is unique indicator
to _RBTree_Find(), _RBTree_Insert(), rtems_rbtree_find() and
rtems_rbtree_insert().  Remove _RBTree_Is_unique() and
rtems_rbtree_is_unique().  Remove compare function and is unique
indicator from _RBTree_Initialize_empty() and
rtems_rbtree_initialize_empty().
2014-07-15 10:03:48 -05:00
Sebastian Huber 7e11999038 rbtree: Delete unused functions 2014-07-15 10:03:48 -05:00
Ben Gras 7e60b7d125 uart-output-char.h: extra offset definition.
All,

This patch is submitted as its values are used in my to-be-submitted
beagle bsp.
2014-07-15 10:03:32 -05:00
Joel Sherrill 9ba76ed8de sp59: Fix typos 2014-07-14 19:41:31 -05:00
Joel Sherrill 764e8b11d0 scheduleredfunblock.c: Correct spacing 2014-07-14 19:41:31 -05:00
Joel Sherrill 3a01e8b3e0 semdelete.c: Correct spacing 2014-07-14 19:41:31 -05:00
Joel Sherrill b6343c6100 Enhance Semaphore Blocking and Readying Time Test Cases
tm02 and tm03 were modified to be reused for multiple configurations
of RTEMS Classic API Semaphores. This added tm31-36.  The messages for
tm02 and tm03 were modified to indicate the semaphore attributes.
tm31 - tm36 were added. This resulted in the following cases:

tm02 - rtems_semaphore_obtain: Counting/FIFO not available caller blocks
tm03 - rtems_semaphore_release: Counting/FIFO task readied preempts caller
tm31 - rtems_semaphore_obtain: Counting/priority not available caller blocks
tm32 - rtems_semaphore_release: Counting/priority task readied preempts caller
tm33 - rtems_semaphore_obtain: Binary/FIFO not available caller blocks
tm34 - rtems_semaphore_release: Binary/FIFO task readied preempts caller
tm35 - rtems_semaphore_obtain: Binary/priority not available caller blocks
tm36 - rtems_semaphore_release: Binary/priority task readied preempts caller
2014-07-14 19:31:00 -05:00
Jennifer Averett 648c86c26a capture01: Add include of assert.h. 2014-07-14 13:12:31 -05:00
Jennifer Averett 247118bf51 smpschedsem01: new test.
This test verifies priority is inherited from a high priority
semaphore by a lower  priority task.
2014-07-11 10:12:48 -05:00
Jennifer Averett 7eb3fd4782 smpschedaffinity05: Add test for worst case migration for affintiy scheduler.
This test uses a combination of priority and affinity to cause
the tasks running on all 4 cores to change due to one task priority
change.
2014-07-11 10:12:48 -05:00
Jennifer Averett 61d26f939d smpschedaffinity04: New test.
This test walks a secondary high prority task across
all the cores.
2014-07-11 10:12:48 -05:00
Jennifer Averett 28d6674966 smpschedaffinity03: New test.
This task walks the affinity of self across all the cores.
2014-07-11 10:12:48 -05:00
Jennifer Averett 0929306933 smpschedaffinity02: New test.
This test checks setting the affinity of a secondary task
on a two core system.
2014-07-11 10:12:48 -05:00
Jennifer Averett d88b0e7fc8 smpschedaffinity01: New test.
This test verifies that affinity is honored when set prior to task start.
2014-07-11 10:12:47 -05:00
Jennifer Averett 82d137ae21 capture01: New non-interactive test for capture engine. 2014-07-11 09:49:55 -05:00
Jennifer Averett 463de590f0 capture: Fix capture engine to handle new extensions. 2014-07-11 09:48:50 -05:00
Jennifer Averett 1af8634a84 capture: Update comment block style in capture engine.
Doxygen added and comment blocks standardized.
2014-07-11 09:48:35 -05:00
Sebastian Huber f0c8501e4c score: Scheduler helping proto for affinity sched
The priority affinity scheduler has the nice property that it can
produce more than one scheduled to ready state change in one operation.
Each scheduled to ready state change may lead to one thread in need for
help.  Since it is currently only possible to return at most one thread
in need for help, we have a problem here.

A solution might be to move the check for migrations into the ask for
help mechanism.
2014-07-11 09:55:33 +02:00
Sebastian Huber 27783f6ca8 score: Fix scheduler helping implementation
Do not extract the idle threads from the ready set so that there is
always a thread available for comparison.
2014-07-10 15:29:57 +02:00
Sebastian Huber 333f9426f6 score: Fix assertions 2014-07-10 15:29:57 +02:00