Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 259111
b: refs/heads/master
c: ebf714f
h: refs/heads/master
i:
  259109: 994d21a
  259107: deff23c
  259103: 6a5d924
v: v3
  • Loading branch information
Scott Wood authored and Kumar Gala committed Jun 27, 2011
1 parent 6a993a0 commit 2440a41
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: f340fe69f5e87c9f630b077cf52142ec15964a41
refs/heads/master: ebf714ff37561331eb39963945d80bfc2a59e00f
12 changes: 12 additions & 0 deletions trunk/arch/powerpc/kernel/idle_e500.S
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,17 @@ _GLOBAL(e500_idle)
ori r4,r4,_TLF_NAPPING /* so when we take an exception */
stw r4,TI_LOCAL_FLAGS(r3) /* it will return to our caller */

#ifdef CONFIG_E500MC
wrteei 1
1: wait

/*
* Guard against spurious wakeups (e.g. from a hypervisor) --
* any real interrupt will cause us to return to LR due to
* _TLF_NAPPING.
*/
b 1b
#else
/* Check if we can nap or doze, put HID0 mask in r3 */
lis r3,0
BEGIN_FTR_SECTION
Expand Down Expand Up @@ -72,6 +83,7 @@ END_FTR_SECTION_IFSET(CPU_FTR_L2CSR|CPU_FTR_CAN_NAP)
mtmsr r7
isync
2: b 2b
#endif /* !E500MC */

/*
* Return from NAP/DOZE mode, restore some CPU specific registers,
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/powerpc/platforms/85xx/p3041_ds.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ define_machine(p3041_ds) {
.restart = fsl_rstcr_restart,
.calibrate_decr = generic_calibrate_decr,
.progress = udbg_progress,
.power_save = e500_idle,
};

machine_device_initcall(p3041_ds, corenet_ds_publish_devices);
Expand Down
1 change: 1 addition & 0 deletions trunk/arch/powerpc/platforms/85xx/p4080_ds.c
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ define_machine(p4080_ds) {
.restart = fsl_rstcr_restart,
.calibrate_decr = generic_calibrate_decr,
.progress = udbg_progress,
.power_save = e500_idle,
};

machine_device_initcall(p4080_ds, corenet_ds_publish_devices);
Expand Down
5 changes: 5 additions & 0 deletions trunk/arch/powerpc/platforms/85xx/p5020_ds.c
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,11 @@ define_machine(p5020_ds) {
.restart = fsl_rstcr_restart,
.calibrate_decr = generic_calibrate_decr,
.progress = udbg_progress,
#ifdef CONFIG_PPC64
.power_save = book3e_idle,
#else
.power_save = e500_idle,
#endif
};

machine_device_initcall(p5020_ds, corenet_ds_publish_devices);
Expand Down

0 comments on commit 2440a41

Please sign in to comment.