diff options
Diffstat (limited to 'doc/supplements/arm/BSP_TIMES')
-rw-r--r-- | doc/supplements/arm/BSP_TIMES | 247 |
1 files changed, 247 insertions, 0 deletions
diff --git a/doc/supplements/arm/BSP_TIMES b/doc/supplements/arm/BSP_TIMES new file mode 100644 index 0000000000..296602a23f --- /dev/null +++ b/doc/supplements/arm/BSP_TIMES @@ -0,0 +1,247 @@ +# +# CPU MODEL/BSP Timing and Size Information +# +# $Id$ +# + +# +# CPU Model Information +# +RTEMS_BSP generic-arm9dtmi +RTEMS_CPU_MODEL arm9dtmi +# +# Interrupt Latency +# +# NOTE: In general, the text says it is hand-calculated to be +# RTEMS_MAXIMUM_DISABLE_PERIOD at RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ +# Mhz and this was last calculated for Release +# RTEMS_VERSION_FOR_MAXIMUM_DISABLE_PERIOD. +# +RTEMS_MAXIMUM_DISABLE_PERIOD TBD +RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ 100 +RTEMS_RELEASE_FOR_MAXIMUM_DISABLE_PERIOD ss-20020301 +# +# Context Switch Times +# +RTEMS_NO_FP_CONTEXTS 11 +RTEMS_RESTORE_1ST_FP_TASK NA +RTEMS_SAVE_INIT_RESTORE_INIT NA +RTEMS_SAVE_IDLE_RESTORE_INIT NA +RTEMS_SAVE_IDLE_RESTORE_IDLE NA +# +# Task Manager Times +# +RTEMS_TASK_CREATE_ONLY 43 +RTEMS_TASK_IDENT_ONLY 85 +RTEMS_TASK_START_ONLY 19 +RTEMS_TASK_RESTART_CALLING_TASK 26 +RTEMS_TASK_RESTART_SUSPENDED_RETURNS_TO_CALLER 23 +RTEMS_TASK_RESTART_BLOCKED_RETURNS_TO_CALLER 28 +RTEMS_TASK_RESTART_READY_RETURNS_TO_CALLER 24 +RTEMS_TASK_RESTART_SUSPENDED_PREEMPTS_CALLER 35 +RTEMS_TASK_RESTART_BLOCKED_PREEMPTS_CALLER 64 +RTEMS_TASK_RESTART_READY_PREEMPTS_CALLER 64 +RTEMS_TASK_DELETE_CALLING_TASK 55 +RTEMS_TASK_DELETE_SUSPENDED_TASK 42 +RTEMS_TASK_DELETE_BLOCKED_TASK 43 +RTEMS_TASK_DELETE_READY_TASK 43 +RTEMS_TASK_SUSPEND_CALLING_TASK 21 +RTEMS_TASK_SUSPEND_RETURNS_TO_CALLER 9 +RTEMS_TASK_RESUME_TASK_READIED_RETURNS_TO_CALLER 10 +RTEMS_TASK_RESUME_TASK_READIED_PREEMPTS_CALLER 18 +RTEMS_TASK_SET_PRIORITY_OBTAIN_CURRENT_PRIORITY 7 +RTEMS_TASK_SET_PRIORITY_RETURNS_TO_CALLER 15 +RTEMS_TASK_SET_PRIORITY_PREEMPTS_CALLER 29 +RTEMS_TASK_MODE_OBTAIN_CURRENT_MODE 4 +RTEMS_TASK_MODE_NO_RESCHEDULE 4 +RTEMS_TASK_MODE_RESCHEDULE_RETURNS_TO_CALLER 13 +RTEMS_TASK_MODE_RESCHEDULE_PREEMPTS_CALLER 30 +RTEMS_TASK_GET_NOTE_ONLY 8 +RTEMS_TASK_SET_NOTE_ONLY 7 +RTEMS_TASK_WAKE_AFTER_YIELD_RETURNS_TO_CALLER 5 +RTEMS_TASK_WAKE_AFTER_YIELD_PREEMPTS_CALLER 17 +RTEMS_TASK_WAKE_WHEN_ONLY 33 +# +# Interrupt Manager +# +RTEMS_INTR_ENTRY_RETURNS_TO_NESTED unavailable +RTEMS_INTR_ENTRY_RETURNS_TO_INTERRUPTED_TASK unavailable +RTEMS_INTR_ENTRY_RETURNS_TO_PREEMPTING_TASK unavailable +RTEMS_INTR_EXIT_RETURNS_TO_NESTED unavailable +RTEMS_INTR_EXIT_RETURNS_TO_INTERRUPTED_TASK unavailable +RTEMS_INTR_EXIT_RETURNS_TO_PREEMPTING_TASK unavailable +# +# Clock Manager +# +RTEMS_CLOCK_SET_ONLY 21 +RTEMS_CLOCK_GET_ONLY 1 +RTEMS_CLOCK_TICK_ONLY 10 +# +# Timer Manager +# +RTEMS_TIMER_CREATE_ONLY 8 +RTEMS_TIMER_IDENT_ONLY 83 +RTEMS_TIMER_DELETE_INACTIVE 11 +RTEMS_TIMER_DELETE_ACTIVE 12 +RTEMS_TIMER_FIRE_AFTER_INACTIVE 14 +RTEMS_TIMER_FIRE_AFTER_ACTIVE 15 +RTEMS_TIMER_FIRE_WHEN_INACTIVE 21 +RTEMS_TIMER_FIRE_WHEN_ACTIVE 21 +RTEMS_TIMER_RESET_INACTIVE 14 +RTEMS_TIMER_RESET_ACTIVE 15 +RTEMS_TIMER_CANCEL_INACTIVE 7 +RTEMS_TIMER_CANCEL_ACTIVE 9 +# +# Semaphore Manager +# +RTEMS_SEMAPHORE_CREATE_ONLY 27 +RTEMS_SEMAPHORE_IDENT_ONLY 97 +RTEMS_SEMAPHORE_DELETE_ONLY 24 +RTEMS_SEMAPHORE_OBTAIN_AVAILABLE 5 +RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_NO_WAIT 5 +RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_CALLER_BLOCKS 28 +RTEMS_SEMAPHORE_RELEASE_NO_WAITING_TASKS 9 +RTEMS_SEMAPHORE_RELEASE_TASK_READIED_RETURNS_TO_CALLER 14 +RTEMS_SEMAPHORE_RELEASE_TASK_READIED_PREEMPTS_CALLER 22 +# +# Message Manager +# +RTEMS_MESSAGE_QUEUE_CREATE_ONLY 54 +RTEMS_MESSAGE_QUEUE_IDENT_ONLY 83 +RTEMS_MESSAGE_QUEUE_DELETE_ONLY 32 +RTEMS_MESSAGE_QUEUE_SEND_NO_WAITING_TASKS 14 +RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_RETURNS_TO_CALLER 16 +RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_PREEMPTS_CALLER 25 +RTEMS_MESSAGE_QUEUE_URGENT_NO_WAITING_TASKS 14 +RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_RETURNS_TO_CALLER 16 +RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_PREEMPTS_CALLER 25 +RTEMS_MESSAGE_QUEUE_BROADCAST_NO_WAITING_TASKS 11 +RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_RETURNS_TO_CALLER 35 +RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_PREEMPTS_CALLER 42 +RTEMS_MESSAGE_QUEUE_RECEIVE_AVAILABLE 15 +RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_NO_WAIT 10 +RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 29 +RTEMS_MESSAGE_QUEUE_FLUSH_NO_MESSAGES_FLUSHED 8 +RTEMS_MESSAGE_QUEUE_FLUSH_MESSAGES_FLUSHED 9 +# +# Event Manager +# +RTEMS_EVENT_SEND_NO_TASK_READIED 7 +RTEMS_EVENT_SEND_TASK_READIED_RETURNS_TO_CALLER 13 +RTEMS_EVENT_SEND_TASK_READIED_PREEMPTS_CALLER 22 +RTEMS_EVENT_RECEIVE_OBTAIN_CURRENT_EVENTS 1 +RTEMS_EVENT_RECEIVE_AVAILABLE 14 +RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_NO_WAIT 7 +RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 24 +# +# Signal Manager +# +RTEMS_SIGNAL_CATCH_ONLY 7 +RTEMS_SIGNAL_SEND_RETURNS_TO_CALLER 16 +RTEMS_SIGNAL_SEND_SIGNAL_TO_SELF 29 +RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_CALLING_TASK 22 +RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_PREEMPTING_TASK 25 +# +# Partition Manager +# +RTEMS_PARTITION_CREATE_ONLY 27 +RTEMS_PARTITION_IDENT_ONLY 83 +RTEMS_PARTITION_DELETE_ONLY 18 +RTEMS_PARTITION_GET_BUFFER_AVAILABLE 14 +RTEMS_PARTITION_GET_BUFFER_NOT_AVAILABLE 10 +RTEMS_PARTITION_RETURN_BUFFER_ONLY 17 +# +# Region Manager +# +RTEMS_REGION_CREATE_ONLY 29 +RTEMS_REGION_IDENT_ONLY 84 +RTEMS_REGION_DELETE_ONLY 17 +RTEMS_REGION_GET_SEGMENT_AVAILABLE 14 +RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_NO_WAIT 18 +RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_CALLER_BLOCKS 56 +RTEMS_REGION_RETURN_SEGMENT_NO_WAITING_TASKS 15 +RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_RETURNS_TO_CALLER 40 +RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_PREEMPTS_CALLER 58 +# +# Dual-Ported Memory Manager +# +RTEMS_PORT_CREATE_ONLY 18 +RTEMS_PORT_IDENT_ONLY 83 +RTEMS_PORT_DELETE_ONLY 19 +RTEMS_PORT_INTERNAL_TO_EXTERNAL_ONLY 6 +RTEMS_PORT_EXTERNAL_TO_INTERNAL_ONLY 6 +# +# IO Manager +# +RTEMS_IO_INITIALIZE_ONLY 2 +RTEMS_IO_OPEN_ONLY 1 +RTEMS_IO_CLOSE_ONLY 1 +RTEMS_IO_READ_ONLY 1 +RTEMS_IO_WRITE_ONLY 1 +RTEMS_IO_CONTROL_ONLY 1 +# +# Rate Monotonic Manager +# +RTEMS_RATE_MONOTONIC_CREATE_ONLY 18 +RTEMS_RATE_MONOTONIC_IDENT_ONLY 83 +RTEMS_RATE_MONOTONIC_CANCEL_ONLY 18 +RTEMS_RATE_MONOTONIC_DELETE_ACTIVE 23 +RTEMS_RATE_MONOTONIC_DELETE_INACTIVE 21 +RTEMS_RATE_MONOTONIC_PERIOD_INITIATE_PERIOD_RETURNS_TO_CALLER 25 +RTEMS_RATE_MONOTONIC_PERIOD_CONCLUDE_PERIOD_CALLER_BLOCKS 20 +RTEMS_RATE_MONOTONIC_PERIOD_OBTAIN_STATUS 13 +# +# Size Information +# +# +# xxx alloted for numbers +# +RTEMS_DATA_SPACE na +RTEMS_MINIMUM_CONFIGURATION na +RTEMS_MAXIMUM_CONFIGURATION na +# x,xxx alloted for numbers +RTEMS_CORE_CODE_SIZE na +RTEMS_INITIALIZATION_CODE_SIZE na +RTEMS_TASK_CODE_SIZE na +RTEMS_INTERRUPT_CODE_SIZE na +RTEMS_CLOCK_CODE_SIZE na +RTEMS_TIMER_CODE_SIZE na +RTEMS_SEMAPHORE_CODE_SIZE na +RTEMS_MESSAGE_CODE_SIZE na +RTEMS_EVENT_CODE_SIZE na +RTEMS_SIGNAL_CODE_SIZE na +RTEMS_PARTITION_CODE_SIZE na +RTEMS_REGION_CODE_SIZE na +RTEMS_DPMEM_CODE_SIZE na +RTEMS_IO_CODE_SIZE na +RTEMS_FATAL_ERROR_CODE_SIZE na +RTEMS_RATE_MONOTONIC_CODE_SIZE na +RTEMS_MULTIPROCESSING_CODE_SIZE na +# xxx alloted for numbers +RTEMS_TIMER_CODE_OPTSIZE na +RTEMS_SEMAPHORE_CODE_OPTSIZE na +RTEMS_MESSAGE_CODE_OPTSIZE na +RTEMS_EVENT_CODE_OPTSIZE na +RTEMS_SIGNAL_CODE_OPTSIZE na +RTEMS_PARTITION_CODE_OPTSIZE na +RTEMS_REGION_CODE_OPTSIZE na +RTEMS_DPMEM_CODE_OPTSIZE na +RTEMS_IO_CODE_OPTSIZE na +RTEMS_RATE_MONOTONIC_CODE_OPTSIZE na +RTEMS_MULTIPROCESSING_CODE_OPTSIZE na +# xxx alloted for numbers +RTEMS_BYTES_PER_TASK na +RTEMS_BYTES_PER_TIMER na +RTEMS_BYTES_PER_SEMAPHORE na +RTEMS_BYTES_PER_MESSAGE_QUEUE na +RTEMS_BYTES_PER_REGION na +RTEMS_BYTES_PER_PARTITION na +RTEMS_BYTES_PER_PORT na +RTEMS_BYTES_PER_PERIOD na +RTEMS_BYTES_PER_EXTENSION na +RTEMS_BYTES_PER_FP_TASK na +RTEMS_BYTES_PER_NODE na +RTEMS_BYTES_PER_GLOBAL_OBJECT na +RTEMS_BYTES_PER_PROXY na +# x,xxx alloted for numbers +RTEMS_BYTES_OF_FIXED_SYSTEM_REQUIREMENTS na |