source: rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/exc-vector-base.S @ 183af89

4.115
Last change on this file since 183af89 was 9e7758b, checked in by Sebastian Huber <sebastian.huber@…>, on 08/31/11 at 16:03:10

2011-08-31 Sebastian Huber <sebastian.huber@…>

  • startup/bspgetworkarea.c, startup/linkcmds.base: Removed files.
  • include/mpc55xx-config.h, make/custom/mpc5674fevb.cfg, startup/early-init.c, startup/ebi-cal-cs-config.c, startup/ebi-cs-config.c, startup/exc-vector-base.S, startup/fmpll-syncr-vals.c, startup/linkcmds.mpc5674fevb, startup/mmu-config.c, startup/siu-pcr-config.c: New files.
  • Makefile.am, preinstall.am: Reflect changes above.
  • startup/linkcmds.gwlcfm, startup/linkcmds.mpc5566evb, startup/linkcmds.phycore_mpc5554: Use linker command base file.
  • configure.ac: Support MPC5674F. Changed eSCI options.
  • clock/clock-config.c: Support MPC5674F.
  • i2c/i2c_init.c, network/smsc9218i.c, startup/sd-card-init.c: Update due to API changes.
  • include/bsp.h: Define BSP_INTERRUPT_STACK_AT_WORK_AREA_BEGIN.
  • network/if_smc.c: Use HAS_SMC91111.
  • startup/start.S, startup/bspstart.c: Moved low-level initialization into new files. Overall cleanup.
  • Property mode set to 100644
File size: 2.8 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup mpc55xx_asm
5 *
6 * @brief Exception minimum prologues.
7 */
8
9/*
10 * Copyright (c) 2011 embedded brains GmbH.  All rights reserved.
11 *
12 *  embedded brains GmbH
13 *  Obere Lagerstr. 30
14 *  82178 Puchheim
15 *  Germany
16 *  <rtems@embedded-brains.de>
17 *
18 * The license and distribution terms for this file may be
19 * found in the file LICENSE in this distribution or at
20 * http://www.rtems.com/license/LICENSE.
21 *
22 * $Id$
23 */
24
25/**
26 * @defgroup mpc55xx_asm Assembler files
27 *
28 * @ingroup mpc55xx
29 */
30
31#include <bspopts.h>
32
33#include <bsp/vectors.h>
34
35        .globl mpc55xx_exc_vector_base
36
37        .section ".bsp_start_data", "ax"
38
39#if 5510 <= MPC55XX_CHIP_TYPE && MPC55XX_CHIP_TYPE <= 5517
40        .align 12
41#else
42        .align 16
43#endif
44
45mpc55xx_exc_vector_base:
46
47        stw     r1, ppc_exc_lock_crit@sdarel(r13)
48        stw     r4, ppc_exc_vector_register_crit@sdarel(r13)
49        li      r4, -32767
50        b       ppc_exc_wrap_bookE_crit
51        stwu    r1, -EXC_GENERIC_SIZE(r1)
52        stw     r4, GPR4_OFFSET(r1)
53        li      r4, 2
54        b       ppc_exc_wrap_nopush_bookE_crit
55        stwu    r1, -EXC_GENERIC_SIZE(r1)
56        stw     r4, GPR4_OFFSET(r1)
57        li      r4, 3
58        b       ppc_exc_wrap_nopush_std
59        stwu    r1, -EXC_GENERIC_SIZE(r1)
60        stw     r4, GPR4_OFFSET(r1)
61        li      r4, 4
62        b       ppc_exc_wrap_nopush_std
63        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
64        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
65        li      r4, -32763
66        b       ppc_exc_wrap_async_normal
67        stwu    r1, -EXC_GENERIC_SIZE(r1)
68        stw     r4, GPR4_OFFSET(r1)
69        li      r4, 6
70        b       ppc_exc_wrap_nopush_std
71        stwu    r1, -EXC_GENERIC_SIZE(r1)
72        stw     r4, GPR4_OFFSET(r1)
73        li      r4, 7
74        b       ppc_exc_wrap_nopush_std
75        stwu    r1, -EXC_GENERIC_SIZE(r1)
76        stw     r4, GPR4_OFFSET(r1)
77        li      r4, 8
78        b       ppc_exc_wrap_nopush_std
79        stwu    r1, -EXC_GENERIC_SIZE(r1)
80        stw     r4, GPR4_OFFSET(r1)
81        li      r4, 12
82        b       ppc_exc_wrap_nopush_std
83        stwu    r1, -EXC_GENERIC_SIZE(r1)
84        stw     r4, GPR4_OFFSET(r1)
85        li      r4, 24
86        b       ppc_exc_wrap_nopush_std
87        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
88        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
89        li      r4, -32752
90        b       ppc_exc_wrap_async_normal
91        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
92        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
93        li      r4, -32749
94        b       ppc_exc_wrap_async_normal
95        stw     r1, ppc_exc_lock_crit@sdarel(r13)
96        stw     r4, ppc_exc_vector_register_crit@sdarel(r13)
97        li      r4, -32748
98        b       ppc_exc_wrap_bookE_crit
99        stwu    r1, -EXC_GENERIC_SIZE(r1)
100        stw     r4, GPR4_OFFSET(r1)
101        li      r4, 18
102        b       ppc_exc_wrap_nopush_std
103        stwu    r1, -EXC_GENERIC_SIZE(r1)
104        stw     r4, GPR4_OFFSET(r1)
105        li      r4, 17
106        b       ppc_exc_wrap_nopush_std
107        stwu    r1, -EXC_GENERIC_SIZE(r1)
108        stw     r4, GPR4_OFFSET(r1)
109        li      r4, 13
110        b       ppc_exc_wrap_nopush_bookE_crit
111        stwu    r1, -EXC_GENERIC_SIZE(r1)
112        stw     r4, GPR4_OFFSET(r1)
113        li      r4, 10
114        b       ppc_exc_wrap_nopush_std
115        stwu    r1, -EXC_GENERIC_SIZE(r1)
116        stw     r4, GPR4_OFFSET(r1)
117        li      r4, 25
118        b       ppc_exc_wrap_nopush_std
119        stwu    r1, -EXC_GENERIC_SIZE(r1)
120        stw     r4, GPR4_OFFSET(r1)
121        li      r4, 26
122        b       ppc_exc_wrap_nopush_std
123        stwu    r1, -EXC_GENERIC_SIZE(r1)
124        stw     r4, GPR4_OFFSET(r1)
125        li      r4, 15
126        b       ppc_exc_wrap_nopush_std
Note: See TracBrowser for help on using the repository browser.