Hao,

One issue with this approach is that BDS may be downloading ISO images (from 
HTTP Boot options) and generating RAMDisks (of type Reserved memory) *AFTER* 
ReadyToBoot is signaled (after first unsuccessful BDS boot attempt). Also, the 
user may do this using Shell tools from the Shell (also after ReadyToBoot).

Is it possible to keep track of Reserved memory RAMDisks that are created using 
the protocol after ReadyToBoot, then add them to the NFIT table? You still need 
this patch for the initial RAMDisk NFIT Table (and ACPI space) creation at 
ReadyToBoot

Thanks,
--Samer

-----Original Message-----
From: Hao Wu [mailto:hao.a...@intel.com] 
Sent: Thursday, April 28, 2016 12:08 AM
To: edk2-devel@lists.01.org; feng.t...@intel.com; El-Haj-Mahmoud, Samer 
<samer.el-haj-mahm...@hpe.com>; jiewen....@intel.com
Cc: Hao Wu <hao.a...@intel.com>
Subject: [PATCH v3 0/2] Report ACPI NFIT for reserved memory RAM disks

Changes compared with V2:
1. RamDiskDxe driver now will register an EFI event in the Ready To Boot
   Event Group to a). detect whether EFI_ACPI_TABLE_PROTOCOL and
   EFI_ACPI_SDT_PROTOCOL are both produced; b). publish all the reserved
   memory type RAM disks registered at this point to the NFIT if both
   protocols are produced.

2. The RamDiskUnpublishNfit() now will uninstall NFIT and SSDT that is
   used to report the NVDIMM root device from the ACPI table when there is
   no NFIT structure in NFIT after removing a RAM disk.

3. Instead of adding a new rule in OvmfPkg FDF files, the patch now lists
   the asl and aml options in the main [Rule.Common.DXE_DRIVER] field.


Changes compared with V1:
1. Instead of creating a new NFIT for each registered reserved memory RAM
   disk, new cotent of the NFIT is appended to the existing one.

2. Report an NVDIMM root device in the \SB scope if there is no NFIT in
   the ACPI table.

3. Modify FDF files in OvmfPkg to make sure the report of the NVDIMM root
   device will be done correctly.


Hao Wu (2):
  MdeModulePkg RamDiskDxe: Report ACPI NFIT for reserved memory RAM
    disks
  OvmfPkg: Modify fdf files due to RamDiskDxe driver's adding ASL code

 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDisk.asl |  44 ++
 .../Universal/Disk/RamDiskDxe/RamDiskDriver.c      |  80 ++++
 .../Universal/Disk/RamDiskDxe/RamDiskDxe.inf       |  12 +
 .../Universal/Disk/RamDiskDxe/RamDiskImpl.h        |  28 ++
 .../Universal/Disk/RamDiskDxe/RamDiskProtocol.c    | 494 +++++++++++++++++++++
 OvmfPkg/OvmfPkgIa32.fdf                            |   2 +
 OvmfPkg/OvmfPkgIa32X64.fdf                         |   2 +
 OvmfPkg/OvmfPkgX64.fdf                             |   2 +
 8 files changed, 664 insertions(+)
 create mode 100644 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDisk.asl

-- 
1.9.5.msysgit.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to