• Ard Biesheuvel's avatar
    efi/x86: Add true mixed mode entry point into .compat section · 97aa2765
    Ard Biesheuvel authored
    Currently, mixed mode is closely tied to the EFI handover protocol
    and relies on intimate knowledge of the bootparams structure, setup
    header etc, all of which are rather byzantine and entirely specific
    to x86.
    
    Even though no other EFI supported architectures are currently known
    that could support something like mixed mode, it still makes sense to
    abstract a bit from this, and make it part of a generic Linux on EFI
    boot protocol.
    
    To that end, add a .compat section to the mixed mode binary, and populate
    it with the PE machine type and entry point address, allowing firmware
    implementations to match it to their native machine type, and invoke
    non-native binaries using a secondary entry point.
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    97aa2765
build.c 14 KB