Home | History | Annotate | Download | only in ArmV7
      1 /** @file
      2 
      3   Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
      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 #ifndef __ARM_V7_LIB_H__
     16 #define __ARM_V7_LIB_H__
     17 
     18 #define ID_MMFR0_SHARELVL_SHIFT       12
     19 #define ID_MMFR0_SHARELVL_MASK       0xf
     20 #define ID_MMFR0_SHARELVL_ONE          0
     21 #define ID_MMFR0_SHARELVL_TWO          1
     22 
     23 #define ID_MMFR0_INNERSHR_SHIFT       28
     24 #define ID_MMFR0_INNERSHR_MASK       0xf
     25 #define ID_MMFR0_OUTERSHR_SHIFT        8
     26 #define ID_MMFR0_OUTERSHR_MASK       0xf
     27 
     28 #define ID_MMFR0_SHR_IMP_UNCACHED      0
     29 #define ID_MMFR0_SHR_IMP_HW_COHERENT   1
     30 #define ID_MMFR0_SHR_IGNORED         0xf
     31 
     32 typedef VOID (*ARM_V7_CACHE_OPERATION)(UINT32);
     33 
     34 VOID
     35 ArmV7AllDataCachesOperation (
     36   IN  ARM_V7_CACHE_OPERATION  DataCacheOperation
     37   );
     38 
     39 UINTN
     40 EFIAPI
     41 ArmReadIdMmfr0 (
     42   VOID
     43   );
     44 
     45 BOOLEAN
     46 EFIAPI
     47 ArmHasMpExtensions (
     48   VOID
     49   );
     50 
     51 #endif // __ARM_V7_LIB_H__
     52 
     53