commit | f12c67c9a363c7a86651d2983c96368c6dadef0e | [log] [tgz] |
---|---|---|
author | Travis Geiselbrecht <travisg@google.com> | Wed Jan 27 00:08:17 2021 +0000 |
committer | CQ Bot <commit-bot@chromium.org> | Wed Jan 27 00:08:17 2021 +0000 |
tree | dfc8a50f99486b00cbb60c610ea4569d5ef570f5 | |
parent | a76d9181a9731c02d2663df4c16242c123931b77 [diff] |
[kernel][arm64][mmu] use 4K page granules for the bootstrap trampoline Currently the start.S code is more clever than it probably should be and compile time decides what size page granules to use to map the large (1GB/512MB) page around the current code at boot to trampoline to the high address. It's currently set to use 64KB page granules in the temporary address space it uses. This is generally fine except 64K pages are technically optional according to the ARM ARM. Switch to using 4K pages always which are more or less mandatory, or at least mandatory to zircon. This avoids any issues booting on cpus that don't support 64K pages. This reduces the size of the physical address space the kernel needs to be physically located in at boot time, but 39 bits is still pretty good, and it's unlikely we'll encounter a cpu where the kernel is loaded outside of that range. Change-Id: Idc962ebf39d689ec124f20392f910d38824c0b3c Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/464055 Commit-Queue: Travis Geiselbrecht <travisg@google.com> Reviewed-by: Adrian Danis <adanis@google.com>
Pink + Purple == Fuchsia (a new operating system)
Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.
Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.
Read more about Fuchsia's principles.
See Getting Started.
See fuchsia.dev.