• Geert Uytterhoeven's avatar
    pinctrl: sh-pfc: Save/restore registers for PSCI system suspend · 8843797d
    Geert Uytterhoeven authored
    During PSCI system suspend, R-Car Gen3 SoCs are powered down, and their
    pinctrl register state is lost.  Note that as the boot loader skips most
    initialization after system resume, pinctrl register state differs from
    the state encountered during normal system boot, too.
    
    To fix this, save all GPIO and peripheral function select, module
    select, drive strength control, bias, and other I/O control registers
    during system suspend, and restore them during system resume.
    
    Note that to avoid overhead on platforms not needing it, the
    suspend/resume code has a build time dependency on sleep and PSCI
    support, and a runtime dependency on PSCI.
    
    Inspired by a patch in the BSP by Hien Dang.
    Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
    8843797d
core.c 17.7 KB