TianoCore EDK2 master
Loading...
Searching...
No Matches
TapeIo.h
Go to the documentation of this file.
1
10#ifndef __EFI_TAPE_IO_PROTOCOL_H__
11#define __EFI_TAPE_IO_PROTOCOL_H__
12
13#define EFI_TAPE_IO_PROTOCOL_GUID \
14 { \
15 0x1e93e633, 0xd65a, 0x459e, {0xab, 0x84, 0x93, 0xd9, 0xec, 0x26, 0x6d, 0x18 } \
16 }
17
19
20typedef struct _EFI_TAPE_HEADER {
21 UINT64 Signature;
22 UINT32 Revision;
23 UINT32 BootDescSize;
24 UINT32 BootDescCRC;
25 EFI_GUID TapeGUID;
26 EFI_GUID TapeType;
27 EFI_GUID TapeUnique;
28 UINT32 BLLocation;
29 UINT32 BLBlocksize;
30 UINT32 BLFilesize;
31 CHAR8 OSVersion[40];
32 CHAR8 AppVersion[40];
33 CHAR8 CreationDate[10];
34 CHAR8 CreationTime[10];
35 CHAR8 SystemName[256]; // UTF-8
36 CHAR8 TapeTitle[120]; // UTF-8
37 CHAR8 pad[468]; // pad to 1024
39
67typedef
69(EFIAPI *EFI_TAPE_READ)(
71 IN OUT UINTN *BufferSize,
72 OUT VOID *Buffer
73 );
74
103typedef
105(EFIAPI *EFI_TAPE_WRITE)(
107 IN UINTN *BufferSize,
108 IN VOID *Buffer
109 );
110
125typedef
127(EFIAPI *EFI_TAPE_REWIND)(
129 );
130
155typedef
157(EFIAPI *EFI_TAPE_SPACE)(
159 IN INTN Direction,
160 IN UINTN Type
161 );
162
181typedef
183(EFIAPI *EFI_TAPE_WRITEFM)(
185 IN UINTN Count
186 );
187
203typedef
205(EFIAPI *EFI_TAPE_RESET)(
207 IN BOOLEAN ExtendedVerification
208 );
209
217 EFI_TAPE_READ TapeRead;
218 EFI_TAPE_WRITE TapeWrite;
219 EFI_TAPE_REWIND TapeRewind;
220 EFI_TAPE_SPACE TapeSpace;
221 EFI_TAPE_WRITEFM TapeWriteFM;
222 EFI_TAPE_RESET TapeReset;
223};
224
225extern EFI_GUID gEfiTapeIoProtocolGuid;
226
227#endif
UINT64 UINTN
INT64 INTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
EFI_STATUS(EFIAPI * EFI_TAPE_READ)(IN EFI_TAPE_IO_PROTOCOL *This, IN OUT UINTN *BufferSize, OUT VOID *Buffer)
Definition: TapeIo.h:69
EFI_STATUS(EFIAPI * EFI_TAPE_RESET)(IN EFI_TAPE_IO_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
Definition: TapeIo.h:205
EFI_STATUS(EFIAPI * EFI_TAPE_WRITE)(IN EFI_TAPE_IO_PROTOCOL *This, IN UINTN *BufferSize, IN VOID *Buffer)
Definition: TapeIo.h:105
EFI_STATUS(EFIAPI * EFI_TAPE_WRITEFM)(IN EFI_TAPE_IO_PROTOCOL *This, IN UINTN Count)
Definition: TapeIo.h:183
EFI_STATUS(EFIAPI * EFI_TAPE_SPACE)(IN EFI_TAPE_IO_PROTOCOL *This, IN INTN Direction, IN UINTN Type)
Definition: TapeIo.h:157
EFI_STATUS(EFIAPI * EFI_TAPE_REWIND)(IN EFI_TAPE_IO_PROTOCOL *This)
Definition: TapeIo.h:127
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
Definition: Base.h:213