diff options
Diffstat (limited to 'c/src/lib/libbsp/arm/gumstix/startup/bspstart.c')
-rwxr-xr-x | c/src/lib/libbsp/arm/gumstix/startup/bspstart.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c b/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c new file mode 100755 index 0000000000..33e8efe87c --- /dev/null +++ b/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c @@ -0,0 +1,45 @@ +/* + * By Yang Xi <hiyangxi@gmail.com>. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + * + * $Id$ + */ + +#include <bsp.h> +#include <rtems/libcsupport.h> +#include <rtems/libio.h> +#include <pxa255.h> + +/* Function prototypes */ +extern void rtems_irq_mngt_init(void); + +/* + * + * NAME: bsp_start_default - BSP initialization function + * + * DESCRIPTION: + * This function is called before RTEMS is initialized and used + * adjust the kernel's configuration. + * + * This function also configures the CPU's memory protection unit. + * + * RESTRICTIONS/LIMITATIONS: + * Since RTEMS is not configured, no RTEMS functions can be called. + * + */ +void bsp_start_default( void ) +{ + /* disable interrupts */ + XSCALE_INT_ICMR = 0x0; + rtems_exception_init_mngt(); + rtems_irq_mngt_init(); +} /* bsp_start */ + +/* + * By making this a weak alias for bsp_start_default, a brave soul + * can override the actual bsp_start routine used. + */ +void bsp_start (void) __attribute__ ((weak, alias("bsp_start_default"))); |