[PATCH] ppc64: do not return from maple halt, power off, restart

David Gibson david at gibson.dropbear.id.au
Tue Jun 7 12:09:04 EST 2005


On Mon, Jun 06, 2005 at 06:52:55PM -0700, Frank Rowand wrote:
> David Gibson wrote:
> >On Fri, Jun 03, 2005 at 04:34:41PM -0700, Frank Rowand wrote:
> >
> >>The Maple board currently returns from a request to halt, power off, or
> >>restart.  This patch causes all processors to instead spin in these cases
> >>so that the system appears to have halted.
> >>
> >>This patch applies against linux-2.6.12-rc5.
> >
> >
> >This one is probably a better way to go, though.  This came from Matt
> >Dharm some time ago, but was never merged due to a miscommunication.
> >It implements the actual board-level reboot and powerdown by
> >communicating with the service processor.
> 
> David,
> 
> I tried this patch on linux-2.6.12-rc5.  The maple_restart() worked fine.
> The maple_halt() did not power off the board.  The maintenance processor
> PIBS reports:
> 
>   PIBS $ Message received: Power off.
>   Powering down 970s and the CPC925 ...
>   Power down complete.
> 
> but the board remains powered on.

Yes, I believe this is the hardware/firmware bug that BenH mentioned.
In fact I think it does turn off the 970s, but not the fans and other
board-level power.

> Some other comments:
> 
> maple_halt() should do the same thing as maple_power_off().  (It could
> even just call maple_power_off().)
> 
> maple_restart(), maple_power_off(), and maple_halt() should not ever
> return.  The returns could be replaced with the code from my patch
> that started this thread.

Ah, yes, good point.

> I don't know if smp_send_stop() is necesary (there seems to be a lack
> of consistency among the different architectures) but it seems like a
> good idea.
> 
> Do you want me to rework the patch with these suggestions?  (But I'm
> not sure how to resolve the failure to power off.)

Please do.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/people/dgibson



More information about the Linuxppc64-dev mailing list