Pratik Sampat <psam...@linux.ibm.com> writes: > On 26/08/20 2:07 pm, Christophe Leroy wrote: >> Le 26/08/2020 à 10:29, Pratik Rajesh Sampat a écrit : >>> Cpuidle stop state implementation has minor optimizations for P10 >>> where hardware preserves more SPR registers compared to P9. >>> The current P9 driver works for P10, although does few extra >>> save-restores. P9 driver can provide the required power management >>> features like SMT thread folding and core level power savings >>> on a P10 platform. >>> >>> Until the P10 stop driver is available, revert the commit which >>> allows for only P9 systems to utilize cpuidle and blocks all >>> idle stop states for P10. >>> Cpu idle states are enabled and tested on the P10 platform >>> with this fix. >>> >>> This reverts commit 8747bf36f312356f8a295a0c39ff092d65ce75ae. >>> >>> Fixes: 8747bf36f312 ("powerpc/powernv/idle: Replace CPU feature check >>> with PVR check") >>> Signed-off-by: Pratik Rajesh Sampat <psam...@linux.ibm.com> >>> --- >>> @mpe: This revert would resolve a staging issue wherein the P10 stop >>> driver is not yet ready while cpuidle stop states need not be blocked >>> on 5.9 for Power10 systems which could cause SMT folding related >>> performance issues. >>> >>> The P10 stop driver is in the works here: >>> https://lists.ozlabs.org/pipermail/linuxppc-dev/2020-August/216773.html >>> >>> arch/powerpc/platforms/powernv/idle.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/arch/powerpc/platforms/powernv/idle.c >>> b/arch/powerpc/platforms/powernv/idle.c >>> index 77513a80cef9..345ab062b21a 100644 >>> --- a/arch/powerpc/platforms/powernv/idle.c >>> +++ b/arch/powerpc/platforms/powernv/idle.c >>> @@ -1223,7 +1223,7 @@ static void __init pnv_probe_idle_states(void) >>> return; >>> } >>> - if (pvr_version_is(PVR_POWER9)) >>> + if (cpu_has_feature(CPU_FTR_ARCH_300)) >> >> Why not something like: >> >> if (pvr_version_is(PVR_POWER9) || pvr_version_is(PVR_POWER10)) >> pnv_power9_idle_init(); > > In order to use PVR_POWER10 I would need to define it under > arch/powerpc/include/asm/reg.h, which is not present in 5.9 yet. > > However, if it okay with @mpe I could split out Nick's P10 stop driver > (https://lists.ozlabs.org/pipermail/linuxppc-dev/2020-August/216773.html) > into two parts:
I'll just take this for now, it's the simplest option. cheers