1#------------------------------------------------------------------------------ 2# 3# Copyright (c) 2016, Linaro Limited. All rights reserved. 4# 5# This program and the accompanying materials 6# are licensed and made available under the terms and conditions of the BSD License 7# which accompanies this distribution. The full text of the license may be found at 8# http://opensource.org/licenses/bsd-license.php 9# 10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12# 13#------------------------------------------------------------------------------ 14 15#include <AsmMacroIoLib.h> 16 17.text 18.align 2 19 20GCC_ASM_EXPORT (ArmReadIdMmfr0) 21GCC_ASM_EXPORT (ArmHasMpExtensions) 22 23#------------------------------------------------------------------------------ 24 25ASM_PFX (ArmHasMpExtensions): 26 mrc p15,0,R0,c0,c0,5 27 // Get Multiprocessing extension (bit31) 28 lsr R0, R0, #31 29 bx LR 30 31ASM_PFX(ArmReadIdMmfr0): 32 mrc p15, 0, r0, c0, c1, 4 @ Read ID_MMFR0 Register 33 bx lr 34 35ASM_FUNCTION_REMOVE_IF_UNREFERENCED 36