Skip to content
  • Peter Maydell's avatar
    ae2474f1
    hw/arm: imx: Don't enable PSCI conduit when booting guest in EL3 · ae2474f1
    Peter Maydell authored
    
    
    Change the iMX-SoC based boards to use the new boot.c functionality
    to allow us to enable psci-conduit only if the guest is being booted
    in EL1 or EL2, so that if the user runs guest EL3 firmware code our
    PSCI emulation doesn't get in its way.
    
    To do this we stop setting the psci-conduit property on the CPU
    objects in the SoC code, and instead set the psci_conduit field in
    the arm_boot_info struct to tell the common boot loader code that
    we'd like PSCI if the guest is starting at an EL that it makes
    sense with.
    
    This affects the mcimx6ul-evk and mcimx7d-sabre boards.
    
    Note that for the mcimx7d board, this means that when running guest
    code at EL3 there is currently no way to power on the secondary CPUs,
    because we do not currently have a model of the system reset
    controller module which should be used to do that for the imx7 SoC,
    only for the imx6 SoC.  (Previously EL3 code which knew it was
    running on QEMU could use a PSCI call to do this.) This doesn't
    affect the imx6ul-evk board because it is uniprocessor.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Tested-by: default avatarEdgar E. Iglesias <edgar.iglesias@xilinx.com>
    Tested-by: default avatarCédric Le Goater <clg@kaod.org>
    Acked-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Message-id: 20220127154639.2090164-5-peter.maydell@linaro.org
    ae2474f1
    hw/arm: imx: Don't enable PSCI conduit when booting guest in EL3
    Peter Maydell authored
    
    
    Change the iMX-SoC based boards to use the new boot.c functionality
    to allow us to enable psci-conduit only if the guest is being booted
    in EL1 or EL2, so that if the user runs guest EL3 firmware code our
    PSCI emulation doesn't get in its way.
    
    To do this we stop setting the psci-conduit property on the CPU
    objects in the SoC code, and instead set the psci_conduit field in
    the arm_boot_info struct to tell the common boot loader code that
    we'd like PSCI if the guest is starting at an EL that it makes
    sense with.
    
    This affects the mcimx6ul-evk and mcimx7d-sabre boards.
    
    Note that for the mcimx7d board, this means that when running guest
    code at EL3 there is currently no way to power on the secondary CPUs,
    because we do not currently have a model of the system reset
    controller module which should be used to do that for the imx7 SoC,
    only for the imx6 SoC.  (Previously EL3 code which knew it was
    running on QEMU could use a PSCI call to do this.) This doesn't
    affect the imx6ul-evk board because it is uniprocessor.
    
    Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Tested-by: default avatarEdgar E. Iglesias <edgar.iglesias@xilinx.com>
    Tested-by: default avatarCédric Le Goater <clg@kaod.org>
    Acked-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Message-id: 20220127154639.2090164-5-peter.maydell@linaro.org
Loading