Re: [PATCH 2/2] powernv: Pass PSSCR value and mask to power9_idle_stop

From: Gautham R Shenoy
Date: Thu Oct 13 2016 - 12:44:42 EST

Hi Stewart,

On Wed, Oct 12, 2016 at 04:35:35PM +1100, Stewart Smith wrote:
> What if we just treat the 0xF state from firmware as special and set it
> to DEFAULT_PSSCR_MASK in that case? That deals with old skiboot, new
> kernel, and sets a pretty small special case that's easy to track into
> the future as something we should watch out for.

Yes, that will work. I will use this approach in the next version.

> Additionally, if we make skiboot set sane values in ~DEFAULT_PSSCR_MASK
> for valid fields in PSSCR on boot/(also kexec?), then
> we should end up in a situation where everything works with everything
> (even if you don't get the best power saving). Specifically, new
> skiboot, old kernel... but it looks like there's nothing currently
> missing there

No we're not missing much there. From the code of the old kernel, I
see that if we pass the psscr_val instead of just the RL to
power9_idle_stop(), we end up saving all the SPRs in
power_enter_stop() even if the psscr_val didn't correspond to a deep
idle state.

But that should be ok.

> Should this patch also have Fixes: 3005c597ba4 and CC to stable?

Yes, thanks for pointing it out. I shall mark the next version to

> --
> Stewart Smith
> OPAL Architect, IBM.

Thanks and Regards