878ddf1f |
1 | /*++\r |
2 | \r |
3 | Copyright (c) 2006, Intel Corporation \r |
4 | All rights reserved. This program and the accompanying materials \r |
5 | are licensed and made available under the terms and conditions of the BSD License \r |
6 | which accompanies this distribution. The full text of the license may be found at \r |
7 | http://opensource.org/licenses/bsd-license.php \r |
8 | \r |
9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r |
10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r |
11 | \r |
12 | Module Name:\r |
13 | \r |
14 | gcd.h\r |
15 | \r |
16 | Abstract:\r |
17 | \r |
18 | Revision History\r |
19 | \r |
20 | --*/\r |
21 | \r |
22 | #ifndef _GCD_H\r |
23 | #define _GCD_H\r |
24 | \r |
25 | //\r |
26 | // GCD Operations\r |
27 | //\r |
28 | #define GCD_MEMORY_SPACE_OPERATION 0x20\r |
29 | #define GCD_IO_SPACE_OPERATION 0x40\r |
30 | \r |
31 | #define GCD_ADD_MEMORY_OPERATION (GCD_MEMORY_SPACE_OPERATION | 0)\r |
32 | #define GCD_ALLOCATE_MEMORY_OPERATION (GCD_MEMORY_SPACE_OPERATION | 1)\r |
33 | #define GCD_FREE_MEMORY_OPERATION (GCD_MEMORY_SPACE_OPERATION | 2)\r |
34 | #define GCD_REMOVE_MEMORY_OPERATION (GCD_MEMORY_SPACE_OPERATION | 3)\r |
35 | #define GCD_SET_ATTRIBUTES_MEMORY_OPERATION (GCD_MEMORY_SPACE_OPERATION | 4)\r |
36 | \r |
37 | #define GCD_ADD_IO_OPERATION (GCD_IO_SPACE_OPERATION | 0)\r |
38 | #define GCD_ALLOCATE_IO_OPERATION (GCD_IO_SPACE_OPERATION | 1)\r |
39 | #define GCD_FREE_IO_OPERATION (GCD_IO_SPACE_OPERATION | 2)\r |
40 | #define GCD_REMOVE_IO_OPERATION (GCD_IO_SPACE_OPERATION | 3)\r |
41 | \r |
42 | //\r |
43 | // The data structure used to convert from GCD attributes to EFI Memory Map attributes\r |
44 | //\r |
45 | typedef struct {\r |
46 | UINT64 Attribute;\r |
47 | UINT64 Capability;\r |
48 | BOOLEAN Memory;\r |
49 | } GCD_ATTRIBUTE_CONVERSION_ENTRY;\r |
50 | \r |
51 | #endif\r |