(Ray, I'll ask a question below about SataControllerDxe, thanks for your attention.)
On 08/06/14 18:16, [email protected] wrote: > From: Reza Jelveh <[email protected]> > > Replace the IdeController with a SataController that supports both in the > Ovmf firmware. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Reza Jelveh <[email protected]> > --- > OvmfPkg/OvmfPkgX64.dsc | 15 +++++++++++---- > OvmfPkg/OvmfPkgX64.fdf | 11 +++++++---- > 2 files changed, 18 insertions(+), 8 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc > index 66459c2..b629a5e 100644 > --- a/OvmfPkg/OvmfPkgX64.dsc > +++ b/OvmfPkg/OvmfPkgX64.dsc > @@ -78,6 +78,7 @@ > CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf > DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf > > DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf > + > ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf Reza, Which driver that you are introducing in this patch requires this? >From "MdePkg/Include/Library/ExtractGuidedSectionLib.h": This library provides common functions to process the different guided section data. This library provides functions to process GUIDed sections of FFS files. Handlers may be registered to decode GUIDed sections of FFS files. Services are provided to determine the set of supported section GUIDs, collection information about a specific GUIDed section, and decode a specific GUIDed section. A library instance that produces this library class may be used to produce a EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI or a EFI_GUIDED_SECTION_EXTRACTION_PROTOCOL providing a simple method to extend the number of GUIDed sections types a platform supports. Actually, I can find this exact same library class --> library instance resolution in the DSC file elsewhere. The section that you are augmenting is [LibraryClasses] and the same class->instance resolution is already present under [LibraryClasses.common.DXE_CORE] The library makes perfect sense for the DXE core, but I can't see how anything related to a SATA driver would need it. If some other module type (ie. one of the drivers you are introducing) nonetheless needs the library class resolved, please state in the commit mesage which one. In addition, in that case you might want to add the resolution for only that one module type (eg. [LibraryClasses.common.DXE_DRIVER] or [LibraryClasses.common.UEFI_DRIVER]). Since the library instance "MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf" is not suitable for all module types, it probably shouldn't be under [LibraryClasses]. > > PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf > PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf > PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf > @@ -455,10 +456,6 @@ > MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf > MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf > MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf > - MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf > - MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf > - IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf > - PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf > MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf > MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf > MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf > @@ -470,6 +467,15 @@ > } > > # > + # AHCI Support > + # > + DuetPkg/SataControllerDxe/SataControllerDxe.inf > + MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf > + MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf > + MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf > + MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf > + > + # > # ISA Support > # > PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf Moved around / preserved: - MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf - MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf Removed: - IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf (provides gEfiDiskInfoProtocolGuid, gEfiBlockIoProtocolGuid) - PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf (provides gEfiIdeControllerInitProtocolGuid) Added: - DuetPkg/SataControllerDxe/SataControllerDxe.inf (provides gEfiIdeControllerInitProtocolGuid) - MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf (provides gEfiAtaPassThruProtocolGuid, gEfiExtScsiPassThruProtocolGuid) - MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf (provides gEfiDiskInfoProtocolGuid, gEfiBlockIoProtocolGuid, gEfiBlockIo2ProtocolGuid, gEfiStorageSecurityCommandProtocolGuid) Quantity-wise, the available protocols don't seem to regress. But: - Please describe with some kind of tree diagram or indentation in the commit message how the new stuff stacks up. Reviewers shouldn't have to gather that information for you. - I strongly dislike the fact that you need to pull in a DuetPkg module (for gEfiIdeControllerInitProtocolGuid); that's a first for OVMF. If that module is universally usable, it should belong to MdeModulePkg. Ray, can you please enlighten me why SataControllerDxe is under DuetPkg and not MdeModulePkg? Then, > @@ -567,3 +573,4 @@ > !endif > > OvmfPkg/PlatformDxe/Platform.inf > + IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf No clue what this is good for. It seems to produce gEfiDataHubProtocolGuid, which is consumed by... what? Based on your recent patches, please be *much* more verbose in commit messages. Both the pre-patch and the post-patch protocol dependency tree should be described, with the relevant drivers identified. You can't avoid knowing all this information, because you fixed the dependencies one by one. You added the one driver that you cared about, and added the rest to resolve dependencies. Please capture that process in the commit message with the tree I mentioned. Next week please ping Jordan too for a review. Thanks, Laszlo ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
