RTEMS 6.1-rc2
|
This group contains the implementation to support SMP systems. More...
Files | |
file | smp.h |
This header file provides interfaces of the SMP Support which are used by the implementation and the Application Configuration. | |
file | smpimpl.h |
This header file provides interfaces of the SMP Support which are only used by the implementation. | |
file | smp.c |
This source file contains the definition of _SMP_Online_processors and _SMP_Processor_maximum and the implementation of _SMP_Handler_initialize(), _SMP_Process_message(), _SMP_Request_shutdown(), _SMP_Request_start_multitasking(), _SMP_Send_message(), _SMP_Should_start_processor(), _SMP_Start_multitasking_on_secondary_processor(), and _SMP_Try_to_process_message(). | |
file | smpbroadcastaction.c |
This source file contains the implementation of _SMP_Broadcast_action(). | |
file | smpmulticastaction.c |
This source file contains the implementation of _SMP_Multicast_action(). | |
file | smpothercastaction.c |
This source file contains the implementation of _SMP_Othercast_action(). | |
file | smpsynchronize.c |
This source file contains the implementation of _SMP_Synchronize(). | |
file | smpunicastaction.c |
This source file contains the implementation of _SMP_Unicast_action(). | |
Macros | |
#define | _SMP_Processor_configured_maximum 1 |
The configured processor maximum. | |
#define | _SMP_Get_processor_maximum() UINT32_C(1) |
#define | _SMP_Get_current_processor() UINT32_C(0) |
#define | SMP_MESSAGE_SHUTDOWN 0x1UL |
SMP message to request a processor shutdown. | |
#define | SMP_MESSAGE_PERFORM_JOBS 0x2UL |
SMP message to perform per-processor jobs. | |
#define | SMP_MESSAGE_FORCE_PROCESSING 0x4UL |
SMP message to force the message processing in _SMP_Try_to_process_message(). | |
#define | _SMP_Handler_initialize() do { } while ( 0 ) |
Initializes SMP Handler. | |
#define | _SMP_Request_start_multitasking() do { } while ( 0 ) |
Requests a multitasking start on all configured and available processors. | |
#define | _SMP_Request_shutdown() do { } while ( 0 ) |
Requests a shutdown of all processors. | |
Enumerations | |
enum | SMP_Fatal_code { SMP_FATAL_BOOT_PROCESSOR_NOT_ASSIGNED_TO_SCHEDULER , SMP_FATAL_MANDATORY_PROCESSOR_NOT_PRESENT , SMP_FATAL_MULTITASKING_START_ON_INVALID_PROCESSOR , SMP_FATAL_MULTITASKING_START_ON_UNASSIGNED_PROCESSOR , SMP_FATAL_SHUTDOWN , SMP_FATAL_SHUTDOWN_RESPONSE , SMP_FATAL_START_OF_MANDATORY_PROCESSOR_FAILED , SMP_FATAL_SCHEDULER_PIN_OR_UNPIN_NOT_SUPPORTED , SMP_FATAL_WRONG_CPU_STATE_TO_PERFORM_JOBS , SMP_FATAL_SCHEDULER_REQUIRES_EXACTLY_ONE_PROCESSOR , SMP_FATAL_MULTITASKING_START_ON_NOT_ONLINE_PROCESSOR } |
SMP fatal codes. | |
This group contains the implementation to support SMP systems.
This defines the interface of the SuperCore SMP support.
#define _SMP_Handler_initialize | ( | void | ) | do { } while ( 0 ) |
Initializes SMP Handler.
This method initialize the SMP Handler.
#define _SMP_Processor_configured_maximum 1 |
The configured processor maximum.
In SMP configurations, this constant is defined by the application configuration via <rtems/confdefs.h>, otherwise it is a compile-time constant with the value one.
#define _SMP_Request_shutdown | ( | void | ) | do { } while ( 0 ) |
Requests a shutdown of all processors.
This function is a part of the system termination procedure.
#define SMP_MESSAGE_FORCE_PROCESSING 0x4UL |
SMP message to force the message processing in _SMP_Try_to_process_message().
This message bit is never sent to a processor. It is only used to force the message processing in _SMP_Try_to_process_message(). Any non-zero value would do it.
#define SMP_MESSAGE_PERFORM_JOBS 0x2UL |
SMP message to perform per-processor jobs.
#define SMP_MESSAGE_SHUTDOWN 0x1UL |
SMP message to request a processor shutdown.