• Geert Uytterhoeven's avatar
    crypto: ccree - simplify Runtime PM handling · 8c7849a3
    Geert Uytterhoeven authored
    Currently, a large part of the probe function runs before Runtime PM is
    enabled.  As the driver manages the device's clock manually, this may
    work fine on some systems, but may break on platforms with a more
    complex power hierarchy.
    
    Fix this by moving the initialization of Runtime PM before the first
    register access (in cc_wait_for_reset_completion()), and putting the
    device to sleep only after the last access (in cc_set_ree_fips_status()).
    
    This allows to remove the pm_on flag, which was used to track manually
    if Runtime PM had been enabled or not.
    Remove the cc_pm_{init,go,fini}() wrappers, as they are called only
    once, and obscure operation.
    Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    8c7849a3
cc_driver.c 16.3 KB