hermit-os / loader

The Hermit bootloader.
Apache License 2.0
68 stars 22 forks source link

Support QEMU 7 with aarch64 #99

Closed mkroening closed 2 years ago

mkroening commented 2 years ago

git-bisect found QEMU@7a928f causing the failure.

7a928f43d8724bdf0777d7fc67a5ad973a0bf4bf is the first bad commit
commit 7a928f43d8724bdf0777d7fc67a5ad973a0bf4bf
Author: Richard Henderson <richard.henderson@linaro.org>
Date:   Tue Mar 1 11:59:50 2022 -1000

    target/arm: Implement FEAT_LPA

    This feature widens physical addresses (and intermediate physical
    addresses for 2-stage translation) from 48 to 52 bits, when using
    64k pages.  The only thing left at this point is to handle the
    extra bits in the TTBR and in the table descriptors.

    Note that PAR_EL1 and HPFAR_EL2 are nominally extended, but we don't
    mask out the high bits when writing to those registers, so no changes
    are required there.

    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
    Message-id: 20220301215958.157011-11-richard.henderson@linaro.org
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

 docs/system/arm/emulation.rst |  1 +
 target/arm/cpu-param.h        |  2 +-
 target/arm/cpu64.c            |  2 +-
 target/arm/helper.c           | 19 ++++++++++++++++---
 4 files changed, 19 insertions(+), 5 deletions(-)