Fix some more headers. Add some missing library classes in .dec file and update ...
[mirror_edk2.git] / ArmPkg / Filesystem / SemihostFs / Arm / SemihostFs.h
1 /** @file
2 Support a Semi Host file system over a debuggers JTAG
3
4 Copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>
5
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14 **/
15
16 #ifndef __SEMIHOST_FS_H__
17 #define __SEMIHOST_FS_H__
18
19 EFI_STATUS
20 SemihostFsSupported(
21 IN EFI_DRIVER_BINDING_PROTOCOL *This,
22 IN EFI_HANDLE Controller,
23 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
24 );
25
26 EFI_STATUS
27 SemihostFsStart(
28 IN EFI_DRIVER_BINDING_PROTOCOL *This,
29 IN EFI_HANDLE Controller,
30 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
31 );
32
33 EFI_STATUS
34 SemihostFsStop(
35 IN EFI_DRIVER_BINDING_PROTOCOL *This,
36 IN EFI_HANDLE Controller,
37 IN UINTN NumberOfChildren,
38 IN EFI_HANDLE *ChildHandleBuffer
39 );
40
41 EFI_STATUS
42 VolumeOpen(
43 IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
44 OUT EFI_FILE **Root
45 );
46
47 EFI_STATUS
48 FileOpen(
49 IN EFI_FILE *File,
50 OUT EFI_FILE **NewHandle,
51 IN CHAR16 *FileName,
52 IN UINT64 OpenMode,
53 IN UINT64 Attributes
54 );
55
56 EFI_STATUS
57 FileClose(
58 IN EFI_FILE *File
59 );
60
61 EFI_STATUS
62 FileDelete(
63 IN EFI_FILE *File
64 );
65
66 EFI_STATUS
67 FileRead(
68 IN EFI_FILE *File,
69 IN OUT UINTN *BufferSize,
70 OUT VOID *Buffer
71 );
72
73 EFI_STATUS
74 FileWrite(
75 IN EFI_FILE *File,
76 IN OUT UINTN *BufferSize,
77 IN VOID *Buffer
78 );
79
80 EFI_STATUS
81 FileGetPosition(
82 IN EFI_FILE *File,
83 OUT UINT64 *Position
84 );
85
86 EFI_STATUS
87 FileSetPosition(
88 IN EFI_FILE *File,
89 IN UINT64 Position
90 );
91
92 EFI_STATUS
93 FileGetInfo(
94 IN EFI_FILE *File,
95 IN EFI_GUID *InformationType,
96 IN OUT UINTN *BufferSize,
97 OUT VOID *Buffer
98 );
99
100 EFI_STATUS
101 FileSetInfo(
102 IN EFI_FILE *File,
103 IN EFI_GUID *InformationType,
104 IN UINTN BufferSize,
105 IN VOID *Buffer
106 );
107
108 EFI_STATUS
109 FileFlush(
110 IN EFI_FILE *File
111 );
112
113 #endif // __SEMIHOST_FS_H__
114