From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=51630 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ou5V8-0002AN-Dh for qemu-devel@nongnu.org; Fri, 10 Sep 2010 11:26:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Ou5V7-0001Ol-6u for qemu-devel@nongnu.org; Fri, 10 Sep 2010 11:26:54 -0400 Received: from cantor.suse.de ([195.135.220.2]:45057 helo=mx1.suse.de) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ou5V6-0001OW-Ua for qemu-devel@nongnu.org; Fri, 10 Sep 2010 11:26:53 -0400 Message-ID: <4C8A4E3A.70101@suse.de> Date: Fri, 10 Sep 2010 17:26:50 +0200 From: Alexander Graf MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH] target-ppc: clear MSR_POW on interrupt References: <20100721085316.10710.28700.malonedeb@soybean.canonical.com> <201009101432.06340.thomas.monjalon@openwide.fr> <4C8A2C71.6040604@suse.de> <201009101703.02612.thomas.monjalon@openwide.fr> In-Reply-To: <201009101703.02612.thomas.monjalon@openwide.fr> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Thomas Monjalon Cc: qemu-devel@nongnu.org Thomas Monjalon wrote: > Alexander Graf wrote: > >> Thomas Monjalon wrote: >> >>> From: till <608107@bugs.launchpad.net> >>> >>> According to FreeScale's 'Programming Environments Manual for 32-bit >>> Implementations of the PowerPC Architecture' [MPCFPE32B, Rev.3, 9/2005], >>> section 6.5, table 6-7, an interrupt resets MSR_POW to zero but >>> qemu-0.12.4 fails to do so. >>> Resetting the bit is necessary in order to bring the processor out of >>> power management since otherwise it goes to sleep right away in the >>> exception handler, i.e., it is impossible to leave PM-mode. >>> >> This doesn't look right. POW shouldn't even get stored in SRR1. Could >> you please redo the patch and make sure that mtmsr masks out MSR_POW? >> > > Could you point sections of the specification for these requirements ? > > I think SRR1 can save any bits. Non significant bits can be overriden and are > masked out when RFI occurs. > I'm not saying I'm 100% sure on this, but take a look at the e300 reference manual (http://cache.freescale.com/files/32bit/doc/ref_manual/e300coreRM.pdf) section 5.2.3. POW is bit 13 in this notion. I don't see it getting saved to SRR1. Alex