diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-08-10 03:16:35 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2009-08-10 03:16:35 +0000 |
commit | 6522e79aa6f9eed8d503f4d4103fff78a182d8c0 (patch) | |
tree | a8bde4359c03b8d3954cb60763a545faa51d3a3c /c/src/lib/libbsp/arm/rtl22xx/startup | |
parent | 2009-08-09 Joel Sherrill <joel.sherrill@oarcorp.com> (diff) | |
download | rtems-6522e79aa6f9eed8d503f4d4103fff78a182d8c0.tar.bz2 |
2009-08-09 Joel Sherrill <joel.sherrill@oarcorp.com>
* configure.ac, startup/bspreset.c: Add Skyeye reset device.
Diffstat (limited to 'c/src/lib/libbsp/arm/rtl22xx/startup')
-rw-r--r-- | c/src/lib/libbsp/arm/rtl22xx/startup/bspreset.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/c/src/lib/libbsp/arm/rtl22xx/startup/bspreset.c b/c/src/lib/libbsp/arm/rtl22xx/startup/bspreset.c index 9af7807a37..2bad09cd68 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/startup/bspreset.c +++ b/c/src/lib/libbsp/arm/rtl22xx/startup/bspreset.c @@ -13,20 +13,25 @@ void bsp_reset(void) { - rtems_interrupt_level level; +#if ON_SKYEYE == 1 + #define SKYEYE_MAGIC_ADDRESS (*(volatile unsigned int *)(0xb0000000)) - rtems_interrupt_disable(level); + SKYEYE_MAGIC_ADDRESS = 0xff; +#else + rtems_interrupt_level level; -#ifdef __thumb__ - int tmp; - asm volatile (" .code 16 \n" \ - "ldr %[tmp], =_start \n" \ - "bx %[tmp] \n" \ - "nop \n" \ - : [tmp]"=&r" (tmp) ); -#else - asm volatile ("b _start"); -#endif + rtems_interrupt_disable(level); + #ifdef __thumb__ + int tmp; + asm volatile (" .code 16 \n" \ + "ldr %[tmp], =_start \n" \ + "bx %[tmp] \n" \ + "nop \n" \ + : [tmp]"=&r" (tmp) ); + #else + asm volatile ("b _start"); + #endif while(1); +#endif } |