source: rtems/c/src/lib/libbsp/m68k/gen68360/README @ 48d6de3

4.104.114.84.95
Last change on this file since 48d6de3 was e2d79559, checked in by Joel Sherrill <joel.sherrill@…>, on 04/09/97 at 14:05:50

Added ka9q tcpip stack and network driver for the gen68360. This effort
was done based on the 3.6.0 release and had to be autoconf'ed locally.
It is turned on is the bsp enables it and it is not explicitly disabled
via the configure option --disable-tcpip. As many warnings as possible
were removed locally after the code was merged. Only the gen68360
and mvme136 bsps were compiled this way.

The ka9q port and network driver were submitted by Eric Norum
(eric@…).

The network demo programs are not included in the tree at this point.

  • Property mode set to 100644
File size: 9.3 KB
Line 
1#
2#  $Id$
3#
4
5#
6# This package works best with a version of GCC that has been modified
7# to support the `-mcpu32' argument.  I have submitted the required
8# changes to the GCC maintainers.
9#
10
11#
12# Please send any comments, improvements, or bug reports to:
13#       W. Eric Norum
14#       Saskatchewan Accelerator Laboratory
15#       107 North Road
16#       University of Saskatchewan
17#       Saskatoon, Saskatchewan, CANADA
18#       S7N 5C6
19# eric@skatter.usask.ca
20#
21
22#
23# This board support package works with several different versions of
24# MC68360 systems.  The choice of hardware is made at the final link-edit
25# phase by setting the Makefile LDFLAGS definition appropriately.
26#
27# Decisions to be made a link-edit time include:
28#       - The version of hardware on which the application is to run.
29#         This is selected by defining the MC68360HardwareType variable.
30#         Supported values are:
31#                       MC68360HardwareTypeMotorolaGeneric (default)
32#                       MC68360HardwareTypeAtlasHSB
33#         To select the Atlas Computer Equipment HSB,
34#               --defsym MC68360HardwareType=MC68360HardwareTypeAtlasHSB
35#
36#       - The amount of dynamic RAM in the system.  This value applies
37#         only to hardware versions which support different sizes of RAM.
38#         The default value is 4 Mbytes.  To specify 16 Mbytes of memory,
39#               --defsym RamSize=0x1000000
40#
41#       - The size of the memory allocator heap.  The default value is
42#         64 kbytes.  If the KA9Q network package is used the heap
43#         should be at least 256 kbytes.  If your network is large, or
44#         busy, the heap should be even larger.
45#         To choose a heap size of 256 kbytes,
46#               --defsym HeapSize=0x40000
47#         
48
49BSP NAME:           gen68360
50BOARD:              Generic 68360 as described in Motorola MC68360 User's Manual
51BOARD:              Atlas Computer Equipment Inc. High Speed Bridge (HSB)
52BOARD:              Atlas Computer Equipment Inc. Advanced Communication Engine (ACE)
53BUS:                none
54CPU FAMILY:         Motorola CPU32+
55COPROCESSORS:       none
56MODE:               not applicable
57
58DEBUG MONITOR:      none (Hardware provides BDM)
59
60PERIPHERALS
61===========
62TIMERS:             PIT, Watchdog, 4 general purpose, 16 RISC
63  RESOLUTION:       one microsecond
64SERIAL PORTS:       4 SCC, 2 SMC, 1 SPI
65REAL-TIME CLOCK:
66DMA:                Each serial port, 2 general purpose
67VIDEO:              none
68SCSI:               none
69NETWORKING:         Ethernet on SCC1.
70
71DRIVER INFORMATION
72==================
73CLOCK DRIVER:       Programmable Interval Timer
74IOSUPP DRIVER:      Serial Management Controller 1
75SHMSUPP:            none
76TIMER DRIVER:       Timer 1
77
78STDIO
79=====
80PORT:               SMC1
81ELECTRICAL:         EIA-232 (if board supplies level shifter)
82BAUD:               9600
83BITS PER CHARACTER: 8
84PARITY:             None
85STOP BITS:          1
86
87NOTES
88=====
89
90Board description
91-----------------
92clock rate:     25 MHz
93bus width:      8-bit PROM, 32-bit DRAM
94ROM:            To 1 MByte, 180 nsec (3 wait states), chip select 0
95RAM:            1 to 64 MByte DRAM SIMM, 60 nsec (0 wait states), parity or nonparity
96
97Host System
98-----------
99NEXTSTEP 3.3 (Intel and Motorola), Solaris 2.5
100gcc-2.7.2
101binutils-2.6
102
103Verification
104------------
105Single processor tests:  Passed
106Multi-processort tests:  not applicable
107Timing tests:
108        Context Switch
109
110        context switch: self 10
111        context switch: to another task 11
112        context switch: no floating point contexts 40
113        fp context switch: restore 1st FP task 41
114        fp context switch: save initialized, restore initialized 14
115        fp context switch: save idle, restore initialized 14
116        fp context switch: save idle, restore idle 43
117
118        Task Manager
119
120        rtems_task_create 133
121        rtems_task_ident 351
122        rtems_task_start 77
123        rtems_task_restart: calling task 93
124        rtems_task_restart: suspended task -- returns to caller 90
125        rtems_task_restart: blocked task -- returns to caller 120
126        rtems_task_restart: ready task -- returns to caller 92
127        rtems_task_restart: suspended task -- preempts caller 121
128        rtems_task_restart: blocked task -- preempts caller 143
129        rtems_task_restart: ready task -- preempts caller 138
130        rtems_task_delete: calling task 158
131        rtems_task_delete: suspended task 129
132        rtems_task_delete: blocked task 134
133        rtems_task_delete: ready task 136
134        rtems_task_suspend: calling task 71
135        rtems_task_suspend: returns to caller 47
136        rtems_task_resume: task readied -- returns to caller 48
137        rtems_task_resume: task readied -- preempts caller 67
138        rtems_task_set_priority: obtain current priority 36
139        rtems_task_set_priority: returns to caller 65
140        rtems_task_set_priority: preempts caller 102
141        rtems_task_mode: obtain current mode 13
142        rtems_task_mode: no reschedule 15
143        rtems_task_mode: reschedule -- returns to caller 22
144        rtems_task_mode: reschedule -- preempts caller 61
145        rtems_task_get_note 38
146        rtems_task_set_note 37
147        rtems_task_wake_after: yield -- returns to caller 22
148        rtems_task_wake_after: yields -- preempts caller 56
149        rtems_task_wake_when 110
150
151        Interrupt Manager
152
153        interrupt entry overhead: returns to nested interrupt 8
154        interrupt entry overhead: returns to interrupted task 8
155        interrupt entry overhead: returns to preempting task 8
156        interrupt exit overhead: returns to nested interrupt 7
157        interrupt exit overhead: returns to interrupted task 8
158        interrupt exit overhead: returns to preempting task 52
159
160        Clock Manager
161
162        rtems_clock_set 82
163        rtems_clock_get 2
164        rtems_clock_tick 15
165
166        Timer Manager
167
168        rtems_timer_create 33
169        rtems_timer_ident 343
170        rtems_timer_delete: inactive 47
171        rtems_timer_delete: active 50
172        rtems_timer_fire_after: inactive 59
173        rtems_timer_fire_after: active 63
174        rtems_timer_fire_when: inactive 83
175        rtems_timer_fire_when: active 83
176        rtems_timer_reset: inactive 55
177        rtems_timer_reset: active 58
178        rtems_timer_cancel: inactive 35
179        rtems_timer_cancel: active 38
180
181        Semaphore Manager
182
183        rtems_semaphore_create 62
184        rtems_semaphore_ident 368
185        rtems_semaphore_delete 61
186        rtems_semaphore_obtain: available 42
187        rtems_semaphore_obtain: not available -- NO_WAIT 42
188        rtems_semaphore_obtain: not available -- caller blocks 105
189        rtems_semaphore_release: no waiting tasks 46
190        rtems_semaphore_release: task readied -- returns to caller 64
191        rtems_semaphore_release: task readied -- preempts caller 84
192
193        Message Queue Manager
194
195        rtems_message_queue_create 240
196        rtems_message_queue_ident 342
197        rtems_message_queue_delete 79
198        rtems_message_queue_send: no waiting tasks 93
199        rtems_message_queue_send: task readied -- returns to caller 96
200        rtems_message_queue_send: task readied -- preempts caller 116
201        rtems_message_queue_urgent: no waiting tasks 93
202        rtems_message_queue_urgent: task readied -- returns to caller 97
203        rtems_message_queue_urgent: task readied -- preempts caller 117
204        rtems_message_queue_broadcast: no waiting tasks 54
205        rtems_message_queue_broadcast: task readied -- returns to caller 106
206        rtems_message_queue_broadcast: task readied -- preempts caller 126
207        rtems_message_queue_receive: available 79
208        rtems_message_queue_receive: not available -- NO_WAIT 48
209        rtems_message_queue_receive: not available -- caller blocks 111
210        rtems_message_queue_flush: no messages flushed 35
211        rtems_message_queue_flush: messages flushed 44
212
213        Event Manager
214
215        rtems_event_send: no task readied 30
216        rtems_event_send: task readied -- returns to caller 59
217        rtems_event_send: task readied -- preempts caller 81
218        rtems_event_receive: obtain current events 1
219        rtems_event_receive: available 34
220        rtems_event_receive: not available -- NO_WAIT 31
221        rtems_event_receive: not available -- caller blocks 84
222
223        Signal Manager
224
225        rtems_signal_catch 24
226        rtems_signal_send: returns to caller 42
227        rtems_signal_send: signal to self 47
228        exit ASR overhead: returns to calling task 33
229        exit ASR overhead: returns to preempting task 58
230
231        Partition Manager
232
233        rtems_partition_create 78
234        rtems_partition_ident 342
235        rtems_partition_delete 46
236        rtems_partition_get_buffer: available 40
237        rtems_partition_get_buffer: not available 39
238        rtems_partition_return_buffer 47
239
240        Region Manager
241
242        rtems_region_create 65
243        rtems_region_ident 349
244        rtems_region_delete 45
245        rtems_region_get_segment: available 55
246        rtems_region_get_segment: not available -- NO_WAIT 52
247        rtems_region_get_segment: not available -- caller blocks 119
248        rtems_region_return_segment: no waiting tasks 57
249        rtems_region_return_segment: task readied -- returns to caller 106
250        rtems_region_return_segment: task readied -- preempts caller 127
251
252        Dual-Ported Memory Manager
253
254        rtems_port_create 40
255        rtems_port_ident 342
256        rtems_port_delete 44
257        rtems_port_internal_to_external 32
258        rtems_port_external_to_internal 32
259
260        IO Manager
261
262        rtems_io_initialize 4
263        rtems_io_open 1
264        rtems_io_close 1
265        rtems_io_read 1
266        rtems_io_write 1
267        rtems_io_control 1
268
269        Rate Monotonic Manager
270
271        rtems_rate_monotonic_create 39
272        rtems_rate_monotonic_ident 343
273        rtems_rate_monotonic_cancel 43
274        rtems_rate_monotonic_delete: active 54
275        rtems_rate_monotonic_delete: inactive 52
276        rtems_rate_monotonic_period: obtain status 37
277        rtems_rate_monotonic_period: initiate period -- returns to caller 58
278        rtems_rate_monotonic_period: conclude periods -- caller blocks 75
279
280Porting
281-------
282This board support package is written for a 68360 system similar to that
283described in chapter 9 of the Motorola MC68360 Quad Integrated Communication
284Processor Users' Manual.  The salient features of this hardware are:
285
286        25 MHz external clock
287        DRAM address multiplexing provided by 68360
288        8-bit 180nsec PROM to CS0*
289        4 MBytes of 60 nsec parity DRAM (1Mx36) to RAS1*/CAS1*
290        Console serial port on SMC1
291        Ethernet interface on SCC1
292
293The board support package has been tested with a home-built board and with an
294ACE360A board produced by:
295        Atlas Computer Equipment
296        703 Colina Lane
297        Santa Barbara, CA 93103
Note: See TracBrowser for help on using the repository browser.