-;------------------------------------------------------------------------------ \r
+;------------------------------------------------------------------------------\r
+;\r
+; CpuSleep() for ARMv7\r
+;\r
+; ARMv6 versions was:\r
+; MOV r0,#0\r
+; MCR p15,0,r0,c7,c0,4 ;Wait for Interrupt instruction\r
;\r
-; CpuSleep() for ARM\r
+; But this is a no-op on ARMv7\r
;\r
-; Copyright (c) 2006 - 2009, Intel Corporation<BR>\r
-; Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>\r
-; All rights reserved. This program and the accompanying materials\r
+; Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+; Portions copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>\r
+; This program and the accompanying materials\r
; are licensed and made available under the terms and conditions of the BSD License\r
; which accompanies this distribution. The full text of the license may be found at\r
-; http://opensource.org/licenses/bsd-license.php\r
+; http://opensource.org/licenses/bsd-license.php.\r
;\r
; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
; );\r
;\r
CpuSleep\r
- MOV r0,#0\r
- MCR p15,0,r0,c7,c0,4 ;Wait for Interrupt instruction\r
+ WFI\r
BX LR\r
\r
END\r