| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Automatically reformat com32/lib/syslinux/shuffle_rm.c using Nindent.
Do this for all files except HDT, gPXE and externally maintained
libraries (zlib, tinyjpeg, libpng).
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
The value of esp set in real-mode shuffles was wrong. This
unfortunately broke linux.c32 :(
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
Define macros for common constructs to clean up the rm trampoline
generator.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
| |
For extra paranoia's sake, set up SS:ESP immediately after the
real-mode switch, and then set all the segment registers.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
|
|
| |
Try to make the code just a little easier to read.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
KVM uses V86 mode to simulate real mode. This causes problems with
the new shuffler. This changes the shuffler handover to be in
16-bit protected mode instead, and requires the stub to do the actual
entry to real mode. For the KVM hack to work, all segments must have:
(seg.base & 0xfff0000f) == 0 && seg.limit == 0xffff
As a result, we have to make sure the real-mode entry stub is
paragraph-aligned, lest we violate the first criterion.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
|
|
|
|
|
|
|
|
| |
Change the stub location algorithm to prefer low memory above
0x800; above 0x510 if that is unavailable. Also add the ability
to invoke the real-mode code with IF=1 if so is desired.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
|
|
|
| |
Update copyright notices; add Intel copyright notices where appropriate.
|
|
|
|
|
|
|
|
|
| |
Make the new shuffler actually work. This includes changing
rllpack.inc to run in 32-bit mode (since simple_pm_call now switches
to 32-bit mode) and changing the new shuffler interface to move the
shuffle list before actually doing any work.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
|
| |
|
| |
|
|
|
|
|
| |
- Add an API function to shuffle and boot which sets *all* RM registers;
- Move those structures to <syslinux/bootpm.h> and <syslinux/bootrm.h>
|
|
|
|
|
|
| |
The shuffle and boot interface, including the library support, should now
work as advertised. Add an ELF-loading module as a demo, and it's probably
useful for someone, too.
|
|
Initial checkin of a wrapper infrastructure for the "shuffle and boot"
interface, both real and protected mode. This code automatically will
figure out the necessary sequence of moves, taking into account swaps
and overlaps as necessary.
|