# # $Id$ # BSP NAME: mpc8260ads BOARD: Motorola MPC8260 ADS Evaluation board BUS: N/A CPU FAMILY: ppc CPU: PowerPC MPC8260 COPROCESSORS: Hardware FPU (except on revision 2J24M) MODE: 32 bit mode, I and D cache disabled DEBUG MONITOR: None PERIPHERALS =========== TIMERS: Decrementer RESOLUTION: 0.1 microsecond SERIAL PORTS: 4 SCCs (SSC1 and 2 are connectd to RS232 drivers) SCC3 is used in HDLC mode to transport IP frames. SMCs, FCCs, SPI, I2C are unused. REAL-TIME CLOCK: DMA: Each serial port VIDEO: none SCSI: none NETWORKING: IP over HDLC (8 Mbps) on SCC3 (MPC8260) DRIVER INFORMATION ================== CLOCK DRIVER: Decrementer IOSUPP DRIVER: SCC1, SCC2 SHMSUPP: none TIMER DRIVER: Timebase register (lower 32 bits only) STDIO ===== PORT: SCC2 ELECTRICAL: RS-232 BAUD: 9600 BITS PER CHARACTER: 8 PARITY: None STOP BITS: 1 NOTES ===== On-chip resources: SCC1 console SCC2 console SCC3 network SCC4 CLK1 CLK2 CLK3 CLK4 CLK5 network CLK6 CLK7 CLK8 BRG1 console BRG2 console BRG3 console BRG4 network RTC PIT TB timer DEC clock SWT *CS0 8M FLASH *CS1 Config registers *CS2 60X SDRAM *CS3 *CS4 LCL SDRAM *CS5 ATM *CS6 *CS7 *CS8 *CS9 *CS10 *CS11 UPMA UPMB IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7 Board description ----------------- Clock rate: 40MHz (board can run up 66MHz with alternate OSC) Bus width: 32 bit Flash, 64 bit SDRAM FLASH: 8M SIMM RAM: 16M SDRAM DIMM The board is marked with "Rev PILOT" U17 is marked with "MPC8260ADS Pilot 00" The processor is marked with "XPC8260ZU166 166/133/66 MHz" Board Configuration: -------------------- The evaluation board has a number of configurable options: DIP switch settings used: DS1: 1-"off", 2-"on", 3-"off", 4-"on", 5-"off", 6-"off", 7-"off", 8-"off" DS2: all "on" DS3: all "on" A 40MHz oscillator is fitted to U16. Board Connections: ------------------ Connect a serial terminal to PA3 (SCC2) configured for 9600,n,8,1 to get console I/O. A 9way male-female straight-through cable is required to connect to a PC. If you require the network connections (see README in network directory) you need to connect 3VTTL - RS422 level convertors to the CPM expansion connector, P4. The signals, as numbered on the connector itself (beware: the numbering on the PCB does not agree): TX Data (SCC3 TXD) (output) Pin a25 TX Clock (BRG4O) (output) Pin a11 Rx Data (SCC3 RXD) (input) Pin c15 Rx Clock (CLK5) (input) Pin d28 Ground (GND) (n/a) Pin c1 Debugging/ Code loading: ------------------------ Tested using the Metrowerks debugger and Macraigor OCDemon (Raven). The OCD connects via the parallel port and allows you to download code to the board. It may be possible to use some other debugger if you don't already have Metrowerks CodeWarrior. Verification ------------------------------- *** TESTING IN PROGRESS - DO NOT BELIEVE THESE RESULTS *** Single processor tests: Passed Multi-processort tests: not applicable Timing tests: Context Switch context switch: self 9 context switch: to another task 10 context switch: no floating point contexts 23 fp context switch: restore 1st FP task 24 fp context switch: save initialized, restore initialized 11 fp context switch: save idle, restore initialized 11 fp context switch: save idle, restore idle 23 Task Manager rtems_task_create 83 rtems_task_ident 84 rtems_task_start 30 rtems_task_restart: calling task 48 rtems_task_restart: suspended task -- returns to caller 36 rtems_task_restart: blocked task -- returns to caller 47 rtems_task_restart: ready task -- returns to caller 35 rtems_task_restart: suspended task -- preempts caller 56 rtems_task_restart: blocked task -- preempts caller 116 rtems_task_restart: ready task -- preempts caller 93 rtems_task_delete: calling task 102 rtems_task_delete: suspended task 74 rtems_task_delete: blocked task 76 rtems_task_delete: ready task 80 rtems_task_suspend: calling task 37 rtems_task_suspend: returns to caller 14 rtems_task_resume: task readied -- returns to caller 16 rtems_task_resume: task readied -- preempts caller 30 rtems_task_set_priority: obtain current priority 12 rtems_task_set_priority: returns to caller 23 rtems_task_set_priority: preempts caller 52 rtems_task_mode: obtain current mode 5 rtems_task_mode: no reschedule 6 rtems_task_mode: reschedule -- returns to caller 15 rtems_task_mode: reschedule -- preempts caller 43 rtems_task_get_note 13 rtems_task_set_note 12 rtems_task_wake_after: yield -- returns to caller 8 rtems_task_wake_after: yields -- preempts caller 30 rtems_task_wake_when: 49 Interrupt Manager interrupt entry overhead: returns to nested interrupt 7 interrupt entry overhead: returns to interrupted task 31 interrupt entry overhead: returns to preempting task 14 interrupt exit overhead: returns to nested interrupt 10 interrupt exit overhead: returns to interrupted task 8 interrupt exit overhead: returns to preempting task 45 Clock Manager rtems_clock_set 28 rtems_clock_get 0 rtems_clock_tick 36 Timer Manager rtems_timer_create 11 rtems_timer_ident 82 rtems_timer_delete: inactive 14 rtems_timer_delete: active 16 rtems_timer_fire_after: inactive 20 rtems_timer_fire_after: active 22 rtems_timer_fire_when: inactive 24 rtems_timer_fire_when: active 24 rtems_timer_reset: inactive 18 rtems_timer_reset: active 21 rtems_timer_cancel: inactive 11 rtems_timer_cancel: active 12 Semaphore Manager rtems_semaphore_create 56 rtems_semaphore_ident 94 rtems_semaphore_delete 34 rtems_semaphore_obtain: available 13 rtems_semaphore_obtain: not available -- NO_WAIT 13 rtems_semaphore_obtain: not available -- caller blocks 48 rtems_semaphore_release: no waiting tasks 16 rtems_semaphore_release: task readied -- returns to caller 36 rtems_semaphore_release: task readied -- preempts caller 36 Message Queue Manager rtems_message_queue_create 110 rtems_message_queue_ident 82 rtems_message_queue_delete 43 rtems_message_queue_send: no waiting tasks 28 rtems_message_queue_send: task readied -- returns to caller 31 rtems_message_queue_send: task readied -- preempts caller 46 rtems_message_queue_urgent: no waiting tasks 28 rtems_message_queue_urgent: task readied -- returns to caller 31 rtems_message_queue_urgent: task readied -- preempts caller 46 rtems_message_queue_broadcast: no waiting tasks 22 rtems_message_queue_broadcast: task readied -- returns to caller 81 rtems_message_queue_broadcast: task readied -- preempts caller 75 rtems_message_queue_receive: available 26 rtems_message_queue_receive: not available -- NO_WAIT 15 rtems_message_queue_receive: not available -- caller blocks 48 rtems_message_queue_flush: no messages flushed 14 rtems_message_queue_flush: messages flushed 14 Event Manager rtems_event_send: no task readied 12 rtems_event_send: task readied -- returns to caller 38 rtems_event_send: task readied -- preempts caller 21 rtems_event_receive: obtain current events 1 rtems_event_receive: available 19 rtems_event_receive: not available -- NO_WAIT 11 rtems_event_receive: not available -- caller blocks 36 Signal Manager rtems_signal_catch: 31 rtems_signal_send: returns to caller 21 rtems_signal_send: signal to self 39 exit ASR overhead: returns to calling task 30 exit ASR overhead: returns to preempting task 33 Partition Manager rtems_partition_create 59 rtems_partition_ident 82 rtems_partition_delete 20 rtems_partition_get_buffer: available 19 rtems_partition_get_buffer: not available 13 rtems_partition_return_buffer 20 Region Manager rtems_region_create 37 rtems_region_ident 84 rtems_region_delete 20 rtems_region_get_segment: available 19 rtems_region_get_segment: not available -- NO_WAIT 23 rtems_region_get_segment: not available -- caller blocks 75 rtems_region_return_segment: no waiting tasks 21 rtems_region_return_segment: task readied -- returns to caller 55 rtems_region_return_segment: task readied -- preempts caller 82 Dual-Ported Memory Manager rtems_port_create 23 rtems_port_ident 82 rtems_port_delete 21 rtems_port_internal_to_external 10 rtems_port_external_to_internal 11 IO Manager rtems_io_initialize 1 rtems_io_open 1 rtems_io_close 1 rtems_io_read 1 rtems_io_write 1 rtems_io_control 1 Rate Monotonic Manager rtems_rate_monotonic_create 43 rtems_rate_monotonic_ident 82 rtems_rate_monotonic_cancel 23 rtems_rate_monotonic_delete: active 28 rtems_rate_monotonic_delete: inactive 25 rtems_rate_monotonic_period: obtain status 17 rtems_rate_monotonic_period: initiate period -- returns to caller 32 rtems_rate_monotonic_period: conclude periods -- caller blocks 30 Network tests: TCP throughput (as measured by ttcp): Receive: 1324 kbytes/sec Transmit: 1037 kbytes/sec