diff options
| author | Michael Brown | 2016-02-19 01:56:20 +0100 |
|---|---|---|
| committer | Michael Brown | 2016-02-19 02:01:27 +0100 |
| commit | 6eb1c927a3e245dd571507e86bbde8e8a29f582b (patch) | |
| tree | 0117f6a9f7c96babf8ae7fa497ccb422bfcaea61 /src/interface | |
| parent | [librm] Provide an abstraction wrapper for prot_call (diff) | |
| download | ipxe-6eb1c927a3e245dd571507e86bbde8e8a29f582b.tar.gz ipxe-6eb1c927a3e245dd571507e86bbde8e8a29f582b.tar.xz ipxe-6eb1c927a3e245dd571507e86bbde8e8a29f582b.zip | |
[librm] Transition to protected mode within init_librm()
Long-mode operation will require page tables, which are too large to
sensibly fit in our .data16 segment in base memory.
Add a portion of init_librm() running in 32-bit protected mode to
provide access to high memory. Use this portion of init_librm() to
initialise the .textdata variables "virt_offset", "text16", and
"data16", eliminating the redundant (re)initialisation currently
performed on every mode transition as part of real_to_prot().
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/interface')
0 files changed, 0 insertions, 0 deletions
