summaryrefslogtreecommitdiffstats
path: root/bsps/powerpc/virtex/start/bspstart.c
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/powerpc/virtex/start/bspstart.c')
-rw-r--r--bsps/powerpc/virtex/start/bspstart.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/bsps/powerpc/virtex/start/bspstart.c b/bsps/powerpc/virtex/start/bspstart.c
index a4054f1b36..641eff9071 100644
--- a/bsps/powerpc/virtex/start/bspstart.c
+++ b/bsps/powerpc/virtex/start/bspstart.c
@@ -12,7 +12,7 @@
* Author: Thomas Doerfler <td@imd.m.isar.de>
* IMD Ingenieurbuero fuer Microcomputertechnik
*
- * COPYRIGHT (c) 1998 by IMD
+ * Copyright (c) 1998 IMD Ingenieurbuero fuer Microcomputertechnik
*
* Changes from IMD are covered by the original distributions terms.
* This file has been derived from the papyrus BSP:
@@ -36,7 +36,7 @@
* with linker command file by
* Thomas Doerfler <td@imd.m.isar.de>
* for these modifications:
- * COPYRIGHT (c) 1997 by IMD, Puchheim, Germany.
+ * Copyright (c) 1997 IMD Ingenieurbuero fuer Microcomputertechnik
*
* To anyone who acknowledges that this file is provided "AS IS"
* without any express or implied warranty:
@@ -98,7 +98,13 @@ void bsp_start( void )
(uintptr_t) _ISR_Stack_area_begin,
virtex_exc_vector_base
);
- __asm__ volatile ("mtevpr %0" : : "r" (virtex_exc_vector_base));
+ __asm__ volatile (
+ ".machine \"push\"\n"
+ ".machine \"any\"\n"
+ "mtevpr %0\n"
+ ".machine \"pop\"" : :
+ "r" (virtex_exc_vector_base)
+ );
bsp_interrupt_initialize();
}