TianoCore EDK2 master
Loading...
Searching...
No Matches
VirtioScsi.h File Reference

Go to the source code of this file.

Data Structures

struct  VSCSI_DEV
 

Macros

#define VSCSI_SIG   SIGNATURE_32 ('V', 'S', 'C', 'S')
 
#define VIRTIO_SCSI_FROM_PASS_THRU(PassThruPointer)    CR (PassThruPointer, VSCSI_DEV, PassThru, VSCSI_SIG)
 

Functions

EFI_STATUS EFIAPI VirtioScsiDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE DeviceHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI VirtioScsiDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE DeviceHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI VirtioScsiDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE DeviceHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS EFIAPI VirtioScsiPassThru (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)
 
EFI_STATUS EFIAPI VirtioScsiGetNextTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN OUT UINT8 **Target, IN OUT UINT64 *Lun)
 
EFI_STATUS EFIAPI VirtioScsiBuildDevicePath (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN UINT8 *Target, IN UINT64 Lun, IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath)
 
EFI_STATUS EFIAPI VirtioScsiGetTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *DevicePath, OUT UINT8 **Target, OUT UINT64 *Lun)
 
EFI_STATUS EFIAPI VirtioScsiResetChannel (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This)
 
EFI_STATUS EFIAPI VirtioScsiResetTargetLun (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN UINT8 *Target, IN UINT64 Lun)
 
EFI_STATUS EFIAPI VirtioScsiGetNextTarget (IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL *This, IN OUT UINT8 **Target)
 
EFI_STATUS EFIAPI VirtioScsiGetDriverName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName)
 
EFI_STATUS EFIAPI VirtioScsiGetDeviceName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE DeviceHandle, IN EFI_HANDLE ChildHandle, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 

Detailed Description

Internal definitions for the virtio-scsi driver, which produces Extended SCSI Pass Thru Protocol instances for virtio-scsi devices.

Copyright (C) 2012, Red Hat, Inc.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file VirtioScsi.h.

Macro Definition Documentation

◆ VIRTIO_SCSI_FROM_PASS_THRU

#define VIRTIO_SCSI_FROM_PASS_THRU (   PassThruPointer)     CR (PassThruPointer, VSCSI_DEV, PassThru, VSCSI_SIG)

Definition at line 58 of file VirtioScsi.h.

◆ VSCSI_SIG

#define VSCSI_SIG   SIGNATURE_32 ('V', 'S', 'C', 'S')

Definition at line 35 of file VirtioScsi.h.

Function Documentation

◆ VirtioScsiBuildDevicePath()

EFI_STATUS EFIAPI VirtioScsiBuildDevicePath ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This,
IN UINT8 *  Target,
IN UINT64  Lun,
IN OUT EFI_DEVICE_PATH_PROTOCOL **  DevicePath 
)

Definition at line 776 of file VirtioScsi.c.

◆ VirtioScsiDriverBindingStart()

EFI_STATUS EFIAPI VirtioScsiDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  DeviceHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Definition at line 1322 of file VirtioScsi.c.

◆ VirtioScsiDriverBindingStop()

EFI_STATUS EFIAPI VirtioScsiDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  DeviceHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Definition at line 1406 of file VirtioScsi.c.

◆ VirtioScsiDriverBindingSupported()

EFI_STATUS EFIAPI VirtioScsiDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  DeviceHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Definition at line 1275 of file VirtioScsi.c.

◆ VirtioScsiGetDeviceName()

EFI_STATUS EFIAPI VirtioScsiGetDeviceName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  DeviceHandle,
IN EFI_HANDLE  ChildHandle,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Definition at line 1514 of file VirtioScsi.c.

◆ VirtioScsiGetDriverName()

EFI_STATUS EFIAPI VirtioScsiGetDriverName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN CHAR8 *  Language,
OUT CHAR16 **  DriverName 
)

Definition at line 1497 of file VirtioScsi.c.

◆ VirtioScsiGetNextTarget()

EFI_STATUS EFIAPI VirtioScsiGetNextTarget ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This,
IN OUT UINT8 **  Target 
)

Definition at line 881 of file VirtioScsi.c.

◆ VirtioScsiGetNextTargetLun()

EFI_STATUS EFIAPI VirtioScsiGetNextTargetLun ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This,
IN OUT UINT8 **  Target,
IN OUT UINT64 *  Lun 
)

Definition at line 718 of file VirtioScsi.c.

◆ VirtioScsiGetTargetLun()

EFI_STATUS EFIAPI VirtioScsiGetTargetLun ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This,
IN EFI_DEVICE_PATH_PROTOCOL DevicePath,
OUT UINT8 **  Target,
OUT UINT64 *  Lun 
)

Definition at line 815 of file VirtioScsi.c.

◆ VirtioScsiPassThru()

EFI_STATUS EFIAPI VirtioScsiPassThru ( 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 
)

Definition at line 423 of file VirtioScsi.c.

◆ VirtioScsiResetChannel()

EFI_STATUS EFIAPI VirtioScsiResetChannel ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This)

Definition at line 861 of file VirtioScsi.c.

◆ VirtioScsiResetTargetLun()

EFI_STATUS EFIAPI VirtioScsiResetTargetLun ( IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL This,
IN UINT8 *  Target,
IN UINT64  Lun 
)

Definition at line 870 of file VirtioScsi.c.