summaryrefslogtreecommitdiffstats
path: root/sys/arm/arm/swtch.S
diff options
context:
space:
mode:
authorraj <raj@FreeBSD.org>2008-02-05 10:22:33 +0000
committerraj <raj@FreeBSD.org>2008-02-05 10:22:33 +0000
commita6d33e31649c175889ccaf55a0bf9374041e2667 (patch)
tree26cb5987a5c7544a3bc7975b6c1134fe1a52d180 /sys/arm/arm/swtch.S
parenta2636de674ca0feb2c4a25f90808e99029868d14 (diff)
downloadFreeBSD-src-a6d33e31649c175889ccaf55a0bf9374041e2667.zip
FreeBSD-src-a6d33e31649c175889ccaf55a0bf9374041e2667.tar.gz
Improve ARM_TP_ADDRESS and RAS area.
De-hardcode usage of ARM_TP_ADDRESS and RAS local storage, and move this special purpose page to a more convenient place i.e. after the vectors high page, more towards the end of address space. Previous location (0xe000_0000) caused grief if KVA was to go beyond the default limit. Note that ARM world rebuilding is required after this change since the location of ARM_TP_ADDRESS is shared between kernel and userland. Submitted by: Grzegorz Bernacki (gjb AT semihalf dot com) Reviewed by: imp Approved by: cognet (mentor)
Diffstat (limited to 'sys/arm/arm/swtch.S')
-rw-r--r--sys/arm/arm/swtch.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arm/arm/swtch.S b/sys/arm/arm/swtch.S
index 5d59f99..77703a2 100644
--- a/sys/arm/arm/swtch.S
+++ b/sys/arm/arm/swtch.S
@@ -205,7 +205,7 @@ ENTRY(cpu_throw)
/* Set the new tp */
ldr r6, [r5, #(TD_MD + MD_TP)]
- mov r5, #ARM_TP_ADDRESS
+ ldr r5, =ARM_TP_ADDRESS
strt r6, [r5]
/* Hook in a new pcb */
@@ -263,7 +263,7 @@ ENTRY(cpu_switch)
* them for the new process.
*/
/* Store the old tp */
- mov r3, #ARM_TP_ADDRESS
+ ldr r3, =ARM_TP_ADDRESS
ldrt r9, [r3]
str r9, [r0, #(TD_MD + MD_TP)]
OpenPOWER on IntegriCloud