source: rtems/c/src/lib/libbsp/m68k/mcf5235/README @ b1ded240

4.104.115
Last change on this file since b1ded240 was 504c5ca, checked in by Joel Sherrill <joel.sherrill@…>, on 06/23/06 at 16:04:33

2006-06-23 Worth Burruss <worth@…>

  • Makefile.am, README, startup/init5235.c, startup/linkcmds, startup/linkcmdsflash, startup/linkcmdsram: Modify to the mcf5235 eval boards to either load and run from ram using the dBug moniter as the boot deviced (Board setup as shipped from the factory), or it allows the user to Boot his code from flash he loads onto the eval board. The code changes between the two are based on the selected linker script using a variable in the script. The options to the linker are used to override the default linker script and select which options to configure at boot either from flash, or from ram:

-qnolinkcmds -T linkcmdsflash

If no options are given the standard linker sript assumes dBug was
used to set up the board and the user is going to load his program
to RAM.

  • Property mode set to 100644
File size: 14.9 KB
Line 
1#
2#  $Id$
3#
4
5Description: Motorola MCF5235EVB
6============
7CPU: MCF5235, 150MHz
8RAM: 16M
9ROM: 2M
10
11This is a Motorola evaluation board that uses the MCF5235 Coldfire CPU.
12This board is running at 150MHz scaled from a 25MHz oscillator.
13
14By default the BSP creates an image file for use when loaded into the
15RAM of the evaluation board.  To create an image file to boot from flash
16add the following command to the applications Makefile:
17LDFLAGS += -qnolinkcmds -T linkcmdsflash
18
19Note: This BSP has also been tested with the Freescale / Axiom Manufacturing
20(M5235BCC Business Card Controller) evaluation board.
21
22ACKNOWLEDGEMENTS:
23=================
24This BSP is heavily based on the work of:
25    D. Peter Siddons
26    Brett Swimley
27    Jay Monkman
28    Eric Norum
29    Mike Bertosh
30     
31BSP NAME:           mcf5235
32BOARD:              Motorola MCF5235EVB
33CPU FAMILY:         ColdFire 5235
34CPU:                MCF5235
35COPROCESSORS:       N/A
36
37DEBUG MONITOR:      dBUG
38
39PERIPHERALS
40===========
41TIMERS:             Four PIT (RTEMS clock is PIT3), Four Timers
42RESOLUTION:         10 microsecond
43SERIAL PORTS:       Internal UART 1, 2 and 3
44REAL-TIME CLOCK:    none
45DMA:                none
46VIDEO:              none
47SCSI:               none
48NETWORKING:         Internal 10/100MHz FEC
49
50DRIVER INFORMATION
51==================
52CLOCK DRIVER:       PIT3
53IOSUPP DRIVER:      none
54SHMSUPP:            none
55TIMER DRIVER:       TIMER3
56TTY DRIVER:         UART1, 2 and 3
57
58STDIO
59=====
60PORT:               UART0 Terminal
61ELECTRICAL:         RS-232
62BAUD:               19200
63BITS PER CHARACTER: 8
64PARITY:             None
65STOP BITS:          1
66
67
68
69      Memory map as set up by dBUG bootstrap and BSP initialization
70
71          +--------------------------------------------------+
720000 0000 |       16 MByte SDRAM                             | 00FF FFFF
730100 0000 |  ---------------------------------------------   |
74          |    Address space for future SDRAM expansion      |
75          .                                                  .
76          .                                                  .
77          .                                                  .
78          |                                                  | 0FFF FFFF
79          +--------------------------------------------------+
801000 0000 |                                                  |
81          .                                                  .
82          .                                                  .
83          .                                                  .
84          |                                                  | 1FFF FFFF
85          +--------------------------------------------------+
862000 0000 | 64 kByte on-chip SRAM (RAMBAR)                   |
87          .                                                  .
88          .                                                  .
89          .                                                  .
90          |                                                  | 2FFF FFFF
91          +--------------------------------------------------+
923000 0000 |                                                  | 30FF FFFF
93          .                                                  .
94          .                                                  .
95          .                                                  .
96          .                                                  .
97          |                                                  | 3FFF FFFF
98          +--------------------------------------------------+
994000 0000 | Internal peripheral system (IPSBAR)              |
100          .                                                  .
101          |                                                  |
102          .                                                  .
103          .                                                  .
104          .                                                  .
105          |                                                  | 4FFF FFFF
106          +--------------------------------------------------+
107          .                                                  .
108          .                                                  .
109          .                                                  .
110          +--------------------------------------------------+
111FFE0 0000 | External 4 MByte Flash                           |
112          .                                                  .
113          .                                                  .
114          .                                                  .
115          |                                                  | FFFF FFFF
116          +--------------------------------------------------+
117
118============================================================================
119      Interrupt map
120
121+-----+-----------------------------------------------------------------------+
122|     |                                PRIORITY                               |
123+-----+--------+--------+--------+--------+--------+--------+--------+--------+
124|LEVEL|    7   |    6   |    5   |    4   |    3   |    2   |    1   |    0   |
125+-----+--------+--------+--------+--------+--------+--------+--------+--------+
126|  7  |        |        |        |        |        |        |        |        |
127+-----+--------+--------+--------+--------+--------+--------+--------+--------+
128|  6  |        |        |        |        |        |        |        |        |
129+-----+--------+--------+--------+--------+--------+--------+--------+--------+
130|  5  |        |        |        |        |        |        |        |        |
131+-----+--------+--------+--------+--------+--------+--------+--------+--------+
132|  4  | FEC RX | FEC TX |        |        |        |        |        |   PIT  |
133+-----+--------+--------+--------+--------+--------+--------+--------+--------+
134|  3  | UART 0 | UART 1 | UART 2 |        |        |        |        |        |
135+-----+--------+--------+--------+--------+--------+--------+--------+--------+
136|  2  |        |        |        |        |        |        |        |        |
137+-----+--------+--------+--------+--------+--------+--------+--------+--------+
138|  1  |        |        |        |        |        |        |        |        |
139+-----+--------+--------+--------+--------+--------+--------+--------+--------+
140
141============================================================================
142TIMING TESTS
143************************************
144*** TIME TEST 1 ***
145rtems_semaphore_create 12
146rtems_semaphore_delete 11
147rtems_semaphore_obtain: available 2
148rtems_semaphore_obtain: not available -- NO_WAIT 3
149rtems_semaphore_release: no waiting tasks 6
150*** END OF TEST 1 ***
151
152*** TIME TEST 2 ***
153rtems_semaphore_obtain: not available -- caller blocks 18
154*** END OF TEST 2 ***
155
156*** TIME TEST 3 ***
157rtems_semaphore_release: task readied -- preempts caller 12
158*** END OF TEST 3 ***
159
160*** TIME TEST 4 ***
161rtems_task_restart: blocked task -- preempts caller 31
162rtems_task_restart: ready task -- preempts caller 30
163rtems_semaphore_release: task readied -- returns to caller 8
164rtems_task_create 45
165rtems_task_start 9
166rtems_task_restart: suspended task -- returns to caller 14
167rtems_task_delete: suspended task 32
168rtems_task_restart: ready task -- returns to caller 14
169rtems_task_restart: blocked task -- returns to caller 21
170rtems_task_delete: blocked task 32
171*** END OF TEST 4 ***
172
173*** TIME TEST 5 ***
174rtems_task_suspend: calling task 15
175rtems_task_resume: task readied -- preempts caller 9
176*** END OF TEST 5 ***
177
178*** TIME TEST 6 ***
179rtems_task_restart: calling task 12
180rtems_task_suspend: returns to caller 5
181rtems_task_resume: task readied -- returns to caller 6
182rtems_task_delete: ready task 34
183*** END OF TEST 6 ***
184
185*** TIME TEST 7 ***
186rtems_task_restart: suspended task -- preempts caller 22
187*** END OF TEST 7 ***
188
189*** TIME TEST 8 ***
190rtems_task_set_priority: obtain current priority 4
191rtems_task_set_priority: returns to caller 9
192rtems_task_mode: obtain current mode 1
193rtems_task_mode: no reschedule 1
194rtems_task_mode: reschedule -- returns to caller 3
195rtems_task_mode: reschedule -- preempts caller 11
196rtems_task_set_note 3
197rtems_task_get_note 3
198rtems_clock_set 9
199rtems_clock_get 0
200*** END OF TEST 8 ***
201
202*** TIME TEST 9 ***
203rtems_message_queue_create 37
204rtems_message_queue_send: no waiting tasks 11
205rtems_message_queue_urgent: no waiting tasks 10
206rtems_message_queue_receive: available 10
207rtems_message_queue_flush: no messages flushed 3
208rtems_message_queue_flush: messages flushed 5
209rtems_message_queue_delete 17
210*** END OF TEST 9 ***
211
212*** TIME TEST 10 ***
213rtems_message_queue_receive: not available -- NO_WAIT 6
214rtems_message_queue_receive: not available -- caller blocks 20
215*** END OF TEST 10 ***
216
217*** TIME TEST 11 ***
218rtems_message_queue_send: task readied -- preempts caller 17
219*** END OF TEST 11 ***
220
221*** TIME TEST 12 ***
222rtems_message_queue_send: task readied -- returns to caller 12
223*** END OF TEST 12 ***
224
225*** TIME TEST 13 ***
226rtems_message_queue_urgent: task readied -- preempts caller 20
227*** END OF TEST 13 ***
228
229*** TIME TEST 14 ***
230rtems_message_queue_urgent: task readied -- returns to caller 14
231*** END OF TEST 14 ***
232
233*** TIME TEST 15 ***
234rtems_event_receive: obtain current events 0
235rtems_event_receive: not available -- NO_WAIT 3
236rtems_event_receive: not available -- caller blocks 18
237rtems_event_send: no task readied 3
238rtems_event_receive: available 5
239rtems_event_send: task readied -- returns to caller 7
240*** END OF TEST 15 ***
241
242*** TIME TEST 16 ***
243rtems_event_send: task readied -- preempts caller 12
244*** END OF TEST 16 ***
245
246*** TIME TEST 17 ***
247rtems_task_set_priority: preempts caller 21
248*** END OF TEST 17 ***
249
250*** TIME TEST 18 ***
251rtems_task_delete: calling task 40
252*** END OF TEST 18 ***
253
254*** TIME TEST 19 ***
255rtems_signal_catch 3
256rtems_signal_send: returns to caller 6
257rtems_signal_send: signal to self 11
258exit ASR overhead: returns to calling task 8
259exit ASR overhead: returns to preempting task 10
260*** END OF TEST 19 ***
261
262*** TIME TEST 20 ***
263rtems_partition_create 13
264rtems_region_create 24
265rtems_partition_get_buffer: available 6
266rtems_partition_get_buffer: not available 4
267rtems_partition_return_buffer 6
268rtems_partition_delete 6
269rtems_region_get_segment: available 12
270rtems_region_get_segment: not available -- NO_WAIT 13
271rtems_region_return_segment: no waiting tasks 12
272rtems_region_get_segment: not available -- caller blocks 30
273rtems_region_return_segment: task readied -- preempts caller 40
274rtems_region_return_segment: task readied -- returns to caller 25
275rtems_region_delete 12
276rtems_io_initialize 0
277rtems_io_open 0
278rtems_io_close 0
279rtems_io_read 0
280rtems_io_write 0
281rtems_io_control 0
282*** END OF TEST 20 ***
283
284*** TIME TEST 21 ***
285rtems_task_ident 31
286rtems_message_queue_ident 30
287rtems_semaphore_ident 34
288rtems_partition_ident 30
289rtems_region_ident 30
290rtems_port_ident 29
291rtems_timer_ident 30
292rtems_rate_monotonic_ident 30
293*** END OF TEST 21 ***
294
295*** TIME TEST 22 ***
296rtems_message_queue_broadcast: task readied -- returns to caller 19
297rtems_message_queue_broadcast: no waiting tasks 6
298rtems_message_queue_broadcast: task readied -- preempts caller 20
299*** END OF TEST 22 ***
300
301*** TIME TEST 23 ***
302rtems_timer_create 4
303rtems_timer_fire_after: inactive 6
304rtems_timer_fire_after: active 6
305rtems_timer_cancel: active 4
306rtems_timer_cancel: inactive 3
307rtems_timer_reset: inactive 6
308rtems_timer_reset: active 6
309rtems_timer_fire_when: inactive 8
310rtems_timer_fire_when: active 8
311rtems_timer_delete: active 5
312rtems_timer_delete: inactive 5
313rtems_task_wake_when 16
314*** END OF TEST 23 ***
315
316*** TIME TEST 24 ***
317rtems_task_wake_after: yield -- returns to caller 2
318rtems_task_wake_after: yields -- preempts caller 12
319*** END OF TEST 24 ***
320
321*** TIME TEST 25 ***
322rtems_clock_tick 4
323*** END OF TEST 25 ***
324
325*** TIME TEST 26 ***
326_ISR_Disable 0
327_ISR_Flash 0
328_ISR_Enable 0
329_Thread_Disable_dispatch 0
330_Thread_Enable_dispatch 1
331_Thread_Set_state 4
332_Thread_Disptach (NO FP) 9
333context switch: no floating point contexts 7
334context switch: self 1
335context switch: to another task 1
336fp context switch: restore 1st FP task 6
337fp context switch: save idle, restore initialized 2
338fp context switch: save idle, restore idle 6
339fp context switch: save initialized, restore initialized 1
340_Thread_Resume 4
341_Thread_Unblock 3
342_Thread_Ready 2
343_Thread_Get 0
344_Semaphore_Get 0
345_Thread_Get: invalid id 0
346*** END OF TEST 26 ***
347
348*** TIME TEST 27 ***
349interrupt entry overhead: returns to interrupted task 2
350interrupt exit overhead: returns to interrupted task 1
351interrupt entry overhead: returns to nested interrupt 1
352interrupt exit overhead: returns to nested interrupt 1
353interrupt entry overhead: returns to preempting task 2
354interrupt exit overhead: returns to preempting task 12
355*** END OF TEST 27 ***
356
357*** TIME TEST 28 ***
358rtems_port_create 8
359rtems_port_external_to_internal 2
360rtems_port_internal_to_external 3
361rtems_port_delete 7
362*** END OF TEST 28 ***
363
364*** TIME TEST 29 ***
365rtems_rate_monotonic_create 8
366rtems_rate_monotonic_period: initiate period -- returns to caller 12
367rtems_rate_monotonic_period: obtain status 5
368rtems_rate_monotonic_cancel 7
369rtems_rate_monotonic_delete: inactive 8
370rtems_rate_monotonic_delete: active 7
371rtems_rate_monotonic_period: conclude periods -- caller blocks 11
372*** END OF TEST 29 ***
373
374*** TIME CHECKER ***
375Units may not be in microseconds for this test!!!
3760 100000
377Total time = 0
378Average time = 0
379<pause>
380NULL timer stopped at 0
381LOOP (1000) timer stopped at 94
382LOOP (10000) timer stopped at 941
383LOOP (50000) timer stopped at 4704
384LOOP (100000) timer stopped at 9408
385*** END OF TIME CHECKER ***
386
387*** TIME TEST OVERHEAD ***
388rtems_initialize_executive 0
389rtems_shutdown_executive 0
390rtems_task_create 0
391rtems_task_ident 0
392rtems_task_start 0
393rtems_task_restart 0
394rtems_task_delete 0
395rtems_task_suspend 0
396rtems_task_resume 0
397rtems_task_set_priority 0
398rtems_task_mode 0
399rtems_task_get_note 0
400rtems_task_set_note 0
401rtems_task_wake_when 0
402rtems_task_wake_after 0
403rtems_interrupt_catch 0
404rtems_clock_get 0
405rtems_clock_set 0
406rtems_clock_tick 0
407<pause>
408rtems_timer_create 0
409rtems_timer_delete 0
410rtems_timer_ident 0
411rtems_timer_fire_after 0
412rtems_timer_fire_when 0
413rtems_timer_reset 0
414rtems_timer_cancel 0
415rtems_semaphore_create 0
416rtems_semaphore_delete 0
417rtems_semaphore_ident 0
418rtems_semaphore_obtain 0
419rtems_semaphore_release 0
420rtems_message_queue_create 0
421rtems_message_queue_ident 0
422rtems_message_queue_delete 0
423rtems_message_queue_send 0
424rtems_message_queue_urgent 0
425rtems_message_queue_broadcast 0
426rtems_message_queue_receive 0
427rtems_message_queue_flush 0
428<pause>
429rtems_event_send 0
430rtems_event_receive 0
431rtems_signal_catch 0
432rtems_signal_send 0
433rtems_partition_create 0
434rtems_partition_ident 0
435rtems_partition_delete 0
436rtems_partition_get_buffer 0
437rtems_partition_return_buffer 0
438rtems_region_create 0
439rtems_region_ident 0
440rtems_region_delete 0
441rtems_region_get_segment 0
442rtems_region_return_segment 0
443rtems_port_create 0
444rtems_port_ident 0
445rtems_port_delete 0
446rtems_port_external_to_internal 0
447rtems_port_internal_to_external 0
448<pause>
449rtems_io_initialize 0
450rtems_io_open 0
451rtems_io_close 0
452rtems_io_read 0
453rtems_io_write 0
454rtems_io_control 0
455rtems_fatal_error_occurred 0
456rtems_rate_monotonic_create 0
457rtems_rate_monotonic_ident 0
458rtems_rate_monotonic_delete 0
459rtems_rate_monotonic_cancel 0
460rtems_rate_monotonic_period 0
461rtems_multiprocessing_announce 0
462*** END OF TIME OVERHEAD ***
Note: See TracBrowser for help on using the repository browser.