I've gone through Reza's v3 posting with extreme care, and also through the feedback that series elicited.
http://thread.gmane.org/gmane.comp.bios.tianocore.devel/10545 Ultimately I've preserved the mostly uncontested patches (v3 1/5, v3 2/5, v3 5/5), although I placed them in a more logical / bisectable order, plus I updated the commit messages extensively, and squashed in a fix from Feng where it was appropriate. The controversial patches (v3 3/5, v3 4/5) I've simply dropped, and instead of those I implemented Feng's recommendations the best I could (see the precise references broken out in the patches). This allowed me to avoid touching AhciModeInitialization(). I also sprinkled a few fixes (cosmetic or otherwise) over DuetPkg and PcAtChipsetPkg, plus extended QemuBootOrderLib so that it covers Q35 SATA disks and CD-ROMs. Reza: in <http://thread.gmane.org/gmane.comp.bios.tianocore.devel/10545/focus=10818> you mentioned an OVMF "lock up"; on 2014-10-29. I think that *might* have been an issue that Hannes fixed later in QEMU; see commit 702c8c8b ("ahci: Fix CD-ROM signature"). Hannes, Gabriel: I've determined that the patches you've been using correspond to Reza's v1 and v2 postings. (I forget which one of you has been using which one of v1 vs. v2; the point is, none of those were v3. In any case, grab v4.) Public branch: <https://github.com/lersek/edk2/commits/sata_v4>. NOTE: You will also need the following QEMU bugfix for this to work: <http://thread.gmane.org/gmane.comp.emulators.qemu.block/4327>. Testing with various guest OSes is welcome. I tested Fedora (installer CD-ROM and installed disk). I also did some light-weight regression testing with i440fx IDE devices. "Enjoy", I guess. :) Cc: Alexander Graf <[email protected]> Cc: Reza Jelveh <[email protected]> Cc: Jordan Justen <[email protected]> Cc: Ruiyu Ni <[email protected]> Cc: Hannes Reinecke <[email protected]> Cc: Gabriel L. Somlo <[email protected]> Cc: Feng Tian <[email protected]> Thanks Laszlo Laszlo Ersek (7): DuetPkg: SataControllerDxe: fix typo in "DisqulifiedModes" DuetPkg: SataControllerDxe: fix private array subscripting OvmfPkg: SataControllerDxe: add cascading error handling to Start() OvmfPkg: SataControllerDxe: enable IO / mem access and DMA when binding OvmfPkg: SataControllerDxe: enable AHCI mode if IS_PCI_SATADPA() PcAtChipsetPkg: IdeControllerDxe: fix protocol usage hints in the INF file OvmfPkg: QemuBootOrderLib: recognize Q35 SATA disks / CD-ROMs Reza Jelveh (3): OvmfPkg: copy SataControllerDxe from DuetPkg MdeModulePkg: AtaAtapiPassThru: select master/slave around DIAG command OvmfPkg: enable SATA controller {DuetPkg => OvmfPkg}/SataControllerDxe/SataControllerDxe.inf | 2 +- PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf | 4 +- DuetPkg/SataControllerDxe/SataController.h | 2 +- {DuetPkg => OvmfPkg}/SataControllerDxe/SataController.h | 9 +- DuetPkg/SataControllerDxe/SataController.c | 74 +++++++-- MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c | 5 + OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.c | 43 +++++ {DuetPkg => OvmfPkg}/SataControllerDxe/ComponentName.c | 0 {DuetPkg => OvmfPkg}/SataControllerDxe/SataController.c | 172 +++++++++++++++----- OvmfPkg/OvmfPkgIa32.dsc | 5 +- OvmfPkg/OvmfPkgIa32.fdf | 5 +- OvmfPkg/OvmfPkgIa32X64.dsc | 5 +- OvmfPkg/OvmfPkgIa32X64.fdf | 5 +- OvmfPkg/OvmfPkgX64.dsc | 5 +- OvmfPkg/OvmfPkgX64.fdf | 5 +- 15 files changed, 267 insertions(+), 74 deletions(-) copy {DuetPkg => OvmfPkg}/SataControllerDxe/SataControllerDxe.inf (91%) copy {DuetPkg => OvmfPkg}/SataControllerDxe/SataController.h (96%) copy {DuetPkg => OvmfPkg}/SataControllerDxe/ComponentName.c (100%) copy {DuetPkg => OvmfPkg}/SataControllerDxe/SataController.c (85%) -- 1.8.3.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

