mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
ARM: pxa/z2: add poweroff function
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
This commit is contained in:
parent
8a97ae2f55
commit
41646b2499
1 changed files with 17 additions and 0 deletions
|
@ -40,6 +40,7 @@
|
|||
#include <mach/pxafb.h>
|
||||
#include <mach/mmc.h>
|
||||
#include <plat/pxa27x_keypad.h>
|
||||
#include <mach/pm.h>
|
||||
|
||||
#include "generic.h"
|
||||
#include "devices.h"
|
||||
|
@ -677,6 +678,20 @@ static void __init z2_pmic_init(void)
|
|||
static inline void z2_pmic_init(void) {}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
static void z2_power_off(void)
|
||||
{
|
||||
/* We're using deep sleep as poweroff, so clear PSPR to ensure that
|
||||
* bootloader will jump to its entry point in resume handler
|
||||
*/
|
||||
PSPR = 0x0;
|
||||
local_irq_disable();
|
||||
pxa27x_cpu_suspend(PWRMODE_DEEPSLEEP, PLAT_PHYS_OFFSET - PAGE_OFFSET);
|
||||
}
|
||||
#else
|
||||
#define z2_power_off NULL
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* Machine init
|
||||
******************************************************************************/
|
||||
|
@ -698,6 +713,8 @@ static void __init z2_init(void)
|
|||
z2_leds_init();
|
||||
z2_keys_init();
|
||||
z2_pmic_init();
|
||||
|
||||
pm_power_off = z2_power_off;
|
||||
}
|
||||
|
||||
MACHINE_START(ZIPIT2, "Zipit Z2")
|
||||
|
|
Loading…
Reference in a new issue