diff mbox

[edk2,v5,16/16] ArmVirtualizationPkg: add ArmVirtualizationQemu platform

Message ID 540004AC.8090105@redhat.com
State New
Headers show

Commit Message

Laszlo Ersek Aug. 29, 2014, 4:42 a.m. UTC
On 08/29/14 04:20, Laszlo Ersek wrote:

> IOW, please squash the 2nd patch too.

Attaching a 3rd one for squashing as well -- it adds the scsi bus & disk
drivers, so that you can actually use the virtio-scsi HBA for something.
(The protocol chain is [VirtioScsiDxe] -->
gEfiExtScsiPassThruProtocolGuid --> [ScsiBusDxe] -->
gEfiScsiIoProtocolGuid --> [ScsiDiskDxe] --> gEfiBlockIoProtocolGuid.)

Once these are included, you can specify, for example, a SCSI CD-ROM:

  -drive id=cd0,if=none,format=raw,readonly,file=xxx.iso \
  -device virtio-scsi-device,id=scsi0 \
  -device scsi-cd,bus=scsi0.0,drive=cd0

(edk2 will recognize the scsi cd-rom, but you'll only get a filesystem
on top if the ISO contains El Torito "stuff" that is appropriate for
UEFI booting.)

Thanks
Laszlo
------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
diff mbox

Patch

>From 5f06a8a23dbc6821657a6f7376a7c3e826823dd1 Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Fri, 29 Aug 2014 05:40:46 +0200
Subject: [PATCH] add scsi bus and disk driver

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
 ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc | 9 +++++++++
 ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.fdf | 6 ++++++
 2 files changed, 15 insertions(+)

diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc b/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc
index e98c3ff..b3a0b52 100644
--- a/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc
+++ b/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc
@@ -48,6 +48,9 @@ 
 
   TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
 
+[LibraryClasses.common.UEFI_DRIVER]
+  UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
+
 [LibraryClasses.AARCH64.SEC]
   ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64LibSec.inf
 
@@ -243,3 +246,9 @@ 
   #
   MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
   ArmPlatformPkg/Bds/Bds.inf
+
+  #
+  # SCSI Bus and Disk Driver
+  #
+  MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
+  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.fdf b/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.fdf
index 9dfdd56..ea79369 100644
--- a/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.fdf
+++ b/ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.fdf
@@ -179,6 +179,12 @@  READ_LOCK_STATUS   = TRUE
   INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
   INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
 
+  #
+  # SCSI Bus and Disk Driver
+  #
+  INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
+  INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
+
 [FV.FVMAIN_COMPACT]
 FvAlignment        = 16
 ERASE_POLARITY     = 1
-- 
1.8.3.1