]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/PvScsiDxe/PvScsi.h
OvmfPkg/PvScsiDxe: Setup requests and completions rings
[mirror_edk2.git] / OvmfPkg / PvScsiDxe / PvScsi.h
index 3940b4c20019cf9787a70fac76914d93bd29aacd..6d23b6e1eccf9fa82afdf214d02671119a604912 100644 (file)
 #include <Library/DebugLib.h>\r
 #include <Protocol/ScsiPassThruExt.h>\r
 \r
+typedef struct {\r
+  EFI_PHYSICAL_ADDRESS DeviceAddress;\r
+  VOID                 *Mapping;\r
+} PVSCSI_DMA_DESC;\r
+\r
+typedef struct {\r
+  PVSCSI_RINGS_STATE   *RingState;\r
+  PVSCSI_DMA_DESC      RingStateDmaDesc;\r
+\r
+  PVSCSI_RING_REQ_DESC *RingReqs;\r
+  PVSCSI_DMA_DESC      RingReqsDmaDesc;\r
+\r
+  PVSCSI_RING_CMP_DESC *RingCmps;\r
+  PVSCSI_DMA_DESC      RingCmpsDmaDesc;\r
+} PVSCSI_RING_DESC;\r
+\r
 #define PVSCSI_SIG SIGNATURE_32 ('P', 'S', 'C', 'S')\r
 \r
 typedef struct {\r
   UINT32                          Signature;\r
+  EFI_PCI_IO_PROTOCOL             *PciIo;\r
+  UINT64                          OriginalPciAttributes;\r
+  PVSCSI_RING_DESC                RingDesc;\r
+  UINT8                           MaxTarget;\r
+  UINT8                           MaxLun;\r
   EFI_EXT_SCSI_PASS_THRU_PROTOCOL PassThru;\r
   EFI_EXT_SCSI_PASS_THRU_MODE     PassThruMode;\r
 } PVSCSI_DEV;\r