arm_init.S revision 199767f8919635c4928607450d9e0abb932109ce
/*******************************************************************************
*
* Filename: arm_init.s
*
* Initialization for C-environment and basic operation. Adapted from
* ATMEL cstartup.s.
*
* Revision information:
*
* 20AUG2004 kb_admin initial creation
* 12JAN2005 kb_admin updated for 16KB eeprom
* Atmel stack prevents loading full size at once
*
* BEGIN_KBDD_BLOCK
* No warranty, expressed or implied, is included with this software. It is
* provided "AS IS" and no warranty of any kind including statutory or aspects
* relating to merchantability or fitness for any purpose is provided. All
* intellectual property rights of others is maintained with the respective
* owners. This software is not copyrighted and is intended for reference
* only.
* END_BLOCK
*
* $FreeBSD$
******************************************************************************/
/*
* Stack definitions
*
* Start near top of internal RAM.
*/
/* vectors - must reside at address 0 */
/* the format of this table is defined in the datasheet */
#ifdef BOOT_IIC
.long (TWI_EEPROM_SIZE >> 9)
#else
#ifdef BOOT_BWCT
.long ((528 << 17) | (13 << 13) | (12 * 2))
#else
.long ((1056 << 17) | (13 << 13) | (12 * 2))
#endif
#endif
/* Set stack and init for SVC */
/* Perform system initialization */
.extern _init
#ifndef BOOT_BOOT0
#endif
/* Start execution at main */
.extern main
/* main should not return. If it does, spin forever */
#ifdef BOOT_COMMANDS
/* the following section is used to store boot commands in */
/* non-volatile memory. */
#ifdef SUPPORT_LINUX
.string "Bootloader for KB9202 Evaluation Board."
.string "c 0x20210000 0x10100000 0x80000 "
.string "m 0 0 0 0 0 0 "
.string "e 0x10000000 "
.string " "
#else
#if 1
.string "m 42 53 44 0 0 1"
.string "ip 206 168 13 194"
.string "server_ip 206 168 13 207"
.string "tftp 0x20000000 kernel.bin"
.string "e 0x20000000"
#else
.string "m 42 53 44 0 0 1"
.string "k 0x20000000"
.string "e 0x20000000"
#endif
.word 0
#endif
#endif