summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-06-12smp: Add and use _Per_CPU_Lock_acquire()Sebastian Huber1-0/+6
Add and use _Per_CPU_Lock_release().
2013-06-12score: Avoid cyclic include dependencySebastian Huber1-1/+2
2013-06-12score: Add missing includeSebastian Huber1-0/+1
2013-06-12score: Always provide <rtems/score/smplock.h>Sebastian Huber2-3/+7
2013-06-07score: Move thread dispatch content to new fileSebastian Huber2-105/+264
Move thread dispatch declarations and inline functions to new header <rtems/score/threaddispatch.h> to make it independent of the Thread_Control structure. This avoids a cyclic dependency in case thread dispatch functions are used for the object implementation.
2013-06-07score: Simplify _CORE_mutex_Seize_interrupt_try*Sebastian Huber1-8/+8
2013-05-31smp: New SMP lock APISebastian Huber3-102/+83
Move the SMP lock implementation to the CPU port. An optimal SMP lock implementation is highly architecture dependent. For example the memory models may be fundamentally different. The new SMP lock API has a flaw. It does not provide the ability to use a local context for acquire and release pairs. Such a context is necessary to implement for example the Mellor-Crummey and Scott (MCS) locks. The SMP lock is currently used in _Thread_Disable_dispatch() and _Thread_Enable_dispatch() and makes them to a giant lock acquire and release. Since these functions do not pass state information via a local context there is currently no use case for such a feature.
2013-05-31score: Mark as no returnSebastian Huber1-5/+7
Mark rtems_smp_secondary_cpu_initialize() as no return.
2013-05-31score: Remove idle field of Per_CPU_ControlSebastian Huber1-5/+0
This field is unused except for special case simulator clock drivers. In these places use an alternative. Add and use _Thread_Set_global_exit_status() and _Thread_Get_global_exit_status().
2013-05-29smp: Simplify SMP initialization sequenceSebastian Huber3-30/+82
Delete bsp_smp_wait_for(). Other parts of the system work without timeout, e.g. the spinlocks. Using a timeout here does not make the system more robust. Delete bsp_smp_cpu_state and replace it with Per_CPU_State. The Per_CPU_State follows the Score naming conventions. Add _Per_CPU_Change_state() and _Per_CPU_Wait_for_state() functions to change and observe states. Use Per_CPU_State in Per_CPU_Control instead of the anonymous integer. Add _CPU_Processor_event_broadcast() and _CPU_Processor_event_receive() functions provided by the CPU port. Use these functions in _Per_CPU_Change_state() and _Per_CPU_Wait_for_state(). Add prototype for _SMP_Send_message(). Delete RTEMS_BSP_SMP_FIRST_TASK message. The first context switch is now performed in rtems_smp_secondary_cpu_initialize(). Issuing the first context switch in the context of the inter-processor interrupt is not possible on systems with a modern interrupt controller. Such an interrupt controler usually requires a handshake protocol with interrupt acknowledge and end of interrupt signals. A direct context switch in an interrupt handler circumvents the interrupt processing epilogue and may leave the system in an inconsistent state. Release lock in rtems_smp_process_interrupt() even if no message was delivered. This prevents deadlock of the system. Simplify and format _SMP_Send_message(), _SMP_Request_other_cores_to_perform_first_context_switch(), _SMP_Request_other_cores_to_dispatch() and _SMP_Request_other_cores_to_shutdown().
2013-05-29smp: Delete bsp_smp_secondary_cpu_initialize()Sebastian Huber1-18/+19
Do not call bsp_smp_secondary_cpu_initialize() in rtems_smp_secondary_cpu_initialize(). This allows more flexibilty in the BSP low-level code. Specify context requirements for a call to rtems_smp_secondary_cpu_initialize().
2013-05-29smp: Delete rtems_smp_send_message()Sebastian Huber1-15/+0
2013-05-29smp: Delete rtems_smp_initialize_per_cpu()Sebastian Huber1-10/+0
2013-05-29smp: Simplify main CPU initializationSebastian Huber1-10/+13
Call _SMP_Handler_initialize() later and move bsp_smp_initialize() into _SMP_Handler_initialize(). Change bsp_smp_initialize() prototype to match integer types of calling context.
2013-05-29smp: Make CPU_ALLOCATE_INTERRUPT_STACK optionalSebastian Huber1-4/+0
2013-05-29smp: Include missing headerSebastian Huber1-0/+2
2013-05-16smp: Add maximum_processors field to configSebastian Huber1-8/+0
Delete rtems_configuration_get_smp_maximum_processors(). Delete rtems_configuration_smp_maximum_processors variable. Add maximum_processors field to rtems_configuration_table if RTEMS_SMP is defined. Add rtems_configuration_get_maximum_processors().
2013-05-01Implement a generic atomic ops for all UP mode architectures with ↵WeiY1-0/+274
disable/enable-IRQ function simulated.
2013-02-14Include <stdint.h>Ralf Corsépius1-0/+2
2013-02-12score: Add and use rtems_assert_contextSebastian Huber1-1/+3
2013-02-07score: atomic support for RTEMS. Generic atomic operations API definition.WeiY2-0/+337
2013-01-10cpukit: Fix many Doxygen warningsJoel Sherrill9-26/+33
2013-01-10cpukit: Use Consistent Beginning of Doxygen Group NotationJoel Sherrill6-17/+9
This is the result of a sed script which converts all uses of @{ into a consistent form.
2013-01-10cpukit: Add EOL on files missing EOL at EOFJoel Sherrill38-38/+38
2013-01-10cpukit: Doxygen group fixes and many warnings addressedJoel Sherrill12-45/+31
The output of the modules.html is much improved. Most filesystem and POSIX API related groups are properly nested. Some formatting issues were addressed as were multiple inconsistencies.
2013-01-04score: Doxygen Clean Up Task #3Mathew Kallada15-157/+218
2013-01-02score: Add const qualifierSebastian Huber1-4/+4
2013-01-02score: Do not inline _RBTree_Find_unprotected()Sebastian Huber1-1/+15
This function is to big to inline. It leads also to test case explosion.
2012-12-29score: Doxygen Clean Up Task #1Mathew Kallada20-169/+244
2012-12-28score: Doxygen Clean Up Task #2Mathew Kallada19-258/+324
2012-12-28Header File Doxygen Enhancement Task #1Alex Ivanov1-4/+6
2012-12-28Header File Doxygen Enhancement Task #7Mathew Kallada1-8/+10
2012-12-21score: Add _Objects_Active_count()Sebastian Huber1-0/+11
2012-12-21score: Add rtems_chain_node_count_unprotected()Sebastian Huber1-0/+12
2012-12-14Fix spellingSebastian Huber1-1/+1
2012-12-12misc: Header File Doxygen Enhancement Task #3Mathew Kallada1-1/+3
http://www.google-melange.com/gci/task/view/google/gci2012/8006220
2012-12-07sapi misc: Clean up Doxygen GCI task #1Christopher Kerl1-3/+5
http://www.google-melange.com/gci/task/view/google/gci2012/8011204
2012-12-05score: Add API extensions post switch listSebastian Huber1-15/+44
Move post switch hook from API_extensions_Control to new API_extensions_Post_switch_control. Rename _API_extensions_Run_postswitch() in _API_extensions_Run_post_switch(). Add _API_extensions_Post_switch_list and _API_extensions_Add_post_switch().
2012-12-01score misc: Score misc: Clean up Doxygen #11 (GCI 2012)Daniel Georgiev8-0/+25
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/8013204
2012-12-01score misc: Score misc: Clean up Doxygen #10 (GCI 2012)Christopher Kerl11-48/+92
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7983216
2012-11-30score misc: Score misc: Clean up Doxygen #9 (GCI 2012)Alex Ivanov9-56/+71
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. https://google-melange.appspot.com/gci/task/view/google/gci2012/7977211
2012-11-29Score misc: Clean up Doxygen #8 (GCI 2012)Mathew Kallada4-11/+25
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7970221
2012-11-29score misc: Score misc: Clean up Doxygen #7 (GCI 2012)Alex Ivanov7-4/+47
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. https://google-melange.appspot.com/gci/task/view/google/gci2012/7986214
2012-11-29score misc: Score misc: Clean up Doxygen #6 (GCI 2012)Christopher Kerl9-25/+57
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7976215
2012-11-29score misc: Score misc: Clean up Doxygen #5Alex Ivanov9-6/+66
2012-11-29score: DocumentationSebastian Huber1-12/+7
2012-11-28Score misc: Clean up Doxygen #4 (GCI 2012)Alexandre Devienne9-14/+100
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7985215
2012-11-28score misc: Clean up Doxygen #3 (GCI 2012)Alex Ivanov7-1/+34
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7982215
2012-11-28score misc: Clean up Doxygen #2 (GCI 2012)Christopher Kerl9-14/+51
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. http://www.google-melange.com/gci/task/view/google/gci2012/7986213
2012-11-28score misc: Clean up Doxygen (GCI 2012)Alex Ivanov8-26/+66
This patch is a task from GCI 2012 which improves the Doxygen comments in the RTEMS source. https://google-melange.appspot.com/gci/task/view/google/gci2012/7978208