• Nicolas Pitre's avatar
    ARM: 8032/1: bL_switcher: fix validation check before its activation · 4530e4b6
    Nicolas Pitre authored
    The switcher should not depend on MAX_CLUSTER to determine ifit should
    be activated or not. In a multiplatform kernel binary it is possible to
    have dual-cluster and quad-cluster platforms configured in. In that case
    MAX_CLUSTER which is a build time limit should be 4 and that shouldn't
    prevent the switcher from working if the kernel is booted on a b.L
    dual-cluster system.
    
    In bL_switcher_halve_cpus() we already have a runtime validation check
    to make sure we're dealing with only two clusters, so booting on a quad
    cluster system will be caught and switcher activation aborted.
    
    However, the b.L switcher must ensure the MCPM layer is initialized on
    the booted hardware before doing anything.  The mcpm_is_available()
    function is added to that effect.
    Signed-off-by: default avatarNicolas Pitre <nico@linaro.org>
    Tested-by: default avatarAbhilash Kesavan <kesavan.abhilash@gmail.com>
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    4530e4b6
bL_switcher.c 20.7 KB