source: rtems/bsps/sh/gensh2/start/start.rom @ ff081aee

Last change on this file since ff081aee was ff081aee, checked in by Sebastian Huber <sebastian.huber@…>, on Nov 6, 2018 at 3:58:02 PM

score: Rename interrupt stack symbols

Rename

  • _Configuration_Interrupt_stack_area_begin in _ISR_Stack_area_begin,
  • _Configuration_Interrupt_stack_area_end in _ISR_Stack_area_end, and
  • _Configuration_Interrupt_stack_size in _ISR_Stack_size.

Move definitions to <rtems/score/isr.h>. The new names are considerable
shorter and in the right namespace.

Update #3459.

  • Property mode set to 100644
File size: 1.5 KB
Line 
1/*
2 *  Authors: Ralf Corsepius (corsepiu@faw.uni-ulm.de) and
3 *           Bernd Becker (becker@faw.uni-ulm.de)
4 *
5 *  COPYRIGHT (c) 1997-1998, FAW Ulm, Germany
6 *
7 *  This program is distributed in the hope that it will be useful,
8 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
9 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10 *
11 *
12 *  COPYRIGHT (c) 1998.
13 *  On-Line Applications Research Corporation (OAR).
14 *
15 *  The license and distribution terms for this file may be
16 *  found in the file LICENSE in this distribution or at
17 *  http://www.rtems.org/license/LICENSE.
18 */
19
20#include "asm.h"
21
22        BEGIN_CODE
23        PUBLIC(start)
24SYM (start):
25        ! install the stack pointer
26        mov.l   stack_k,r15
27
28        ! zero out bss
29        mov.l   edata_k,r0
30        mov.l   end_k,r1
31        mov     #0,r2
320:
33        mov.l   r2,@r0
34        add     #4,r0
35        cmp/ge  r0,r1
36        bt      0b
37
38        ! copy the vector table from rom to ram
39        mov.l   vects_k,r0      ! vectab
40        mov     #0,r1           ! address of boot vector table
41        mov     #0,r2           | number of bytes copied
42        mov.w   vects_size,r3   ! size of entries in vectab
431:
44        mov.l   @r1+,r4
45        mov.l   r4,@r0
46        add     #4,r0
47        add     #1,r2
48        cmp/hi  r3,r2
49        bf      1b
50
51        mov.l   vects_k,r0      ! update vbr to point to vectab
52        ldc     r0,vbr
53
54        ! call the mainline     
55        mov #0,r4               ! argc
56        mov.l main_k,r0
57        jsr @r0
58        mov #0,r5               ! argv
59
60        ! call exit
61        mov     r0,r4
62        mov.l   exit_k,r0
63        jsr     @r0
64        or      r0,r0
65
66        END_CODE
67
68        .align 2
69stack_k:
70        .long   SYM(_ISR_Stack_area_end)
71edata_k:
72        .long   SYM(edata)
73end_k:
74        .long   SYM(end)
75main_k:
76        .long   SYM(boot_card)
77exit_k:
78        .long   SYM(exit)
79
80vects_k:
81        .long   SYM(vectab)
82vects_size:
83        .word   255
Note: See TracBrowser for help on using the repository browser.