• Ranjani Vaidyanathan's avatar
    ENGR00209617 MX6x - Add WAIT mode workaround · 40f361bc
    Ranjani Vaidyanathan authored
    To avoid the ARM from accepting an interrupt in the dangerous
    window, reduce the ARM core freq just before the sytem is
    about to enter WAIT state.
    Reduce the ARM freq so as to maintain 12:5 ARM_CLK to IPG
    ratio. Use the ARM_PODF to drop the frequency.
    In a multicore case the frequency is dropped only when all the
    4 cores are going to be in WFI.
    
    In case of single core environment, its easy to drop the ARM core
    freq just before WFI since there is no need to identify the state of
    the other cores.
    
    Some other points to note:
    1. If "mem_clk_on" is added to the command line, the memory clocks will
    not be gated in WAIT mode. This will increase the system IDLE power.
    This mode is valid only on MX6sl, MX6DQ TO1.2 and MX6DL TO1.1.
    2. In case the IPG clk is too low (for ex 50MHz) and ARM is at 1GHz,
    we cannot match the 12:5 ratio using ARM_PODF only. In this case,
    donot clock gate the memories in WAIT mode (available on MX6SL,
    MXDQ TO1.2 and MXDL TO1.1). For MXDQ TO1.1 and MX6DL TO1.0, disable
    system wide WAIT entry in this case.
    
    In STOP mode, always ensure that the memory clocks are gated, else
    power impact will be significant.
    
    WAIT mode is enabled by default with this commit.
    Signed-off-by: default avatarRanjani Vaidyanathan <ra5478@freescale.com>
    40f361bc
board-mx6q_sabresd.c 48.5 KB