git: a6add87b5e17 - main - arm64: Load SOCDEV_PA as a literal rather than an immediate
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 12 May 2026 16:55:32 UTC
The branch main has been updated by andrew:
URL: https://cgit.FreeBSD.org/src/commit/?id=a6add87b5e174702261f3b8e8022791ed4ab9898
commit a6add87b5e174702261f3b8e8022791ed4ab9898
Author: Sarah Walker <sarah.walker2@arm.com>
AuthorDate: 2026-05-12 12:15:49 +0000
Commit: Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2026-05-12 16:54:41 +0000
arm64: Load SOCDEV_PA as a literal rather than an immediate
When EARLY_PRINTK is used in a realm environment, the UART physical
address must be in the unprotected address space. The resulting
physical address will not generally fit in an immediate, so use a
literal instead.
Reviewed by: andrew
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D56600
---
sys/arm64/arm64/locore.S | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S
index 14300eceb6d5..b200aa93c281 100644
--- a/sys/arm64/arm64/locore.S
+++ b/sys/arm64/arm64/locore.S
@@ -799,7 +799,7 @@ common:
adrp x9, socdev_va
str x17, [x9, :lo12:socdev_va]
- mov x9, #(SOCDEV_PA & ~L2_OFFSET) /* PA start */
+ ldr x9, =(SOCDEV_PA) /* PA start */
mov x10, #1
bl build_l2_block_pagetable
#endif