OVMF: Add Block MMIO protocol definition
[mirror_edk2.git] / OvmfPkg / Include / Protocol / BlockMmio.h
CommitLineData
b0f51446 1/** @file\r
2 Block IO (memory mapped)\r
3\r
4 Copyright (c) 2006 - 2010, Intel Corporation \r
5 All rights reserved. This program and the accompanying materials \r
6 are licensed and made available under the terms and conditions of the BSD License \r
7 which accompanies this distribution. The full text of the license may be found at \r
8 http://opensource.org/licenses/bsd-license.php \r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
12\r
13**/\r
14\r
15#ifndef __BLOCK_MMIO_H__\r
16#define __BLOCK_MMIO_H__\r
17\r
18#include <Protocol/BlockIo.h>\r
19\r
20#define BLOCK_MMIO_PROTOCOL_GUID \\r
21 { \\r
22 0x6b558ce3, 0x69e5, 0x4c67, {0xa6, 0x34, 0xf7, 0xfe, 0x72, 0xad, 0xbe, 0x84 } \\r
23 }\r
24\r
25typedef struct _BLOCK_MMIO_PROTOCOL BLOCK_MMIO_PROTOCOL;\r
26\r
27\r
28///\r
29/// This protocol provides control over block devices.\r
30///\r
31struct _BLOCK_MMIO_PROTOCOL {\r
32 ///\r
33 /// The revision to which the block IO interface adheres. All future\r
34 /// revisions must be backwards compatible. If a future version is not\r
35 /// back wards compatible, it is not the same GUID.\r
36 ///\r
37 UINT64 Revision;\r
38 ///\r
39 /// Pointer to the EFI_BLOCK_IO_MEDIA data for this device.\r
40 ///\r
41 EFI_BLOCK_IO_MEDIA *Media;\r
42\r
43 EFI_PHYSICAL_ADDRESS BaseAddress;\r
44\r
45};\r
46\r
47extern EFI_GUID gBlockMmioProtocolGuid;\r
48\r
49#endif\r
50\r