source: rtems/c/src/lib/libcpu/powerpc/old-exceptions/README @ acc25ee

4.104.114.84.95
Last change on this file since acc25ee was acc25ee, checked in by Joel Sherrill <joel.sherrill@…>, on Dec 2, 1999 at 2:31:19 PM

Merged of mcp750 and mvme2307 BSP by Eric Valette <valette@…>.
As part of this effort, the mpc750 libcpu code is now shared with the
ppc6xx.

  • Property mode set to 100644
File size: 2.8 KB
Line 
1#
2#  $Id$
3#
4
5There are various issues regarding this port:
6
7
8
91) Legal
10
11This port is written by Andrew Bray <andy@i-cubed.co.uk>, and
12is copyright 1995 i-cubed ltd.
13
14This port was later updated by Joel Sherrill <joel@OARcorp.com>
15to test the support for the PPC603, PPC603e, and MPC604.  This
16was tested on the PowerPC simulator PSIM and a VMEbus single board
17computer.
18
192) CPU support.
20
21This release fully supports the PPC403GA, PPC403GB, PPC603, PPC603e,
22MPC604, MPC750, and numerous MPC8xx processors.  A good faith attempt
23has been made to include support other models based upon available
24documentation including the MPC5xx.  There are two interrupt structures
25supported by the PowerPC port.  The newer structure is supported by
26all the MPC750 and MPC604 BSPs.  This structure is required to use
27the RDBG remote debugging support.
28
29This port was originally written and tested on the PPC403GA (using
30software floating point).  Current ports are tested primarily on
3160x CPUs using the PowerPC simulator PSIM.
32
33Andrew Bray received assistance during the initial porting effort
34from IBM and Blue Micro and we would like to gratefully acknowledge
35that help.
36
37The support for the PPC602 processor is incomplete as only sketchy
38data is currently available.  Perhaps this model has been dropped.
39
403) Application Binary Interface
41
42In the context of RTEMS, the ABI is of interest for the following
43aspects:
44
45a)  Register usage.  Which registers are used to provide static variable
46    linkage, stack pointer etc.
47
48b)  Function calling convention.  How parameters are passed, how function
49    variables should be invoked, how values are returned, etc.
50
51c)  Stack frame layout.
52
53I am aware of a number of ABIs for the PowerPC:
54
55a)  The PowerOpen ABI.  This is the original Power ABI used on the RS/6000.
56    This is the only ABI supported by versions of GCC before 2.7.0.
57
58b)  The SVR4 ABI.  This is the ABI defined by SunSoft for the Solaris port
59    to the PowerPC.
60
61c)  The Embedded ABI.  This is an embedded ABI for PowerPC use, which has no
62    operating system interface defined.  It is promoted by SunSoft, Motorola,
63    and Cygnus Support.  Cygnus are porting the GNU toolchain to this ABI.
64
65d)  GCC 2.7.0.  This compiler is partway along the road to supporting the EABI,
66    but is currently halfway in between.
67
68This port was built and tested using the PowerOpen ABI, with the following
69caveat:  we used an ELF assembler and linker.  So some attention may be
70required on the assembler files to get them through a traditional (XCOFF)
71PowerOpen assembler.
72
73This port contains support for the other ABIs, but this may prove to be
74incomplete as it is untested.
75
76The RTEMS PowerPC port supports EABI as the primary ABI.  The powerpc-rtems
77GNU toolset configuration is EABI.
78
79Andrew Bray,   4 December 1995
80Joel Sherrill, 16 July 1997
Note: See TracBrowser for help on using the repository browser.