Skip to content

Commit 5d8a00c

Browse files
committed
Initialise the raspi pagetables statically in rust instead of asm.
This is another step towards dynamic generation of aarch64 pagetables as early as possible, avoiding a 2 stage init. Signed-off-by: Graham MacDonald <grahamamacdonald@gmail.com>
1 parent 647f3d9 commit 5d8a00c

11 files changed

Lines changed: 472 additions & 545 deletions

File tree

Cargo.lock

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

aarch64/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ edition = "2024"
77
default-target = "aarch64-unknown-none"
88

99
[dependencies]
10-
aarch64-cpu = "10.0"
10+
aarch64-cpu = "11.2"
1111
bitstruct = "0.1"
1212
port = { path = "../port" }
1313
num_enum = { version = "0.7", default-features = false }

aarch64/lib/kernel.ld

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ SECTIONS {
5959

6060
/* Reserve section for early pagetables. */
6161
. = ALIGN(4096);
62+
earlyvm_pagetables = .;
63+
. += 32 * 4096;
64+
eearlyvm_pagetables = .;
65+
/* TODO Remove after new vm work */
6266
early_pagetables = .;
6367
. += 32 * 4096;
6468
eearly_pagetables = .;

0 commit comments

Comments
 (0)