+++ /dev/null
-/** @file\r
-*\r
-* Copyright (c) 2011-2012, ARM Limited. All rights reserved.\r
-*\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
-*\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
-\r
-#ifndef __ARM_TRUSTZONE_H__\r
-#define __ARM_TRUSTZONE_H__\r
-\r
-#include <Uefi.h>\r
-\r
-// Setup TZ Protection Controller\r
-#define TZPC_DECPROT_0 0\r
-#define TZPC_DECPROT_1 1\r
-#define TZPC_DECPROT_2 2\r
-#define TZPC_DECPROT_MAX 2\r
-\r
-/**\r
- FIXME: Need documentation\r
-**/\r
-EFI_STATUS\r
-TZPCSetDecProtBits (\r
- IN UINTN TzpcBase,\r
- IN UINTN TzpcId,\r
- IN UINTN Bits\r
- );\r
-\r
-/**\r
- FIXME: Need documentation\r
-**/\r
-EFI_STATUS\r
-TZPCClearDecProtBits (\r
- IN UINTN TzpcBase,\r
- IN UINTN TzpcId,\r
- IN UINTN Bits\r
- );\r
-\r
-// Setup TZ Address Space Controller\r
-#define TZASC_REGION_ENABLED 1\r
-#define TZASC_REGION_DISABLED 0\r
-#define TZASC_REGION_SIZE_32KB 0xE\r
-#define TZASC_REGION_SIZE_64KB 0xF\r
-#define TZASC_REGION_SIZE_128KB 0x10\r
-#define TZASC_REGION_SIZE_256KB 0x11\r
-#define TZASC_REGION_SIZE_512KB 0x12\r
-#define TZASC_REGION_SIZE_1MB 0x13\r
-#define TZASC_REGION_SIZE_2MB 0x14\r
-#define TZASC_REGION_SIZE_4MB 0x15\r
-#define TZASC_REGION_SIZE_8MB 0x16\r
-#define TZASC_REGION_SIZE_16MB 0x17\r
-#define TZASC_REGION_SIZE_32MB 0x18\r
-#define TZASC_REGION_SIZE_64MB 0x19\r
-#define TZASC_REGION_SIZE_128MB 0x1A\r
-#define TZASC_REGION_SIZE_256MB 0x1B\r
-#define TZASC_REGION_SIZE_512MB 0x1C\r
-#define TZASC_REGION_SIZE_1GB 0x1D\r
-#define TZASC_REGION_SIZE_2GB 0x1E\r
-#define TZASC_REGION_SIZE_4GB 0x1F\r
-#define TZASC_REGION_SECURITY_SR (1 << 3)\r
-#define TZASC_REGION_SECURITY_SW (1 << 2)\r
-#define TZASC_REGION_SECURITY_SRW (TZASC_REGION_SECURITY_SR|TZASC_REGION_SECURITY_SW)\r
-#define TZASC_REGION_SECURITY_NSR (1 << 1)\r
-#define TZASC_REGION_SECURITY_NSW 1\r
-#define TZASC_REGION_SECURITY_NSRW (TZASC_REGION_SECURITY_NSR|TZASC_REGION_SECURITY_NSW)\r
-\r
-/* Some useful masks */\r
-#define TZASC_REGION_SETUP_LO_ADDR_MASK 0xFFFF8000\r
-\r
-#define TZASC_REGION_ATTR_SECURITY_MASK 0xF\r
-#define TZASC_REGION_ATTR_SUBREG_DIS_MASK 0xFF\r
-#define TZASC_REGION_ATTR_SIZE_MASK 0x3F\r
-#define TZASC_REGION_ATTR_EN_MASK 0x1\r
-\r
-#define TZASC_REGION_SETUP_LO_ADDR(x) ((x) & TZASC_REGION_SETUP_LO_ADDR_MASK)\r
-\r
-#define TZASC_REGION_ATTR_SECURITY(x) (((x) & TZASC_REGION_ATTR_SECURITY_MASK) << 28)\r
-#define TZASC_REGION_ATTR_SUBREG_DISABLE(x) \\r
- (((x) & TZASC_REGION_ATTR_SUBREG_DIS_MASK) << 8)\r
-#define TZASC_REGION_ATTR_SIZE(x) (((x) & TZASC_REGION_ATTR_SIZE_MASK) << 1)\r
-#define TZASC_REGION_ATTR_ENABLE(x) ((x) & TZASC_REGION_ATTR_EN_MASK)\r
-\r
-/**\r
- FIXME: Need documentation\r
-**/\r
-EFI_STATUS\r
-TZASCSetRegion (\r
- IN INTN TzascBase,\r
- IN UINTN RegionId,\r
- IN UINTN Enabled,\r
- IN UINTN LowAddress,\r
- IN UINTN HighAddress,\r
- IN UINTN Size,\r
- IN UINTN Security,\r
- IN UINTN SubregionDisableMask\r
- );\r
-\r
-#endif\r