TianoCore EDK2 master
Loading...
Searching...
No Matches
UsbMassImpl.h
Go to the documentation of this file.
1
10#ifndef _EFI_USBMASS_IMPL_H_
11#define _EFI_USBMASS_IMPL_H_
12
13#define USB_MASS_SIGNATURE SIGNATURE_32 ('U', 's', 'b', 'M')
14
15#define USB_MASS_DEVICE_FROM_BLOCK_IO(a) \
16 CR (a, USB_MASS_DEVICE, BlockIo, USB_MASS_SIGNATURE)
17
18#define USB_MASS_DEVICE_FROM_DISK_INFO(a) \
19 CR (a, USB_MASS_DEVICE, DiskInfo, USB_MASS_SIGNATURE)
20
21extern EFI_COMPONENT_NAME_PROTOCOL gUsbMassStorageComponentName;
22extern EFI_COMPONENT_NAME2_PROTOCOL gUsbMassStorageComponentName2;
23
24//
25// Functions for Driver Binding Protocol
26//
27
40EFIAPI
43 IN EFI_HANDLE Controller,
44 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
45 );
46
66EFIAPI
69 IN EFI_HANDLE Controller,
70 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
71 );
72
88EFIAPI
91 IN EFI_HANDLE Controller,
92 IN UINTN NumberOfChildren,
93 IN EFI_HANDLE *ChildHandleBuffer
94 );
95
96//
97// Functions for Block I/O Protocol
98//
99
116EFIAPI
119 IN BOOLEAN ExtendedVerification
120 );
121
147EFIAPI
150 IN UINT32 MediaId,
151 IN EFI_LBA Lba,
152 IN UINTN BufferSize,
153 OUT VOID *Buffer
154 );
155
182EFIAPI
185 IN UINT32 MediaId,
186 IN EFI_LBA Lba,
187 IN UINTN BufferSize,
188 IN VOID *Buffer
189 );
190
206EFIAPI
209 );
210
211//
212// EFI Component Name Functions
213//
214
250EFIAPI
253 IN CHAR8 *Language,
254 OUT CHAR16 **DriverName
255 );
256
316EFIAPI
319 IN EFI_HANDLE ControllerHandle,
320 IN EFI_HANDLE ChildHandle OPTIONAL,
321 IN CHAR8 *Language,
322 OUT CHAR16 **ControllerName
323 );
324
325#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
UINT64 EFI_LBA
Definition: UefiBaseType.h:45
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_HANDLE
Definition: UefiBaseType.h:33
EFI_STATUS EFIAPI UsbMassReset(IN EFI_BLOCK_IO_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
Definition: UsbMassImpl.c:47
EFI_STATUS EFIAPI UsbMassStorageGetControllerName(IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
EFI_STATUS EFIAPI USBMassDriverBindingSupported(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
Definition: UsbMassImpl.c:707
EFI_STATUS EFIAPI UsbMassReadBlocks(IN EFI_BLOCK_IO_PROTOCOL *This, IN UINT32 MediaId, IN EFI_LBA Lba, IN UINTN BufferSize, OUT VOID *Buffer)
Definition: UsbMassImpl.c:96
EFI_STATUS EFIAPI USBMassDriverBindingStart(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
Definition: UsbMassImpl.c:791
EFI_STATUS EFIAPI UsbMassFlushBlocks(IN EFI_BLOCK_IO_PROTOCOL *This)
Definition: UsbMassImpl.c:319
EFI_STATUS EFIAPI UsbMassWriteBlocks(IN EFI_BLOCK_IO_PROTOCOL *This, IN UINT32 MediaId, IN EFI_LBA Lba, IN UINTN BufferSize, IN VOID *Buffer)
Definition: UsbMassImpl.c:211
EFI_STATUS EFIAPI UsbMassStorageGetDriverName(IN EFI_COMPONENT_NAME_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName)
Definition: ComponentName.c:71
EFI_STATUS EFIAPI USBMassDriverBindingStop(IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
Definition: UsbMassImpl.c:907