]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Foundation/Framework/Ppi/BlockIo/BlockIo.h
Update the copyright notice format
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Framework / Ppi / BlockIo / BlockIo.h
CommitLineData
3eb9473e 1/*++\r
2\r
f57387d5
HT
3Copyright (c) 1999 - 2002, Intel Corporation. All rights reserved.<BR>\r
4This program and the accompanying materials\r
3eb9473e 5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11\r
12\r
13Module Name:\r
14\r
15 BlockIo.h\r
16\r
17Abstract:\r
18\r
19 BlockIo PPI as defined in EFI 2.0\r
20\r
21 Used to access block-oriented storage devices\r
22\r
23--*/\r
24\r
25#ifndef _PEI_BLOCK_IO_H_\r
26#define _PEI_BLOCK_IO_H_\r
27\r
28#define PEI_BLOCK_IO_PPI_GUID \\r
29 { \\r
7ccf38a3 30 0x695d8aa1, 0x42ee, 0x4c46, {0x80, 0x5c, 0x6e, 0xa6, 0xbc, 0xe7, 0x99, 0xe3} \\r
3eb9473e 31 }\r
32\r
33EFI_FORWARD_DECLARATION (PEI_RECOVERY_BLOCK_IO_INTERFACE);\r
34\r
35typedef UINT64 PEI_LBA;\r
36\r
37typedef enum {\r
38 LegacyFloppy = 0,\r
39 IdeCDROM = 1,\r
40 IdeLS120 = 2,\r
41 UsbMassStorage= 3,\r
42 MaxDeviceType\r
43} PEI_BLOCK_DEVICE_TYPE;\r
44\r
45typedef struct {\r
46 PEI_BLOCK_DEVICE_TYPE DeviceType;\r
47 BOOLEAN MediaPresent;\r
48 UINTN LastBlock;\r
49 UINTN BlockSize;\r
50} PEI_BLOCK_IO_MEDIA;\r
51\r
52typedef\r
53EFI_STATUS\r
54(EFIAPI *PEI_GET_NUMBER_BLOCK_DEVICES) (\r
55 IN EFI_PEI_SERVICES **PeiServices,\r
56 IN PEI_RECOVERY_BLOCK_IO_INTERFACE * This,\r
57 OUT UINTN *NumberBlockDevices\r
58 );\r
59\r
60typedef\r
61EFI_STATUS\r
62(EFIAPI *PEI_GET_DEVICE_MEDIA_INFORMATION) (\r
63 IN EFI_PEI_SERVICES **PeiServices,\r
64 IN PEI_RECOVERY_BLOCK_IO_INTERFACE * This,\r
65 IN UINTN DeviceIndex,\r
66 OUT PEI_BLOCK_IO_MEDIA * MediaInfo\r
67 );\r
68\r
69typedef\r
70EFI_STATUS\r
71(EFIAPI *PEI_READ_BLOCKS) (\r
72 IN EFI_PEI_SERVICES **PeiServices,\r
73 IN PEI_RECOVERY_BLOCK_IO_INTERFACE * This,\r
74 IN UINTN DeviceIndex,\r
75 IN PEI_LBA StartLBA,\r
76 IN UINTN BufferSize,\r
77 OUT VOID *Buffer\r
78 );\r
79\r
8cdb2112 80struct _PEI_RECOVERY_BLOCK_IO_INTERFACE {\r
3eb9473e 81 PEI_GET_NUMBER_BLOCK_DEVICES GetNumberOfBlockDevices;\r
82 PEI_GET_DEVICE_MEDIA_INFORMATION GetBlockDeviceMediaInfo;\r
83 PEI_READ_BLOCKS ReadBlocks;\r
8cdb2112 84};\r
3eb9473e 85\r
86extern EFI_GUID gPeiBlockIoPpiGuid;\r
87\r
88#endif\r