Subject: Re: [PATCH] powerpc: dart iommu suspend

From: [email-masked] (Olof Johansson)
Date: Thu, 3 May 2007 09:24:41 -0500

On Thu, May 03, 2007 at 02:48:11PM +0200, Johannes Berg wrote:
> On Thu, 2007-05-03 at 22:30 +1000, Benjamin Herrenschmidt wrote:
> > That would make it "just work" with the normal code path.
> 
> We still need the iommu restore hook to invalidate the entries, so that
> API I add there is needed anyway. Who actually saves the code doesn't
> really matter at that point. The save hook isn't strictly necessary then
> but I guess it should be there for symmetry anyway.
> 
> Maybe somebody can offer opinions on other iommus?

The PWRficient iommu shouldn't need any special considerations here, our
in-memory table is kept in regular coherent memory, so as long as that
is saved and restored (and hooks to clear out old cached TLB entries, etc
are called), everything should just work. No need to copy things around.

So yes, we'd still need the hooks, at least the restore one. And as you
say, keeping the save one there for symmetry makes sense.

I don't know what's happened to the IBM bloa^WPAPR platforms the last
year and a half, but last I looked at them you would essentially need
to scan out all entries from firmware by hand and save them away. So
they'd need both save and restore hooks.

-Olof