RTEMS: SMP Support

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Files | Macros | Enumerations | Functions
SMP Support
Internal » SuperCore

SMP Support. More...

## Files
file | smp.h
| SuperCore SMP Support API.

## 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_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 codes.

## Functions
RTEMS_INLINE_ROUTINE const Processor_mask * | _SMP_Get_online_processors (void)
| Gets all online processors.
RTEMS_INLINE_ROUTINE const bool | _SMP_Need_inter_processor_interrupts (void)
| Indicate if inter-processor interrupts are needed.

## Detailed Description

SMP Support.

This defines the interface of the SuperCore SMP support.

This defines the interface of the SuperCore SMP support.

## Macro Definition Documentation

## ◆ _SMP_Handler_initialize

#define _SMP_Handler_initialize | ( |  | void | ) | do { } while ( 0 )

Initializes SMP Handler.

This method initialize the SMP Handler.

## ◆ _SMP_Processor_configured_maximum

#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.

## ◆ _SMP_Request_shutdown

#define _SMP_Request_shutdown | ( |  | void | ) | do { } while ( 0 )

Requests a shutdown of all processors.

This function is a part of the system termination procedure.

See also
  _Terminate().

## ◆ SMP_MESSAGE_PERFORM_JOBS

#define SMP_MESSAGE_PERFORM_JOBS 0x2UL

SMP message to perform per-processor jobs.

See also
  _SMP_Send_message().

## ◆ SMP_MESSAGE_SHUTDOWN

#define SMP_MESSAGE_SHUTDOWN 0x1UL

SMP message to request a processor shutdown.

See also
  _SMP_Send_message().

## Function Documentation

## ◆ _SMP_Get_online_processors()

RTEMS_INLINE_ROUTINE const Processor_mask * _SMP_Get_online_processors | ( | void |  | ) |

Gets all online processors.

Returns
  The processor mask with all online processors.

## ◆ _SMP_Need_inter_processor_interrupts()

RTEMS_INLINE_ROUTINE const bool _SMP_Need_inter_processor_interrupts | ( | void |  | ) |

Indicate if inter-processor interrupts are needed.

Returns
  True if inter-processor interrupts are needed for the correct system operation, otherwise false.