]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Library/BaseCpuLib/Arm/CpuSleep.S
Add assertion after memory allocation.
[mirror_edk2.git] / MdePkg / Library / BaseCpuLib / Arm / CpuSleep.S
CommitLineData
990e25aa 1#------------------------------------------------------------------------------ \r
2#\r
3# CpuSleep() for ARM\r
4#\r
de2d3419
HT
5# Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
6# Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
7# This program and the accompanying materials\r
990e25aa 8# are licensed and made available under the terms and conditions of the BSD License\r
9# which accompanies this distribution. The full text of the license may be found at\r
2fc59a00 10# http://opensource.org/licenses/bsd-license.php.\r
990e25aa 11#\r
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14#\r
15#------------------------------------------------------------------------------\r
16\r
17.text\r
18.p2align 2\r
19.globl ASM_PFX(CpuSleep)\r
e7cb469e 20INTERWORK_FUNC(CpuSleep)
990e25aa 21\r
22#/**\r
23# Places the CPU in a sleep state until an interrupt is received.\r
24#\r
25# Places the CPU in a sleep state until an interrupt is received. If interrupts\r
26# are disabled prior to calling this function, then the CPU will be placed in a\r
27# sleep state indefinitely.\r
28#\r
29#**/\r
30#VOID\r
31#EFIAPI\r
32#CpuSleep (\r
33# VOID\r
34# );\r
35#\r
36ASM_PFX(CpuSleep):\r
37 mov r0,#0\r
2bd1edf4 38 mcr p15,0,r0,c7,c0,4 // Wait for Interrupt instruction\r
990e25aa 39 bx lr\r