[Skiboot] [RFC 1/1] OPAL : Support spr save-restore using new opal call

Benjamin Herrenschmidt benh at kernel.crashing.org
Tue Jul 24 10:06:12 AEST 2018


On Mon, 2018-07-23 at 23:41 +1000, Nicholas Piggin wrote:
> Right, so we should make OPAL do the whole thing (except catch the
> SRESET wakeup which Linux has to do and has well architected SRR1
> bits).
> 
> > 
> > We could have a separate OPAL entry point for the wakeup case but
> > putting the entirety of the enter/exit into OPAL is complicated.
> > 
> > We have to arbitrate between multiple threads entering different
> > states. We don't know until we exit how deep the core actually went and
> > what actually needs to be restored. It's a function of the SRR1 bits on
> > return *and* the state that was requested.
> > 
> > There's also the need to synchronize/rendez-vous threads on wakeup in
> > some cases such as TB resync, and dealing with big vs. small core.
> > 
> > Doing it all in OPAL would require *all* stop states to go to OPAL, I
> > don't think that's a great idea for performance.
> 
> Oh you want Linux native and OPAL drivers to be used simultaneously?
> Is that the right thing to optimise for?

We want Linux native for states that are known to work (hopefully
STOP0/1) and OPAL for things that might need additional resources saved
or restored and/or workarounds.

At least that's how I thought of it so far... you prefer having an "all
or nothing" approach ?

Cheers,
Ben.




More information about the Skiboot mailing list