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