GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / cfe / cfe / applets / minicrt0.S
blob2f030fb22ddd1be5f6af45dc1df38181915d2d40
1 /*  *********************************************************************
2     *  Broadcom Common Firmware Environment (CFE)
3     *  
4     *  Mini startup module for CFE apps         File: minicrt0.S
5     *
6     *  About the most minimal startup routine you can get.
7     *  
8     *  Author:  Mitch Lichtenberg (mpl@broadcom.com)
9     *  
10     *********************************************************************  
11     *
12     *  Copyright 2000,2001,2002,2003
13     *  Broadcom Corporation. All rights reserved.
14     *  
15     *  This software is furnished under license and may be used and 
16     *  copied only in accordance with the following terms and 
17     *  conditions.  Subject to these conditions, you may download, 
18     *  copy, install, use, modify and distribute modified or unmodified 
19     *  copies of this software in source and/or binary form.  No title 
20     *  or ownership is transferred hereby.
21     *  
22     *  1) Any source code used, modified or distributed must reproduce 
23     *     and retain this copyright notice and list of conditions 
24     *     as they appear in the source file.
25     *  
26     *  2) No right is granted to use any trade name, trademark, or 
27     *     logo of Broadcom Corporation.  The "Broadcom Corporation" 
28     *     name may not be used to endorse or promote products derived 
29     *     from this software without the prior written permission of 
30     *     Broadcom Corporation.
31     *  
32     *  3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR
33     *     IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED
34     *     WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 
35     *     PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT 
36     *     SHALL BROADCOM BE LIABLE FOR ANY DAMAGES WHATSOEVER, AND IN 
37     *     PARTICULAR, BROADCOM SHALL NOT BE LIABLE FOR DIRECT, INDIRECT,
38     *     INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 
39     *     (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
40     *     GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
41     *     BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
42     *     OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 
43     *     TORT (INCLUDING NEGLIGENCE OR OTHERWISE), EVEN IF ADVISED OF 
44     *     THE POSSIBILITY OF SUCH DAMAGE.
45     ********************************************************************* */
48 #include "sbmips.h"
51  * This module should be linked first!
52  */
54 #define STACK_SIZE 8192
56                 .bss
57                 .comm   stack_bottom,STACK_SIZE
58                 .comm   __junk,4
60                 .text
62                 .extern appletmain
63                 .globl __start
65 __start:
67         /*
68          * Set up our GP (in case we're using it)
69          * Set up the stack pointer (don't use CFE's stack)
70          */
72                 la      gp,_gp
73                 la      sp,stack_bottom+STACK_SIZE-32
75         /*
76          * Zero BSS.  No need to do this very efficiently, do it
77          * 32 bits at a time to ensure we can compile this
78          * with -mips1.
79          */
81                 la      t0,_fbss
82                 la      t1,_end
84 1:              sw      zero,0(t0)
85                 add     t0,4
86                 blt     t0,t1,1b
88         /*
89          * Jump to main program.  Note that we didn't trash A0..A3,
90          * our application will need them.  So, if you add stuff here,
91          * be sure to preserve the A0..A3 registers for the C code.
92          */
94                 j       appletmain