1 /*++
2 
3 Copyright (c) 2004 - 2006, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution.  The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8 
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 
12 Module Name:
13 
14   TianoSpecTypes.h
15 
16 Abstract:
17 
18   Tiano types defined in Tiano spec.
19 
20 --*/
21 
22 #ifndef _TIANO_SPEC_TYPES_H_
23 #define _TIANO_SPEC_TYPES_H_
24 
25 //
26 // Modifier for EFI DXE Services
27 //
28 #define EFI_DXESERVICE
29 
30 //
31 // Global Coherencey Domain types
32 //
33 typedef enum {
34   EfiGcdMemoryTypeNonExistent,
35   EfiGcdMemoryTypeReserved,
36   EfiGcdMemoryTypeSystemMemory,
37   EfiGcdMemoryTypeMemoryMappedIo,
38   EfiGcdMemoryTypeMaximum
39 } EFI_GCD_MEMORY_TYPE;
40 
41 typedef enum {
42   EfiGcdIoTypeNonExistent,
43   EfiGcdIoTypeReserved,
44   EfiGcdIoTypeIo,
45   EfiGcdIoTypeMaximum
46 } EFI_GCD_IO_TYPE;
47 
48 typedef enum {
49   EfiGcdAllocateAnySearchBottomUp,
50   EfiGcdAllocateMaxAddressSearchBottomUp,
51   EfiGcdAllocateAddress,
52   EfiGcdAllocateAnySearchTopDown,
53   EfiGcdAllocateMaxAddressSearchTopDown,
54   EfiGcdMaxAllocateType
55 } EFI_GCD_ALLOCATE_TYPE;
56 
57 typedef struct {
58   EFI_PHYSICAL_ADDRESS  BaseAddress;
59   UINT64                Length;
60   UINT64                Capabilities;
61   UINT64                Attributes;
62   EFI_GCD_MEMORY_TYPE   GcdMemoryType;
63   EFI_HANDLE            ImageHandle;
64   EFI_HANDLE            DeviceHandle;
65 } EFI_GCD_MEMORY_SPACE_DESCRIPTOR;
66 
67 typedef struct {
68   EFI_PHYSICAL_ADDRESS  BaseAddress;
69   UINT64                Length;
70   EFI_GCD_IO_TYPE       GcdIoType;
71   EFI_HANDLE            ImageHandle;
72   EFI_HANDLE            DeviceHandle;
73 } EFI_GCD_IO_SPACE_DESCRIPTOR;
74 
75 #endif
76