powerpc/powernv/idle: Rename pnv_first_spr_loss_level variable
Replace the variable name from using "pnv_first_spr_loss_level" to "deep_spr_loss_state". pnv_first_spr_loss_level is supposed to be the earliest state that has OPAL_PM_LOSE_FULL_CONTEXT set, in other places the kernel uses the "deep" states as terminology. Hence renaming the variable to be coherent to its semantics. Signed-off-by: Pratik Rajesh Sampat <psampat@linux.ibm.com> Acked-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200721153708.89057-3-psampat@linux.ibm.com
This commit is contained in:
committed by
Michael Ellerman
parent
8747bf36f3
commit
dcbbfa6b05
@@ -48,7 +48,7 @@ static bool default_stop_found;
|
|||||||
* First stop state levels when SPR and TB loss can occur.
|
* First stop state levels when SPR and TB loss can occur.
|
||||||
*/
|
*/
|
||||||
static u64 pnv_first_tb_loss_level = MAX_STOP_STATE + 1;
|
static u64 pnv_first_tb_loss_level = MAX_STOP_STATE + 1;
|
||||||
static u64 pnv_first_spr_loss_level = MAX_STOP_STATE + 1;
|
static u64 deep_spr_loss_state = MAX_STOP_STATE + 1;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* psscr value and mask of the deepest stop idle state.
|
* psscr value and mask of the deepest stop idle state.
|
||||||
@@ -673,7 +673,7 @@ static unsigned long power9_idle_stop(unsigned long psscr, bool mmu_on)
|
|||||||
mmcra = mfspr(SPRN_MMCRA);
|
mmcra = mfspr(SPRN_MMCRA);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((psscr & PSSCR_RL_MASK) >= pnv_first_spr_loss_level) {
|
if ((psscr & PSSCR_RL_MASK) >= deep_spr_loss_state) {
|
||||||
sprs.lpcr = mfspr(SPRN_LPCR);
|
sprs.lpcr = mfspr(SPRN_LPCR);
|
||||||
sprs.hfscr = mfspr(SPRN_HFSCR);
|
sprs.hfscr = mfspr(SPRN_HFSCR);
|
||||||
sprs.fscr = mfspr(SPRN_FSCR);
|
sprs.fscr = mfspr(SPRN_FSCR);
|
||||||
@@ -759,7 +759,7 @@ static unsigned long power9_idle_stop(unsigned long psscr, bool mmu_on)
|
|||||||
* just always test PSSCR for SPR/TB state loss.
|
* just always test PSSCR for SPR/TB state loss.
|
||||||
*/
|
*/
|
||||||
pls = (psscr & PSSCR_PLS) >> PSSCR_PLS_SHIFT;
|
pls = (psscr & PSSCR_PLS) >> PSSCR_PLS_SHIFT;
|
||||||
if (likely(pls < pnv_first_spr_loss_level)) {
|
if (likely(pls < deep_spr_loss_state)) {
|
||||||
if (sprs_saved)
|
if (sprs_saved)
|
||||||
atomic_stop_thread_idle();
|
atomic_stop_thread_idle();
|
||||||
goto out;
|
goto out;
|
||||||
@@ -1106,7 +1106,7 @@ static void __init pnv_power9_idle_init(void)
|
|||||||
* the deepest loss-less (OPAL_PM_STOP_INST_FAST) stop state.
|
* the deepest loss-less (OPAL_PM_STOP_INST_FAST) stop state.
|
||||||
*/
|
*/
|
||||||
pnv_first_tb_loss_level = MAX_STOP_STATE + 1;
|
pnv_first_tb_loss_level = MAX_STOP_STATE + 1;
|
||||||
pnv_first_spr_loss_level = MAX_STOP_STATE + 1;
|
deep_spr_loss_state = MAX_STOP_STATE + 1;
|
||||||
for (i = 0; i < nr_pnv_idle_states; i++) {
|
for (i = 0; i < nr_pnv_idle_states; i++) {
|
||||||
int err;
|
int err;
|
||||||
struct pnv_idle_states_t *state = &pnv_idle_states[i];
|
struct pnv_idle_states_t *state = &pnv_idle_states[i];
|
||||||
@@ -1117,8 +1117,8 @@ static void __init pnv_power9_idle_init(void)
|
|||||||
pnv_first_tb_loss_level = psscr_rl;
|
pnv_first_tb_loss_level = psscr_rl;
|
||||||
|
|
||||||
if ((state->flags & OPAL_PM_LOSE_FULL_CONTEXT) &&
|
if ((state->flags & OPAL_PM_LOSE_FULL_CONTEXT) &&
|
||||||
(pnv_first_spr_loss_level > psscr_rl))
|
(deep_spr_loss_state > psscr_rl))
|
||||||
pnv_first_spr_loss_level = psscr_rl;
|
deep_spr_loss_state = psscr_rl;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The idle code does not deal with TB loss occurring
|
* The idle code does not deal with TB loss occurring
|
||||||
@@ -1129,8 +1129,8 @@ static void __init pnv_power9_idle_init(void)
|
|||||||
* compatibility.
|
* compatibility.
|
||||||
*/
|
*/
|
||||||
if ((state->flags & OPAL_PM_TIMEBASE_STOP) &&
|
if ((state->flags & OPAL_PM_TIMEBASE_STOP) &&
|
||||||
(pnv_first_spr_loss_level > psscr_rl))
|
(deep_spr_loss_state > psscr_rl))
|
||||||
pnv_first_spr_loss_level = psscr_rl;
|
deep_spr_loss_state = psscr_rl;
|
||||||
|
|
||||||
err = validate_psscr_val_mask(&state->psscr_val,
|
err = validate_psscr_val_mask(&state->psscr_val,
|
||||||
&state->psscr_mask,
|
&state->psscr_mask,
|
||||||
@@ -1176,7 +1176,7 @@ static void __init pnv_power9_idle_init(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
pr_info("cpuidle-powernv: First stop level that may lose SPRs = 0x%llx\n",
|
pr_info("cpuidle-powernv: First stop level that may lose SPRs = 0x%llx\n",
|
||||||
pnv_first_spr_loss_level);
|
deep_spr_loss_state);
|
||||||
|
|
||||||
pr_info("cpuidle-powernv: First stop level that may lose timebase = 0x%llx\n",
|
pr_info("cpuidle-powernv: First stop level that may lose timebase = 0x%llx\n",
|
||||||
pnv_first_tb_loss_level);
|
pnv_first_tb_loss_level);
|
||||||
|
|||||||
Reference in New Issue
Block a user