summaryrefslogtreecommitdiffstats
path: root/cpukit/score (follow)
Commit message (Collapse)AuthorAgeFilesLines
* mips/idtcpu.h: Fix nested comment warningJoel Sherrill2012-09-051-1/+1
|
* coremsg.c: Clean up and comment improvementJoel Sherrill2012-08-311-7/+13
| | | | | | | | This code was reviewed as part of coverage analysis improvements. The uncovered range had unclear documentation and the code itself was also cleaned up to be easier to understand. Author: Krzysztof Mięsowicz <krzysztof.miesowicz@gmail.com>
* PR2069: Similar. Forgot to add missing file.Andreas Heinig2012-08-061-0/+38
|
* PR2069: [CBS Scheduler] Memory leak and enqueue problemAndreas Heinig2012-08-062-1/+13
| | | | | | | Due to the fact that CBS extends the EDF scheduler, most parts of EDF are reused. One part is the allocation of the per-thread data. However, the CBS per-thread structure defines a further element (while including the rest of Scheduler_EDF_Per_thread)
* score: Change greedy allocation APISebastian Huber2012-07-172-11/+30
|
* score: Fix performance issue for 64-bit timestampsSebastian Huber2012-06-145-62/+22
| | | | | | | | | | | | | The 64-bit timestamps were introduced to simplify the timestamp calculations. This works well since nearly all operations are additions. The previous _TOD_Tickle_ticks() implementation had a serious performance regression in case of 64-bit timestamps due to the usage of two 64-bit divisions which are quite expensive on some architectures. A new field seconds_trigger in TOD_Control is introduced to trigger the _Watchdog_Tickle_seconds() in _TOD_Tickle_ticks(). This avoids the 64-bit divisions completely and only 32-bit additions are used.
* score: New structure TOD_ControlSebastian Huber2012-06-146-32/+35
| | | | | Group the global TOD variables (_TOD_Now, _TOD_Uptime, and _TOD_Is_set) in a structure to reduce address loads in _TOD_Tickle_ticks().
* v850 - byte swap instructions not available on all multilibsJoel Sherrill2012-06-122-7/+33
|
* v850 port: Initial addition with BSP for simulator in GDBJoel Sherrill2012-06-1110-0/+1925
| | | | | | | | | | | | | | | | | | Port + v850 does not have appear to have any optimized bit scan instructions + v850 does have single instructions for wap u16 and u32 + Code path optimization preferences set + Add BSP variants for each GCC CPU model flag and a README - v850e1 variant does not work (fails during BSP initialization) BSP for GDB v850 Simulator + linkcmds matches defaults in GDB simulator with RTEMS mods + crt1.c added from v850 newlib port for __main() + BSP exits cleanly + printk and console I/O work + uses clock tick from IDLE task + Tests not requiring real clock ISR work Documentation + CPU Supplment chapter for v850 added
* powerpc/cpu.h: Define CPU_SIMPLE_VECTORED_INTERRUPTS and remove ↵Joel Sherrill2012-06-111-2/+14
| | | | _CPU_ISR_Initialize
* mips/cpu.h: Define CPU_SIMPLE_VECTORED_INTERRUPTS and remove _CPU_ISR_InitializeJoel Sherrill2012-06-111-7/+2
|
* i386/cpu.h: Define CPU_SIMPLE_VECTORED_INTERRUPTS and remove _CPU_ISR_InitializeJoel Sherrill2012-06-111-2/+14
|
* arm/cpu.h: Define CPU_SIMPLE_VECTORED_INTERRUPTS and remove _CPU_ISR_InitializeJoel Sherrill2012-06-111-2/+5
|
* isr.c: Do not call _CPU_Initialize_vectors() if PIC Interrupt ModelJoel Sherrill2012-06-111-5/+8
|
* threadhandler.c: Fix spelling of __main() in prototypeJoel Sherrill2012-06-111-5/+8
|
* powerpc: Simplify context switchSebastian Huber2012-06-042-146/+134
| | | | | | | | | | | | | | | | | | | PowerPC cores with the SPE (Signal Processing Extension) have 64-bit general-purpose registers. The SPE context switch code has been merged with the standard context switch code. The context switch may use cache operations to increase the performance. It will be ensured that the context is 32-byte aligned (PPC_DEFAULT_CACHE_LINE_SIZE). This increases the overall memory size of the context area in the thread control block slightly. The general-purpose registers GPR2 and GPR13 are no longer part of the context. The BSP must initialize these registers during startup (usually initialized by the __eabi() function). The new BSP option BSP_USE_DATA_CACHE_BLOCK_TOUCH can be used to enable the dcbt instruction in the context switch. The new BSP option BSP_USE_SYNC_IN_CONTEXT_SWITCH can be used to enable sync and isync instructions in the context switch. This should be not necessary in most cases.
* Fix C files which had two semi-colons at EOLJoel Sherrill2012-05-312-2/+2
|
* PR2065: RBTree: Insert function (protected) does not enable interruptsGedare Bloom2012-05-131-2/+4
| | | | | Save the return value from the unprotected version and return it after enabling interrupts to their previous level.
* Remove CVS Id Strings (manual edits after script)Joel Sherrill2012-05-112-6/+0
| | | | | | These modifications were required by hand after running the script. In some cases, the file names did not match patterns. In others, the format of the file did not match any common patterns.
* Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill2012-05-11655-1183/+0
| | | | | | | | | | | | Script does what is expected and tries to do it as smartly as possible. + remove occurrences of two blank comment lines next to each other after Id string line removed. + remove entire comment blocks which only exited to contain CVS Ids + If the processing left a blank line at the top of a file, it was removed.
* Score ISR - Minimize Capabilities When Not Simple VectoredJoel Sherrill2012-05-093-7/+15
| | | | | | | | | | | In particular CPU_INTERRUPT_NUMBER_OF_VECTORS and CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER are only used on Simple Vectored Architectures, so do not depend on them being defined. This disables as much as possible that is specific to the Simple Vectored Model and not expected to be used on architectures which use the Programmable Interrupt Controller model for interrupt handler vectoring.
* Score Semaphore - Need Semaphore Seize Body When Multiprocessing is EnabledJoel Sherrill2012-05-091-1/+1
| | | | mptests did not link without this modification.
* rbtree: API changes. Remove rbtree control node from RBTree_Next.Gedare Bloom2012-05-085-22/+12
| | | | | | | | | | | | The implementation of RBTree_Next was using an awkward construction to detect and avoid accessing the false root of the red-black tree. To deal with the false root, RBTree_Next was comparing node parents with the control node. Instead the false root can be detected by checking if the grandparent of a node exists; the grandparent of the tree's true root is NULL by definition so the root of the tree is found while walking up the tree by checking for the non-existence of a grandparent. This change propagates into the predecessor/successor and iterate functions.
* PR2061: RBTree: updating min and max on insert with duplicatesGedare Bloom2012-05-081-1/+6
| | | | | | | When inserting to a red-black tree with duplicates the min and max pointers are not updated properly. We need to check the key of the min/max node against the insert node since the insert point could be the child of a node with an identical key to the min/max node.
* PR2060: RBTree: updating min and max on extract pathGedare Bloom2012-05-081-17/+9
| | | | | | During node extraction from a red-black tree the min and max values are updated incorrectly. We need to use the successor/predecessor functions to find the next/previous node when we remove the min/max from the tree.
* score/rbtree: eliminate unused function _RBTree_Peek.Gedare Bloom2012-05-083-68/+1
|
* rbtree: API ChangesGedare Bloom2012-05-081-1/+1
| | | | | Make default for rtems_rbtree functions be unprotected (preemption enabled) unless an unprotected variant e.g. rtems_rbtree_xxx_unprotected is available.
* score/rbtree: replace _RBTree_Peek_unprotected with _RBTree_First.Gedare Bloom2012-05-082-23/+3
|
* score/scheduling: Use RBTree_First instead of Peek in EDF scheduler.Gedare Bloom2012-05-081-6/+3
|
* Revert: Remove CVS IdsJoel Sherrill2012-05-0718-0/+71
| | | | | See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html for details.
* Remove CVS-Ids.Ralf Corsépius2012-05-0418-71/+0
|
* Simple SMP Scheduler - Fix typo which likely broke schedulingJoel Sherrill2012-04-241-8/+31
|
* score: Remove _Stack_Adjust_size()Sebastian Huber2012-04-242-30/+0
| | | | | | | | | | The increase of the stack size by CPU_STACK_ALIGNMENT in _Thread_Stack_Allocate() is disadvantageous. This may lead to a huge over allocation for specialized stack allocators. The CPU_STACK_ALIGNMENT is at most 16 on all current RTEMS CPU ports. The mimimum stack size ensured by _Stack_Ensure_minimum() must be considerable larger than this value, otherwise stack overflows will likely occur. Thus the _Stack_Adjust_size() is also superfluous.
* score: DocumentationSebastian Huber2012-04-201-0/+3
|
* no_cpu: replace no_cpu_isr with rtems_isrGedare Bloom2012-04-161-6/+0
|
* lm32: replace lm32_isr with rtems_isrGedare Bloom2012-04-161-6/+0
|
* m68k: replace m68k_isr with rtems_isrGedare Bloom2012-04-161-2/+0
|
* score: New macros and functionsSebastian Huber2012-04-112-4/+23
| | | | | | | | | | New macros o _Objects_Maximum_per_allocation(), o rtems_resource_is_unlimited(), and o rtems_resource_maximum_per_allocation(). New function o _Objects_Is_unlimited().
* nios2: New functionsSebastian Huber2012-04-112-0/+49
| | | | | | Add o _Nios2_MPU_Get_region_descriptor(), and o _Nios2_MPU_Set_region_registers().
* nios2: API changeSebastian Huber2012-04-113-4/+4
|
* rbtree: New function _RBTree_Iterate_unprotected()Sebastian Huber2012-04-113-1/+80
|
* rbtree: PR1995: API changeSebastian Huber2012-04-114-27/+156
| | | | | | | | | | | | | | | | New functions o _RBTree_Next_unprotected(), o _RBTree_Next(), o _RBTree_Successor_unprotected(), o _RBTree_Predecessor_unprotected(), o rtems_rbtree_successor_unprotected(), and o rtems_rbtree_predecessor_unprotected(). Change prototype of o _RBTree_Successor(), o _RBTree_Predecessor(), o rtems_rbtree_successor(), and o rtems_rbtree_predecessor().
* arm: New functionSebastian Huber2012-04-074-4/+46
| | | | | Add and use function _ARMV7M_Set_exception_priority_and_handler(). Use ARMV7M_EXCEPTION_PRIORITY_LOWEST define.
* PR 1993 - Convert MIPS to PIC IRQ modelJennifer Averett2012-04-043-77/+34
|
* Add Virtex4 and Virtex5 BSPsRic Claus2012-03-301-1/+78
| | | | | | | | | | | | | | | | | This commit covers at least PR2020, 2022, and 2023. This patch adds all of the code for both BSPs, modifications to libcpu/powerpc for the ppc440, and some updates to the BSPs from follow up review and testing. These BSPs should be good baselines for future development. The configurations used by Ric are custom and have a non-standard NIC. They also do not have a UART. Thus the current console driver just prints to a RAM buffer. The NIC and UART support are left for future work. When the UART support is added, moving the existing "to RAM" console driver to a shared location is likely desirable because boards with no debug UART port are commonly deployed. This would let printk() go to RAM.
* NIOS2: Add MPU support functionsSebastian Huber2012-03-304-21/+165
|
* NIOS2: Fix outermost interrupt checkSebastian Huber2012-03-301-1/+4
| | | | | This fix is critical. The previous implementation leads to system corruption.
* score/rbtree: Add const qualifierSebastian Huber2012-03-303-32/+32
|
* score/rbtree: C++ compatibilitySebastian Huber2012-03-301-2/+3
|
* score/scheduleredf: Simplify and fix warningSebastian Huber2012-03-301-3/+3
|