xref: /openbmc/linux/arch/arm/mach-pxa/standby.S (revision 87c2ce3b)
1/*
2 * PXA27x standby mode
3 *
4 * Author: David Burrage
5 *
6 * 2005 (c) MontaVista Software, Inc. This file is licensed under
7 * the terms of the GNU General Public License version 2. This program
8 * is licensed "as is" without any warranty of any kind, whether express
9 * or implied.
10 */
11
12#include <linux/config.h>
13#include <linux/linkage.h>
14#include <asm/assembler.h>
15#include <asm/hardware.h>
16
17#include <asm/arch/pxa-regs.h>
18
19		.text
20
21ENTRY(pxa_cpu_standby)
22	ldr	r0, =PSSR
23	mov	r1, #(PSSR_PH | PSSR_STS)
24	mov	r2, #PWRMODE_STANDBY
25	mov	r3, #UNCACHED_PHYS_0	@ Read mem context in.
26	ldr	ip, [r3]
27	b	1f
28
29	.align	5
301:	mcr	p14, 0, r2, c7, c0, 0	@ put the system into Standby
31	str	r1, [r0]		@ make sure PSSR_PH/STS are clear
32	mov	pc, lr
33