diff options
author | Ronald G. Minnich <rminnich@gmail.com> | 2018-07-18 07:19:30 -0700 |
---|---|---|
committer | Ronald G. Minnich <rminnich@gmail.com> | 2018-07-18 21:32:26 +0000 |
commit | eeb83b6b53fc72fda60dea31fc7e0cf155ccdecf (patch) | |
tree | 2ae9b80f8db0df49df53fa415a0a6e35a819a14d /src/arch/arm64/transition.c | |
parent | ebde6595035a960e25ab74bdcfffaed45d16e7a6 (diff) |
linux_trampoline: use trampoline RAM for the GDT
The linux trampoline was modifying the existing GDT
to add the 0x10 and 0x18 descriptors for Linux.
This will not work when the existing GDT is in ROM.
Change the code to set up a new GDT in what we know to be
RAM.
Tested by booting a linux payload. The main reason this works
is that Linux almost immediately loads its own GDT and then
segment registers. This GDT is a very temporary bridge.
Note that none of this change used to be necessary; the coreboot
GDT was originally compatible with Linux (ca 2000);
then Linux changed.
Change-Id: I13990052fbfd6a500adab8a2db8f7aead1d24fa6
Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Reviewed-on: https://review.coreboot.org/27529
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Diffstat (limited to 'src/arch/arm64/transition.c')
0 files changed, 0 insertions, 0 deletions