Description: Motorola MCF5329EVB Zoom + (LogicPD) ============ CPU: MCF5329, 240MHz CORESRAM: 32K FLASH: 2M DRAM: 32M This is a Motorola Zoom evaluation board that uses the MCF5329 Coldfire CPU on a logicPD card. This board is running at 240MHz with DRAM clocking at 80MHz. The bsp is configured for the MT46V16M16TG-75:F DRAM. NOTES: ====== This BSP is based heavily off the 5235 BSP. TODO: ====== Add other drivers for can, i2c, lcd (fb), qspi etc. ============================================================================ Interrupt map +-----+ | | +-----+ |LEVEL| +-----+ | 7 | +-----+ | 6 | +-----+ | 5 | +-----+ | 4 | FEC RX, FEC TX, PIT +-----+ | 3 | UART 0, UART 1, UART 2 +-----+ | 2 | +-----+ | 1 | +-----+ ============================================================================ Timings *** TIME TEST 1 *** rtems_semaphore_create 11 rtems_semaphore_delete 9 rtems_semaphore_obtain: available 0 rtems_semaphore_obtain: not available -- NO_WAIT 0 rtems_semaphore_release: no waiting tasks 2 *** END OF TEST 1 *** *** TIME TEST 2 *** rtems_semaphore_obtain: not available -- caller blocks 14 *** END OF TEST 2 *** *** TIME TEST 3 *** rtems_semaphore_release: task readied -- preempts caller 11 *** END OF TEST 3 *** *** TIME TEST 4 *** rtems_task_restart: blocked task -- preempts caller 24 rtems_task_restart: ready task -- preempts caller 15 rtems_semaphore_release: task readied -- returns to caller 3 rtems_task_create 40 rtems_task_start 7 rtems_task_restart: suspended task -- returns to caller 8 rtems_task_delete: suspended task 18 rtems_task_restart: ready task -- returns to caller 9 rtems_task_restart: blocked task -- returns to caller 10 rtems_task_delete: blocked task 19 *** END OF TEST 4 *** *** TIME TEST 5 *** rtems_task_suspend: calling task 11 rtems_task_resume: task readied -- preempts caller 9 *** END OF TEST 5 *** *** TIME TEST 6 *** rtems_task_restart: calling task 4 rtems_task_suspend: returns to caller 2 rtems_task_resume: task readied -- returns to caller 2 rtems_task_delete: ready task 19 *** END OF TEST 6 *** *** TIME TEST 7 *** rtems_task_restart: suspended task -- preempts caller 15 *** END OF TEST 7 *** *** TIME TEST 9 *** rtems_message_queue_create 45 rtems_message_queue_send: no waiting tasks 2 rtems_message_queue_urgent: no waiting tasks 2 rtems_message_queue_receive: available 3 rtems_message_queue_flush: no messages flushed 1 rtems_message_queue_flush: messages flushed 1 rtems_message_queue_delete 12 *** END OF TEST 9 *** *** TIME TEST 10 *** rtems_message_queue_receive: not available -- NO_WAIT 1 rtems_message_queue_receive: not available -- caller blocks 14 *** END OF TEST 10 *** *** TIME TEST 11 *** rtems_message_queue_send: task readied -- preempts caller 13 *** END OF TEST 11 *** *** TIME TEST 12 *** rtems_message_queue_send: task readied -- returns to caller 5 *** END OF TEST 12 *** *** TIME TEST 13 *** rtems_message_queue_urgent: task readied -- preempts caller 13 *** END OF TEST 13 *** *** TIME TEST 14 *** rtems_message_queue_urgent: task readied -- returns to caller 5 *** END OF TEST 14 *** *** TIME TEST 15 *** rtems_event_receive: obtain current events 0 rtems_event_receive: not available -- NO_WAIT 1 rtems_event_receive: not available -- caller blocks 12 rtems_event_send: no task readied 1 rtems_event_receive: available 3 rtems_event_send: task readied -- returns to caller 4 *** END OF TEST 15 *** *** TIME TEST 16 *** rtems_event_send: task readied -- preempts caller 13 *** END OF TEST 16 *** *** TIME TEST 17 *** rtems_task_set_priority: preempts caller 13 *** END OF TEST 17 *** *** TIME TEST 18 *** rtems_task_delete: calling task 30 *** END OF TEST 18 *** *** TIME TEST 19 *** rtems_signal_catch 2 rtems_signal_send: returns to caller 5 rtems_signal_send: signal to self 11 exit ASR overhead: returns to calling task 6 exit ASR overhead: returns to preempting task 11 *** END OF TEST 19 *** *** TIME TEST 20 *** rtems_partition_create 15 rtems_region_create 20 rtems_partition_get_buffer: available 4 rtems_partition_get_buffer: not available 1 rtems_partition_return_buffer 4 rtems_partition_delete 6 rtems_region_get_segment: available 6 rtems_region_get_segment: not available -- NO_WAIT 5 rtems_region_return_segment: no waiting tasks 5 rtems_region_get_segment: not available -- caller blocks 29 rtems_region_return_segment: task readied -- preempts caller 29 rtems_region_return_segment: task readied -- returns to caller 11 rtems_region_delete 6 rtems_io_initialize 0 rtems_io_open 0 rtems_io_close 0 rtems_io_read 0 rtems_io_write 0 rtems_io_control 0 *** END OF TEST 20 *** *** TIME TEST 21 *** rtems_task_ident 4 rtems_message_queue_ident 3 rtems_semaphore_ident 4 rtems_partition_ident 3 rtems_region_ident 3 rtems_port_ident 3 rtems_timer_ident 3 rtems_rate_monotonic_ident 3 *** END OF TEST 21 *** *** TIME TEST 22 *** rtems_message_queue_broadcast: task readied -- returns to caller 16 rtems_message_queue_broadcast: no waiting tasks 2 rtems_message_queue_broadcast: task readied -- preempts caller 12 *** END OF TEST 22 *** *** TIME TEST 23 *** rtems_timer_create 2 rtems_timer_fire_after: inactive 2 rtems_timer_fire_after: active 1 rtems_timer_cancel: active 1 rtems_timer_cancel: inactive 1 rtems_timer_reset: inactive 2 rtems_timer_reset: active 2 rtems_timer_fire_when: inactive 2 rtems_timer_fire_when: active 2 rtems_timer_delete: active 2 rtems_timer_delete: inactive 2 rtems_task_wake_when 13 *** END OF TEST 23 *** *** TIME TEST 24 *** rtems_task_wake_after: yield -- returns to caller 0 rtems_task_wake_after: yields -- preempts caller 9 *** END OF TEST 24 *** *** TIME TEST 25 *** rtems_clock_tick 10 *** END OF TEST 25 *** *** TIME TEST 26 *** _ISR_Disable 1 _ISR_Flash 0 _ISR_Enable 0 _Thread_Disable_dispatch 0 _Thread_Enable_dispatch 1 _Thread_Set_state 4 _Thread_Disptach (NO FP) 11 context switch: no floating point contexts 5 context switch: self 0 context switch: to another task 1 fp context switch: restore 1st FP task 5 fp context switch: save idle, restore initialized 1 fp context switch: save idle, restore idle 6 fp context switch: save initialized, restore initialized 1 _Thread_Resume 5 _Thread_Unblock 3 _Thread_Ready 2 _Thread_Get 0 _Semaphore_Get 0 _Thread_Get: invalid id 0 *** END OF TEST 26 *** *** TIME TEST 27 *** interrupt entry overhead: returns to interrupted task 1 interrupt exit overhead: returns to interrupted task 1 interrupt entry overhead: returns to nested interrupt 0 interrupt exit overhead: returns to nested interrupt 0 interrupt entry overhead: returns to preempting task 1 interrupt exit overhead: returns to preempting task 9 *** END OF TEST 27 *** *** TIME TEST 28 *** rtems_port_create 5 rtems_port_external_to_internal 1 rtems_port_internal_to_external 1 rtems_port_delete 4 *** END OF TEST 28 *** *** TIME TEST 29 *** rtems_rate_monotonic_create 8 rtems_rate_monotonic_period: initiate period -- returns to caller 14 rtems_rate_monotonic_period: obtain status 3 rtems_rate_monotonic_cancel 6 rtems_rate_monotonic_delete: inactive 7 rtems_rate_monotonic_delete: active 3 rtems_rate_monotonic_period: conclude periods -- caller blocks 15 *** END OF TEST 29 *** *** TIME TEST OVERHEAD *** rtems_shutdown_executive 0 rtems_task_create 0 rtems_task_ident 0 rtems_task_start 0 rtems_task_restart 0 rtems_task_delete 0 rtems_task_suspend 0 rtems_task_resume 0 rtems_task_set_priority 0 rtems_task_mode 0 rtems_task_wake_when 0 rtems_task_wake_after 0 rtems_interrupt_catch 0 rtems_clock_get 0 rtems_clock_set 0 rtems_clock_tick 0 rtems_timer_create 0 rtems_timer_delete 0 rtems_timer_ident 0 rtems_timer_fire_after 0 rtems_timer_fire_when 0 rtems_timer_reset 0 rtems_timer_cancel 0 rtems_semaphore_create 0 rtems_semaphore_delete 0 rtems_semaphore_ident 0 rtems_semaphore_obtain 0 rtems_semaphore_release 0 rtems_message_queue_create 0 rtems_message_queue_ident 0 rtems_message_queue_delete 0 rtems_message_queue_send 0 rtems_message_queue_urgent 0 rtems_message_queue_broadcast 0 rtems_message_queue_receive 0 rtems_message_queue_flush 0 rtems_event_send 0 rtems_event_receive 0 rtems_signal_catch 0 rtems_signal_send 0 rtems_partition_create 0 rtems_partition_ident 0 rtems_partition_delete 0 rtems_partition_get_buffer 0 rtems_partition_return_buffer 0 rtems_region_create 0 rtems_region_ident 0 rtems_region_delete 0 rtems_region_get_segment 0 rtems_region_return_segment 0 rtems_port_create 0 rtems_port_ident 0 rtems_port_delete 0 rtems_port_external_to_internal 0 rtems_port_internal_to_external 0 rtems_io_initialize 0 rtems_io_open 0 rtems_io_close 0 rtems_io_read 0 rtems_io_write 0 rtems_io_control 0 rtems_fatal_error_occurred 0 rtems_rate_monotonic_create 0 rtems_rate_monotonic_ident 0 rtems_rate_monotonic_delete 0 rtems_rate_monotonic_cancel 0 rtems_rate_monotonic_period 0 rtems_multiprocessing_announce 0 *** END OF TIME OVERHEAD ***