summaryrefslogtreecommitdiff
path: root/OvmfPkg/Include/IndustryStandard/Virtio.h
diff options
context:
space:
mode:
Diffstat (limited to 'OvmfPkg/Include/IndustryStandard/Virtio.h')
-rw-r--r--OvmfPkg/Include/IndustryStandard/Virtio.h60
1 files changed, 2 insertions, 58 deletions
diff --git a/OvmfPkg/Include/IndustryStandard/Virtio.h b/OvmfPkg/Include/IndustryStandard/Virtio.h
index a330738999..05c658fa54 100644
--- a/OvmfPkg/Include/IndustryStandard/Virtio.h
+++ b/OvmfPkg/Include/IndustryStandard/Virtio.h
@@ -1,6 +1,7 @@
/** @file
- Type and macro definitions corresponding to the virtio-0.9.5 specification.
+ Generic type and macro definitions corresponding to the virtio-0.9.5
+ specification.
Copyright (C) 2012, Red Hat, Inc.
@@ -108,25 +109,8 @@ typedef struct {
UINT8 VhdrDeviceStatus;
UINT8 VhdrISR;
} VIRTIO_HDR;
-
-//
-// virtio-0.9.5, Appendix D: Block Device
-//
-typedef struct {
- VIRTIO_HDR Generic;
- UINT64 VhdrCapacity;
- UINT32 VhdrSizeMax;
- UINT32 VhdrSegMax;
- UINT16 VhdrCylinders;
- UINT8 VhdrHeads;
- UINT8 VhdrSectors;
- UINT32 VhdrBlkSize;
-} VBLK_HDR;
#pragma pack()
-#define OFFSET_OF_VBLK(Field) OFFSET_OF (VBLK_HDR, Field)
-#define SIZE_OF_VBLK(Field) (sizeof ((VBLK_HDR *) 0)->Field)
-
//
// virtio-0.9.5, 2.2.2.1 Device Status
@@ -143,45 +127,5 @@ typedef struct {
#define VIRTIO_F_RING_INDIRECT_DESC BIT28
#define VIRTIO_F_RING_EVENT_IDX BIT29
-//
-// virtio-0.9.5, Appendix D: Block Device
-//
-#define VIRTIO_BLK_F_BARRIER BIT0
-#define VIRTIO_BLK_F_SIZE_MAX BIT1
-#define VIRTIO_BLK_F_SEG_MAX BIT2
-#define VIRTIO_BLK_F_GEOMETRY BIT4
-#define VIRTIO_BLK_F_RO BIT5
-#define VIRTIO_BLK_F_BLK_SIZE BIT6 // treated as "logical block size" in
- // practice; actual host side implementation
- // negotiates "optimal" block size
- // separately
-#define VIRTIO_BLK_F_SCSI BIT7
-#define VIRTIO_BLK_F_FLUSH BIT9 // identical to "write cache enabled"
-
-
-//
-// We keep the status byte separate from the rest of the virtio-blk request
-// header. See description of historical scattering at the end of Appendix D:
-// we're going to put the status byte in a separate VRING_DESC.
-//
-#pragma pack(1)
-typedef struct {
- UINT32 Type;
- UINT32 IoPrio;
- UINT64 Sector;
-} VIRTIO_BLK_REQ;
-#pragma pack()
-
-#define VIRTIO_BLK_T_IN 0x00000000
-#define VIRTIO_BLK_T_OUT 0x00000001
-#define VIRTIO_BLK_T_SCSI_CMD 0x00000002
-#define VIRTIO_BLK_T_SCSI_CMD_OUT 0x00000003
-#define VIRTIO_BLK_T_FLUSH 0x00000004
-#define VIRTIO_BLK_T_FLUSH_OUT 0x00000005
-#define VIRTIO_BLK_T_BARRIER BIT31
-
-#define VIRTIO_BLK_S_OK 0x00
-#define VIRTIO_BLK_S_IOERR 0x01
-#define VIRTIO_BLK_S_UNSUPP 0x02
#endif // _VIRTIO_H_