Age | Commit message (Collapse) | Author |
|
|
|
This is needed for the following reason: our memory layout
looks like this:
| |vmlinux | |CFE| * |
| | |vmlinuz | |
^
Since CFE can only load to the spot marked with ‘^’ anyway,
we load vmlinub.elf there which is basically a big rodata
blob containing vmlinuz and minimal code moving it to the
location pointed with vmlinuz above. Another solution would
be to use CFE’s “boot -raw” to place it on the location marked
with ‘*’ above (but the CFE location and size are dynamic, and
since it insists on loading to 0x80001000 anyway, this point
is virtually moot).
Even worse, we probably cannot overwrite CFE space even late,
so we move vmlinuz like this:
| |vmlinux | |CFE| |vmlinuz | |
This way, both “Total memory used by CFE” and “Boot area
(physical)” (the latter as mapped into KSEG0) are retained.
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
|
|
This reverts commit f6897b395f6340132ab47a46fe587e8e6ced647a.
|
|
This is needed for the following reason: our memory layout
looks like this:
| |vmlinux | |CFE| * |
| | |vmlinuz | |
^
Since CFE can only load to the spot marked with ‘^’ anyway,
we load vmlinub.elf there which is basically a big rodata
blob containing vmlinuz and minimal code moving it to the
location pointed with vmlinuz above. Another solution would
be to use CFE’s “boot -raw” to place it on the location marked
with ‘*’ above (but the CFE location and size are dynamic, and
since it insists on loading to 0x80001000 anyway, this point
is virtually moot).
Even worse, we probably cannot overwrite CFE space even late,
so we move vmlinuz like this:
| |vmlinux | |CFE| |vmlinuz | |
This way, both “Total memory used by CFE” and “Boot area
(physical)” (the latter as mapped into KSEG0) are retained.
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
|
|
This reverts commit 5bd743ad60b85f005235aac2435563b168e012e3.
|
|
This is needed for the following reason: our memory layout
looks like this:
| |vmlinux | |CFE| * |
| | |vmlinuz | |
^
Since CFE can only load to the spot marked with ‘^’ anyway,
we load vmlinub.elf there which is basically a big rodata
blob containing vmlinuz and minimal code moving it to the
location pointed with vmlinuz above. Another solution would
be to use CFE’s “boot -raw” to place it on the location marked
with ‘*’ above (but the CFE location and size are dynamic, and
since it insists on loading to 0x80001000 anyway, this point
is virtually moot).
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
|
|
This reverts commit 80d8381811821445bc47cd6e46f1eea423d9fce5.
|
|
This is needed for the following reason: our memory layout
looks like this:
| |vmlinux | |CFE| * |
| | |vmlinuz | |
^
Since CFE can only load to the spot marked with ‘^’ anyway,
we load vmlinub.elf there which is basically a big rodata
blob containing vmlinuz and minimal code moving it to the
location pointed with vmlinuz above. Another solution would
be to use CFE’s “boot -raw” to place it on the location marked
with ‘*’ above (but the CFE location and size are dynamic, and
since it insists on loading to 0x80001000 anyway, this point
is virtually moot).
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
|