Revision: 15002
http://sourceforge.net/p/edk2/code/15002
Author: jljusten
Date: 2013-12-18 19:57:28 +0000 (Wed, 18 Dec 2013)
Log Message:
-----------
OvmfPkg: IndustryStandard/VirtioBlk: introduce topology-related definitions
Based on
<https://tools.oasis-open.org/version-control/browse/wsvn/virtio/virtio-v1.0-wd01-part1-specification.txt?rev=159>,
which is the last text format revision.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <[email protected]>
Reviewed-by: Jordan Justen <[email protected]>
Modified Paths:
--------------
trunk/edk2/OvmfPkg/Include/IndustryStandard/VirtioBlk.h
Modified: trunk/edk2/OvmfPkg/Include/IndustryStandard/VirtioBlk.h
===================================================================
--- trunk/edk2/OvmfPkg/Include/IndustryStandard/VirtioBlk.h 2013-12-18
19:57:18 UTC (rev 15001)
+++ trunk/edk2/OvmfPkg/Include/IndustryStandard/VirtioBlk.h 2013-12-18
19:57:28 UTC (rev 15002)
@@ -26,6 +26,13 @@
//
#pragma pack(1)
typedef struct {
+ UINT8 PhysicalBlockExp; // # of logical blocks per physical block (log2)
+ UINT8 AlignmentOffset; // offset of first aligned logical block
+ UINT16 MinIoSize; // suggested minimum I/O size in blocks
+ UINT32 OptIoSize; // optimal (suggested maximum) I/O size in blocks
+} VIRTIO_BLK_TOPOLOGY;
+
+typedef struct {
UINT64 Capacity;
UINT32 SizeMax;
UINT32 SegMax;
@@ -33,6 +40,7 @@
UINT8 Heads;
UINT8 Sectors;
UINT32 BlkSize;
+ VIRTIO_BLK_TOPOLOGY Topology;
} VIRTIO_BLK_CONFIG;
#pragma pack()
@@ -47,9 +55,11 @@
#define VIRTIO_BLK_F_BLK_SIZE BIT6 // treated as "logical block size" in
// practice; actual host side
// implementation negotiates "optimal"
- // block size separately
+ // block size separately, via
+ // VIRTIO_BLK_F_TOPOLOGY
#define VIRTIO_BLK_F_SCSI BIT7
#define VIRTIO_BLK_F_FLUSH BIT9 // identical to "write cache enabled"
+#define VIRTIO_BLK_F_TOPOLOGY BIT10 // information on optimal I/O alignment
//
// We keep the status byte separate from the rest of the virtio-blk request
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how application performance
affects their revenue. With AppDynamics, you get 100% visibility into your
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits