Age | Commit message (Collapse) | Author | Files | Lines |
|
QEMU places setup_data at a particular location, which cannot be
relocated due to it containing self references in absolute address
terms. For this reason, it supplies the intended location in
FW_CFG_SETUP_ADDR. That is what is used in the option ROMs provided
by QEMU, use this too in qboot.
This also has the effect of removing the 8k limit on the copied size,
since the header is copied to the right location from the beginning.
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Message-Id: <20220916133603.693135-1-Jason@zx2c4.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
|
|
These changes (along with corresponding QEMU and Linux kernel changes)
enable a guest to be booted using the x86/HVM direct boot ABI.
QEMU parses the uncompressed kernel binary passed to it via -kernel
to read the ELF Note which contains the address to be loaded. QEMU
then depends on qboot to populate the start_info struct needed by
the direct boot ABI and configure the guest e820 tables before
jumping to the loaded kernel entry.
Signed-off-by: George Kennedy <George.Kennedy@oracle.com>
Signed-off-by: Liam Merwick <Liam.Merwick@oracle.com>
|
|
Move lduw_p, ldl_p, stw_p, stl_p from linuxboot.c to
include/memaccess.h so they can be reused more easily.
Signed-off-by: Liam Merwick <liam.merwick@oracle.com>
|
|
Benchmarking IO port addresses and return values are now defined
through a dedicated header.
Each exit point can have its own IO port address and return value.
With this we are able to discriminate between similar code paths
through the QEMU process return values or between different
code paths by having the QEMU debugexit device monitoring
different IO port addresses.
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
|
|
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
Otherwise the real mode data segments keep G=D=1.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
|
|
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
This will make it possible to load the vmlinuz from CBFS. We need
some contortions because QEMU splits the real mode and protected
mode parts of vmlinuz in different fw_cfg files.
The parsing code is lifted from QEMU.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
|
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|