From: Paul Mackerras <paulus@samba.org>
To: Becky Bruce <Becky.Bruce@freescale.com>
Cc: Michael Schmitz <schmitz@zirkon.biophys.uni-duesseldorf.de>,
debian-powerpc@lists.debian.org,
linuxppc-dev list <linuxppc-dev@ozlabs.org>
Subject: Re: 7447A strange problem with MSR:POW (WAS: can't boot 2.6.17-rc1)
Date: Fri, 14 Apr 2006 12:07:23 -0700 [thread overview]
Message-ID: <17471.62187.774127.783000@cargo.ozlabs.ibm.com> (raw)
In-Reply-To: <21F7D7D8-B9BC-44EB-B07B-F888D89DCF25@freescale.com>
Becky Bruce writes:
> Actually, I think the problem is that the code linux is using to turn
> on nap mode is not guaranteed to put the processor in nap mode by the
> time the blr in ppc6xx_idle occurs.
Thanks, Becky.
This patch fixes it for me. Comments, anyone?
Paul.
diff -urN powerpc-merge/arch/powerpc/kernel/idle_6xx.S pmac-2.6.17-rc1/arch/powerpc/kernel/idle_6xx.S
--- powerpc-merge/arch/powerpc/kernel/idle_6xx.S 2006-04-04 23:09:16.000000000 -0700
+++ pmac-2.6.17-rc1/arch/powerpc/kernel/idle_6xx.S 2006-04-14 10:29:54.000000000 -0700
@@ -151,41 +151,47 @@
isync
mtmsr r7
isync
- sync
- blr
+1: b 1b
/*
* Return from NAP/DOZE mode, restore some CPU specific registers,
* we are called with DR/IR still off and r2 containing physical
- * address of current.
+ * address of current. R11 and CR contain HID0. We have to preserve
+ * r10 and r12.
*/
_GLOBAL(power_save_6xx_restore)
+ tophys(r11, r1) /* Make the idle task do a blr */
+ lwz r9,_LINK(r11)
+ stw r9,_NIP(r11)
mfspr r11,SPRN_HID0
- rlwinm. r11,r11,0,10,8 /* Clear NAP & copy NAP bit !state to cr1 EQ */
- cror 4*cr1+eq,4*cr0+eq,4*cr0+eq
+ rlwinm r11,r11,0,10,8 /* Clear NAP */
BEGIN_FTR_SECTION
rlwinm r11,r11,0,9,7 /* Clear DOZE */
END_FTR_SECTION_IFSET(CPU_FTR_CAN_DOZE)
mtspr SPRN_HID0, r11
#ifdef DEBUG
- beq cr1,1f
+ bf 9,1f
lis r11,(nap_return_count-KERNELBASE)@ha
lwz r9,nap_return_count@l(r11)
addi r9,r9,1
stw r9,nap_return_count@l(r11)
1:
#endif
-
+
+#ifdef CONFIG_SMP
rlwinm r9,r1,0,0,18
tophys(r9,r9)
lwz r11,TI_CPU(r9)
slwi r11,r11,2
+#else
+ li r11,0
+#endif
/* Todo make sure all these are in the same page
- * and load r22 (@ha part + CPU offset) only once
+ * and load r11 (@ha part + CPU offset) only once
*/
BEGIN_FTR_SECTION
- beq cr1,1f
+ bf 9,1f
addis r9,r11,(nap_save_msscr0-KERNELBASE)@ha
lwz r9,nap_save_msscr0@l(r9)
mtspr SPRN_MSSCR0, r9
next prev parent reply other threads:[~2006-04-14 19:07 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.44.0604071010290.18017-100000@zirkon.biophys.uni-duesseldorf.de>
[not found] ` <1144408805.30891.42.camel@localhost.localdomain>
[not found] ` <17463.9759.442768.685153@cargo.ozlabs.ibm.com>
2006-04-13 10:20 ` 7447A strange problem with MSR:POW (WAS: can't boot 2.6.17-rc1) Benjamin Herrenschmidt
2006-04-13 20:46 ` Becky Bruce
2006-04-13 20:55 ` Benjamin Herrenschmidt
2006-04-13 21:46 ` Becky Bruce
2006-04-13 22:37 ` Benjamin Herrenschmidt
2006-04-13 22:44 ` Olof Johansson
2006-04-14 19:07 ` Paul Mackerras [this message]
2006-04-14 19:54 ` Olof Johansson
2006-04-14 20:00 ` Becky Bruce
2006-04-14 22:57 ` Benjamin Herrenschmidt
2006-04-14 20:19 ` Paul Mackerras
2006-04-14 20:24 ` Olof Johansson
2006-04-14 21:09 ` Becky Bruce
2006-04-14 21:01 ` Benjamin Herrenschmidt
2006-04-18 5:45 ` Paul Mackerras
2006-04-18 6:00 ` Benjamin Herrenschmidt
2006-04-18 6:32 ` Paul Mackerras
2006-04-18 6:37 ` Benjamin Herrenschmidt
2006-04-18 14:56 ` Olof Johansson
2006-04-18 16:03 ` Olof Johansson
2006-04-15 11:12 ` Michael Schmitz
2006-04-18 19:29 Becky Bruce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=17471.62187.774127.783000@cargo.ozlabs.ibm.com \
--to=paulus@samba.org \
--cc=Becky.Bruce@freescale.com \
--cc=debian-powerpc@lists.debian.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=schmitz@zirkon.biophys.uni-duesseldorf.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).