This patch introduces x86_64 (64-bit) support to the payload, building upon the existing x86 (32-bit) architecture. Files necessary for 64-bit compilation are now guarded by the `CONFIG_LP_ARCH_X86_64` Kconfig option. BUG=b:242829490 TEST=Able to verify all valid combinations between coreboot and payload with this patch. Payload Entry Point Behavior with below code. +----------------+--------------------+----------------------------+ | LP_ARCH_X86_64 | Payload Entry Mode | Description | +----------------+--------------------+----------------------------+ | No | 32-bit | Direct protected mode init | +----------------+--------------------+----------------------------+ | Yes | 32-bit | Protected to long mode | +----------------+--------------------+----------------------------+ | Yes | 64-bit | Long mode initialization | +----------------+--------------------+----------------------------+ Change-Id: I69fda47bedf1a14807b1515c4aed6e3a1d5b8585 Signed-off-by: Subrata Banik <subratabanik@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/81968 Reviewed-by: Julius Werner <jwerner@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> |
||
|---|---|---|
| .. | ||
| apic.c | ||
| boot_media.c | ||
| cache.c | ||
| coreboot.c | ||
| delay.c | ||
| exception.c | ||
| exception_asm.S | ||
| exception_asm_64.S | ||
| exec.c | ||
| exec.S | ||
| gdb.c | ||
| head.S | ||
| head_64.S | ||
| Kconfig | ||
| libpayload.ldscript | ||
| main.c | ||
| Makefile.mk | ||
| multiboot.c | ||
| multiboot_header.inc | ||
| pt.S | ||
| selfboot.c | ||
| string.c | ||
| sysinfo.c | ||
| timer.c | ||
| util.S | ||
| virtual.c | ||