diff options
author | jmg <jmg@FreeBSD.org> | 2005-03-16 07:56:21 +0000 |
---|---|---|
committer | jmg <jmg@FreeBSD.org> | 2005-03-16 07:56:21 +0000 |
commit | 0ef117a450d0c1dfd7fb6ec6b6ff29ca53892891 (patch) | |
tree | 641d81a17ffa13fc445d10f00d7e0f9d3bbd8e3e /sys | |
parent | 40dbd0165cc20a181da6a5c17b8584c52587e129 (diff) | |
download | FreeBSD-src-0ef117a450d0c1dfd7fb6ec6b6ff29ca53892891.zip FreeBSD-src-0ef117a450d0c1dfd7fb6ec6b6ff29ca53892891.tar.gz |
MFp4: add in making fiq's work by coping to the correct page incase we have
the vectors relocated high..
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arm/arm/fiq.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arm/arm/fiq.c b/sys/arm/arm/fiq.c index 46901e13..f990812 100644 --- a/sys/arm/arm/fiq.c +++ b/sys/arm/arm/fiq.c @@ -46,6 +46,7 @@ __FBSDID("$FreeBSD$"); #include <vm/vm.h> #include <machine/pcb.h> #include <vm/pmap.h> +#include <machine/cpu.h> TAILQ_HEAD(, fiqhandler) fiqhandler_stack = TAILQ_HEAD_INITIALIZER(fiqhandler_stack); @@ -73,7 +74,7 @@ fiq_installhandler(void *func, size_t size) vector_page_setprot(VM_PROT_READ|VM_PROT_WRITE); #endif - memcpy(fiqvector, func, size); + memcpy(vector_page + fiqvector, func, size); #if !defined(__ARM_FIQ_INDIRECT) vector_page_setprot(VM_PROT_READ); |