|
STATIC EFI_STATUS | PvScsiMmioRead32 (IN CONST PVSCSI_DEV *Dev, IN UINT64 Offset, OUT UINT32 *Value) |
|
STATIC EFI_STATUS | PvScsiMmioWrite32 (IN CONST PVSCSI_DEV *Dev, IN UINT64 Offset, IN UINT32 Value) |
|
STATIC EFI_STATUS | PvScsiMmioWrite32Multiple (IN CONST PVSCSI_DEV *Dev, IN UINT64 Offset, IN UINTN Count, IN UINT32 *Words) |
|
STATIC EFI_STATUS | PvScsiWriteCmdDesc (IN CONST PVSCSI_DEV *Dev, IN UINT32 Cmd, IN UINT32 *DescWords OPTIONAL, IN UINTN DescWordsCount) |
|
STATIC EFI_STATUS | PvScsiResetAdapter (IN CONST PVSCSI_DEV *Dev) |
|
STATIC BOOLEAN | PvScsiIsReqRingFull (IN CONST PVSCSI_DEV *Dev) |
|
STATIC PVSCSI_RING_REQ_DESC * | PvScsiGetCurrentRequest (IN CONST PVSCSI_DEV *Dev) |
|
STATIC PVSCSI_RING_CMP_DESC * | PvScsiGetCurrentResponse (IN CONST PVSCSI_DEV *Dev) |
|
STATIC EFI_STATUS | PvScsiWaitForRequestCompletion (IN CONST PVSCSI_DEV *Dev) |
|
STATIC EFI_STATUS | ReportHostAdapterError (OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet) |
|
STATIC EFI_STATUS | ReportHostAdapterOverrunError (OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet) |
|
STATIC EFI_STATUS | PopulateRequest (IN CONST PVSCSI_DEV *Dev, IN UINT8 *Target, IN UINT64 Lun, IN OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet, OUT PVSCSI_RING_REQ_DESC *Request) |
|
STATIC EFI_STATUS | HandleResponse (IN PVSCSI_DEV *Dev, IN OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet, IN CONST PVSCSI_RING_CMP_DESC *Response) |
|
STATIC BOOLEAN | IsTargetInitialized (IN UINT8 *Target) |
|
STATIC EFI_STATUS EFIAPI | PvScsiPassThru (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN UINT8 *Target, IN UINT64 Lun, IN OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet, IN EFI_EVENT Event OPTIONAL) |
|
STATIC EFI_STATUS EFIAPI | PvScsiGetNextTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN OUT UINT8 **Target, IN OUT UINT64 *Lun) |
|
STATIC EFI_STATUS EFIAPI | PvScsiBuildDevicePath (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN UINT8 *Target, IN UINT64 Lun, IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath) |
|
STATIC EFI_STATUS EFIAPI | PvScsiGetTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *DevicePath, OUT UINT8 **Target, OUT UINT64 *Lun) |
|
STATIC EFI_STATUS EFIAPI | PvScsiResetChannel (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This) |
|
STATIC EFI_STATUS EFIAPI | PvScsiResetTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN UINT8 *Target, IN UINT64 Lun) |
|
STATIC EFI_STATUS EFIAPI | PvScsiGetNextTarget (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN OUT UINT8 **Target) |
|
STATIC EFI_STATUS | PvScsiSetPciAttributes (IN OUT PVSCSI_DEV *Dev) |
|
STATIC VOID | PvScsiRestorePciAttributes (IN PVSCSI_DEV *Dev) |
|
STATIC EFI_STATUS | PvScsiAllocateSharedPages (IN PVSCSI_DEV *Dev, IN UINTN Pages, OUT VOID **HostAddress, OUT PVSCSI_DMA_DESC *DmaDesc) |
|
STATIC VOID | PvScsiFreeSharedPages (IN PVSCSI_DEV *Dev, IN UINTN Pages, IN VOID *HostAddress, IN PVSCSI_DMA_DESC *DmaDesc) |
|
STATIC EFI_STATUS | PvScsiInitRings (IN OUT PVSCSI_DEV *Dev) |
|
STATIC VOID | PvScsiFreeRings (IN OUT PVSCSI_DEV *Dev) |
|
STATIC EFI_STATUS | PvScsiSetupRings (IN OUT PVSCSI_DEV *Dev) |
|
STATIC EFI_STATUS | PvScsiInit (IN OUT PVSCSI_DEV *Dev) |
|
STATIC VOID | PvScsiUninit (IN OUT PVSCSI_DEV *Dev) |
|
STATIC VOID EFIAPI | PvScsiExitBoot (IN EFI_EVENT Event, IN VOID *Context) |
|
STATIC EFI_STATUS EFIAPI | PvScsiDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL) |
|
STATIC EFI_STATUS EFIAPI | PvScsiDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL) |
|
STATIC EFI_STATUS EFIAPI | PvScsiDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer) |
|
STATIC EFI_STATUS EFIAPI | PvScsiGetDriverName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName) |
|
STATIC EFI_STATUS EFIAPI | PvScsiGetDeviceName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE DeviceHandle, IN EFI_HANDLE ChildHandle, IN CHAR8 *Language, OUT CHAR16 **ControllerName) |
|
EFI_STATUS EFIAPI | PvScsiEntryPoint (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable) |
|
This driver produces Extended SCSI Pass Thru Protocol instances for pvscsi devices.
Copyright (C) 2020, Oracle and/or its affiliates.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file PvScsi.c.