• preeti's avatar
    tick/idle/powerpc: Do not register idle states with CPUIDLE_FLAG_TIMER_STOP set in periodic mode · b9d118e1
    preeti authored
    commit cc5a2f7b upstream.
    
    On some archs, the local clockevent device stops in deep cpuidle states.
    The broadcast framework is used to wakeup cpus in these idle states, in
    which either an external clockevent device is used to send wakeup ipis
    or the hrtimer broadcast framework kicks in in the absence of such a
    device. One cpu is nominated as the broadcast cpu and this cpu sends
    wakeup ipis to sleeping cpus at the appropriate time. This is the
    implementation in the oneshot mode of broadcast.
    
    In periodic mode of broadcast however, the presence of such cpuidle
    states results in the cpuidle driver calling tick_broadcast_enable()
    which shuts down the local clockevent devices of all the cpus and
    appoints the tick broadcast device as the clockevent device for each of
    them. This works on those archs where the tick broadcast device is a
    real clockevent device.  But on archs which depend...
    b9d118e1
cpuidle-powernv.c 6.85 KB