Anthony PERARD 5de8a35c62 OvmfPkg/XenPvBlkDxe: Add BlockIo.
Implement the BlockIo protocol.

Change in V4:
- Replace the license by the commonly used file header text.

Change in V3:
- assert(Media->BlockSize % 512 == 0)
- Use Sector instead of Offset to issue IOs.

Change in V2:
- Remove blockIo2 headers.
- Fix few comment.
- file header, copyright
- Rewrite few comment and error messages
- No more callback
- Improving block read/write, increase to the max size in one request
  (instead of only 8pages)
- Fix lastblock when it's a cdrom
- Do uninitialisation when fail to install fail
- few comment
- Licenses

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16274 6f19259b-4bc3-4df7-8a09-765794883524
2014-10-29 06:52:13 +00:00

64 lines
1.5 KiB
INI

## @file
# This driver produces a Block I/O protocol for a Xen PV block device.
#
# Copyright (C) 2014, Citrix Ltd.
#
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = XenPvBlkDxe
FILE_GUID = 8c2487ea-9af3-11e3-b966-b8ac6f7d65e6
MODULE_TYPE = UEFI_DRIVER
VERSION_STRING = 1.0
ENTRY_POINT = XenPvBlkDxeDriverEntryPoint
UNLOAD_IMAGE = XenPvBlkDxeUnload
[Packages]
MdePkg/MdePkg.dec
OvmfPkg/OvmfPkg.dec
[Sources]
XenPvBlkDxe.h
XenPvBlkDxe.c
ComponentName.c
ComponentName.h
BlockFront.c
BlockFront.h
BlockIo.c
BlockIo.h
[LibraryClasses]
UefiDriverEntryPoint
UefiBootServicesTableLib
MemoryAllocationLib
BaseMemoryLib
BaseLib
UefiLib
DevicePathLib
DebugLib
[Protocols]
gEfiDriverBindingProtocolGuid
gEfiBlockIoProtocolGuid
gEfiComponentName2ProtocolGuid
gEfiComponentNameProtocolGuid
gXenBusProtocolGuid
gEfiDevicePathProtocolGuid ## TO_START
[Guids]