mirror of https://github.com/acidanthera/audk.git
OvmfPkg/PvScsiDxe: Install DriverBinding protocol
In order to probe and connect to the PvScsi device we need this protocol. Currently it does nothing. Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2567 Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Liran Alon <liran.alon@oracle.com> Message-Id: <20200328200100.60786-3-liran.alon@oracle.com> Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
This commit is contained in:
parent
478c07d483
commit
ed08c57113
|
@ -9,8 +9,65 @@
|
|||
|
||||
**/
|
||||
|
||||
#include <Library/UefiLib.h>
|
||||
#include <Uefi/UefiSpec.h>
|
||||
|
||||
//
|
||||
// Higher versions will be used before lower, 0x10-0xffffffef is the version
|
||||
// range for IHV (Indie Hardware Vendors)
|
||||
//
|
||||
#define PVSCSI_BINDING_VERSION 0x10
|
||||
|
||||
//
|
||||
// Driver Binding
|
||||
//
|
||||
|
||||
STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
PvScsiDriverBindingSupported (
|
||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL
|
||||
)
|
||||
{
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
PvScsiDriverBindingStart (
|
||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL
|
||||
)
|
||||
{
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
STATIC
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
PvScsiDriverBindingStop (
|
||||
IN EFI_DRIVER_BINDING_PROTOCOL *This,
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN UINTN NumberOfChildren,
|
||||
IN EFI_HANDLE *ChildHandleBuffer
|
||||
)
|
||||
{
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
STATIC EFI_DRIVER_BINDING_PROTOCOL mPvScsiDriverBinding = {
|
||||
&PvScsiDriverBindingSupported,
|
||||
&PvScsiDriverBindingStart,
|
||||
&PvScsiDriverBindingStop,
|
||||
PVSCSI_BINDING_VERSION,
|
||||
NULL, // ImageHandle, filled by EfiLibInstallDriverBindingComponentName2()
|
||||
NULL // DriverBindingHandle, filled as well
|
||||
};
|
||||
|
||||
//
|
||||
// Entry Point
|
||||
//
|
||||
|
@ -22,5 +79,12 @@ PvScsiEntryPoint (
|
|||
IN EFI_SYSTEM_TABLE *SystemTable
|
||||
)
|
||||
{
|
||||
return EFI_UNSUPPORTED;
|
||||
return EfiLibInstallDriverBindingComponentName2 (
|
||||
ImageHandle,
|
||||
SystemTable,
|
||||
&mPvScsiDriverBinding,
|
||||
ImageHandle,
|
||||
NULL, // TODO Component name
|
||||
NULL // TODO Component name
|
||||
);
|
||||
}
|
||||
|
|
|
@ -25,3 +25,4 @@
|
|||
|
||||
[LibraryClasses]
|
||||
UefiDriverEntryPoint
|
||||
UefiLib
|
||||
|
|
Loading…
Reference in New Issue