Skip to content
  • Peter Maydell's avatar
    45dd668f
    hw/arm/highbank: Drop unused secondary boot stub code · 45dd668f
    Peter Maydell authored
    
    
    The highbank and midway board code includes boot-stub code for
    handling secondary CPU boot which keeps the secondaries in a pen
    until the primary writes to a known location with the address they
    should jump to.
    
    This code is never used, because the boards enable QEMU's PSCI
    emulation, so secondary CPUs are kept powered off until the PSCI call
    which turns them on, and then start execution from the address given
    by the guest in that PSCI call.  Delete the unreachable code.
    
    (The code was wrong for midway in any case -- on the Cortex-A15 the
    GIC CPU interface registers are at a different offset from PERIPHBASE
    compared to the Cortex-A9, and the code baked-in the offsets for
    highbank's A9.)
    
    Note that this commit implicitly depends on the preceding "Don't
    write secondary boot stub if using PSCI" commit -- the default
    secondary-boot stub code overlaps with one of the highbank-specific
    bootcode rom blobs, so we must suppress the secondary-boot
    stub code entirely, not merely replace the highbank-specific
    version with the default.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Reviewed-by: default avatarNiek Linnenbank <nieklinnenbank@gmail.com>
    Tested-by: default avatarCédric Le Goater <clg@kaod.org>
    Tested-by: default avatarNiek Linnenbank <nieklinnenbank@gmail.com>
    Message-id: 20220127154639.2090164-15-peter.maydell@linaro.org
    45dd668f
    hw/arm/highbank: Drop unused secondary boot stub code
    Peter Maydell authored
    
    
    The highbank and midway board code includes boot-stub code for
    handling secondary CPU boot which keeps the secondaries in a pen
    until the primary writes to a known location with the address they
    should jump to.
    
    This code is never used, because the boards enable QEMU's PSCI
    emulation, so secondary CPUs are kept powered off until the PSCI call
    which turns them on, and then start execution from the address given
    by the guest in that PSCI call.  Delete the unreachable code.
    
    (The code was wrong for midway in any case -- on the Cortex-A15 the
    GIC CPU interface registers are at a different offset from PERIPHBASE
    compared to the Cortex-A9, and the code baked-in the offsets for
    highbank's A9.)
    
    Note that this commit implicitly depends on the preceding "Don't
    write secondary boot stub if using PSCI" commit -- the default
    secondary-boot stub code overlaps with one of the highbank-specific
    bootcode rom blobs, so we must suppress the secondary-boot
    stub code entirely, not merely replace the highbank-specific
    version with the default.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Reviewed-by: default avatarNiek Linnenbank <nieklinnenbank@gmail.com>
    Tested-by: default avatarCédric Le Goater <clg@kaod.org>
    Tested-by: default avatarNiek Linnenbank <nieklinnenbank@gmail.com>
    Message-id: 20220127154639.2090164-15-peter.maydell@linaro.org
Loading