source: rtems/doc/supplements/powerpc/cputable.texi @ 563f7e0

4.104.114.84.95
Last change on this file since 563f7e0 was 563f7e0, checked in by Joel Sherrill <joel.sherrill@…>, on 07/01/97 at 18:39:44

New files -- PowerPC supplement is based on the SPARC supplement.
This version has had some initial work done to convert it to
be PowerPC specific.

  • Property mode set to 100644
File size: 3.9 KB
Line 
1@c
2@c  COPYRIGHT (c) 1988-1996.
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 SPARC version of the RTEMS CPU Dependent
37Information Table is given by the C structure definition is
38shown below:
39
40@example
41struct cpu_configuration_table @{
42  void       (*pretasking_hook)( void );
43  void       (*predriver_hook)( void );
44  void       (*postdriver_hook)( void );
45  void       (*idle_task)( void );
46  boolean      do_zero_of_workspace;
47  unsigned32   interrupt_stack_size;
48  unsigned32   extra_mpci_receive_server_stack;
49  void *     (*stack_allocate_hook)( unsigned32 );
50  void       (*stack_free_hook)( void* );
51  /* end of fields required on all CPUs */
52
53@};
54@end example
55
56@table @code
57@item pretasking_hook
58is the address of the
59user provided routine which is invoked once RTEMS initialization
60is complete but before interrupts and tasking are enabled.  This
61field may be NULL to indicate that the hook is not utilized.
62
63@item predriver_hook
64is the address of the user provided
65routine which is invoked with tasking enabled immediately before
66the MPCI and device drivers are initialized. RTEMS
67initialization is complete, interrupts and tasking are enabled,
68but no device drivers are initialized.  This field may be NULL to
69indicate that the hook is not utilized.
70
71@item postdriver_hook
72is the address of the user provided
73routine which is invoked with tasking enabled immediately after
74the MPCI and device drivers are initialized. RTEMS
75initialization is complete, interrupts and tasking are enabled,
76and the device drivers are initialized.  This field may be NULL
77to indicate that the hook is not utilized.
78
79@item idle_task
80is the address of the optional user
81provided routine which is used as the system's IDLE task.  If
82this field is not NULL, then the RTEMS default IDLE task is not
83used.  This field may be NULL to indicate that the default IDLE
84is to be used.
85
86@item do_zero_of_workspace
87indicates whether RTEMS should
88zero the Workspace as part of its initialization.  If set to
89TRUE, the Workspace is zeroed.  Otherwise, it is not.
90
91@item interrupt_stack_size
92is the size of the RTEMS allocated interrupt stack in bytes.
93This value must be at least as large as MINIMUM_STACK_SIZE.
94
95@item extra_mpci_receive_server_stack
96is the extra stack space allocated for the RTEMS MPCI receive server task
97in bytes.  The MPCI receive server may invoke nearly all directives and
98may require extra stack space on some targets.
99
100@item stack_allocate_hook
101is the address of the optional user provided routine which allocates
102memory for task stacks.  If this hook is not NULL, then a stack_free_hook
103must be provided as well.
104
105@item stack_free_hook
106is the address of the optional user provided routine which frees
107memory for task stacks.  If this hook is not NULL, then a stack_allocate_hook
108must be provided as well.
109
110@end table
111
Note: See TracBrowser for help on using the repository browser.