• Alex Elder's avatar
    ARM: bcm: have bcm_kona_smc() return request result · 6c90f108
    Alex Elder authored
    Currently it is assumed that SEC_ROM_RET_OK is the only valid "good"
    result of a secure monitor request.  However the values that can be
    returned by a secure monitor request are dependent on which service
    id was provided.
    
    We therefore should handle the result in a request-dependent way.
    The most natural way to do that is to have the initiator of the
    request--where bcm_kona_smc() is called--handle the result in a way
    appropriate to the request.
    
    An "smc" operation must be performed only on core 0, while the
    request can be initiated from any core.  To pass back the request
    result, we add a new field to the bcm_kona_smc_data structure, and
    have bcm_kona_smc() return that value rather than 0.
    
    There's only one caller right now.  Move the existing check of the
    result out of __bcm_kona_smc() and into the kona_l2_cache_init()
    where the SSAPI_ENABLE_L2_CACHE request is initiated.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Reviewed-by: default avatarTim Kryger <tim.kryger@linaro.org>
    Reviewed-by: default avatarMarkus Mayer <markus.mayer@linaro.org>
    Reviewed-by: default avatarMatt Porter <mporter@linaro.org>
    Signed-off-by: default avatarMatt Porter <mporter@linaro.org>
    6c90f108
kona.c 1.26 KB