source: rtems/doc/supplements/m68k/cputable.t @ 1e524995

4.104.114.84.95
Last change on this file since 1e524995 was 1e524995, checked in by Joel Sherrill <joel.sherrill@…>, on 02/06/98 at 14:14:30

Updated copyrights

  • Property mode set to 100644
File size: 4.3 KB
Line 
1@c
2@c  COPYRIGHT (c) 1988-1998.
3@c  On-Line Applications Research Corporation (OAR).
4@c  All rights reserved.
5@c
6@c  $Id$
7@c
8
9@ifinfo
10@node Processor Dependent Information Table, Processor Dependent Information Table Introduction, Board Support Packages Processor Initialization, Top
11@end ifinfo
12@chapter  Processor Dependent Information Table
13@ifinfo
14@menu
15* Processor Dependent Information Table Introduction::
16* Processor Dependent Information Table CPU Dependent Information Table::
17@end menu
18@end ifinfo
19
20@ifinfo
21@node Processor Dependent Information Table Introduction, Processor Dependent Information Table CPU Dependent Information Table, Processor Dependent Information Table, Processor Dependent Information Table
22@end ifinfo
23@section Introduction
24
25Any highly processor dependent information required
26to describe a processor to RTEMS is provided in the CPU
27Dependent Information Table.  This table is not required for all
28processors supported by RTEMS.  This chapter describes the
29contents, if any, for a particular processor type.
30
31@ifinfo
32@node Processor Dependent Information Table CPU Dependent Information Table, Memory Requirements, Processor Dependent Information Table Introduction, Processor Dependent Information Table
33@end ifinfo
34@section CPU Dependent Information Table
35
36The MC68xxx version of the RTEMS CPU Dependent
37Information Table contains the information required to interface
38a Board Support Package and RTEMS on the MC68xxx.  This
39information is provided to allow RTEMS to interoperate
40effectively with the BSP.  The C structure definition is given
41here:
42
43@example
44@group
45typedef struct @{
46  void       (*pretasking_hook)( void );
47  void       (*predriver_hook)( void );
48  void       (*postdriver_hook)( void );
49  void       (*idle_task)( void );
50  boolean      do_zero_of_workspace;
51  unsigned32   interrupt_stack_size;
52  unsigned32   extra_mpci_receive_server_stack;
53  void *     (*stack_allocate_hook)( unsigned32 );
54  void       (*stack_free_hook)( void* );
55  /* end of fields required on all CPUs */
56
57  m68k_isr    *interrupt_vector_table;
58@} rtems_cpu_table;
59@end group
60@end example
61
62@table @code
63@item pretasking_hook
64is the address of the
65user provided routine which is invoked once RTEMS initialization
66is complete but before interrupts and tasking are enabled.  This
67field may be NULL to indicate that the hook is not utilized.
68
69@item predriver_hook
70is the address of the user provided
71routine which is invoked with tasking enabled immediately before
72the MPCI and device drivers are initialized. RTEMS
73initialization is complete, interrupts and tasking are enabled,
74but no device drivers are initialized.  This field may be NULL to
75indicate that the hook is not utilized.
76
77@item postdriver_hook
78is the address of the user provided
79routine which is invoked with tasking enabled immediately after
80the MPCI and device drivers are initialized. RTEMS
81initialization is complete, interrupts and tasking are enabled,
82and the device drivers are initialized.  This field may be NULL
83to indicate that the hook is not utilized.
84
85@item idle_task
86is the address of the optional user
87provided routine which is used as the system's IDLE task.  If
88this field is not NULL, then the RTEMS default IDLE task is not
89used.  This field may be NULL to indicate that the default IDLE
90is to be used.
91
92@item do_zero_of_workspace
93indicates whether RTEMS should
94zero the Workspace as part of its initialization.  If set to
95TRUE, the Workspace is zeroed.  Otherwise, it is not.
96
97@item interrupt_stack_size
98is the size of the RTEMS
99allocated interrupt stack in bytes.  This value must be at least
100as large as MINIMUM_STACK_SIZE.
101
102@item extra_mpci_receive_server_stack
103is the extra stack space allocated for the RTEMS MPCI receive server task
104in bytes.  The MPCI receive server may invoke nearly all directives and
105may require extra stack space on some targets.
106
107@item stack_allocate_hook
108is the address of the optional user provided routine which allocates
109memory for task stacks.  If this hook is not NULL, then a stack_free_hook
110must be provided as well.
111
112@item stack_free_hook
113is the address of the optional user provided routine which frees
114memory for task stacks.  If this hook is not NULL, then a stack_allocate_hook
115must be provided as well.
116
117@item interrupt_vector_table
118is the base address of the CPU's Exception Vector Table.
119
120@end table
Note: See TracBrowser for help on using the repository browser.