Hi there,
I just replaced the ide controller in ovmf with the satacontroller from duet.
After fiddling a bit with the fdf it works for ide devices
To be specific I replaced
# INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf
# INF PcAtChipsetPkg/Bus/Pci/IdeControllerDxe/IdeControllerDxe.inf
with:
INF DuetPkg/SataControllerDxe/SataControllerDxe.inf
INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
The log for ide looks fine:
Found Mass Storage device: PciRoot(0x0)/Pci(0x1,0x1)
SataControllerStart START
InstallProtocolInterface: A1E37052-80D9-4E65-A317-3E9A55C43EC9 3EE58920
SataControllerStart END status = Success
==AtaAtapiPassThru Start== Controller = 3EE63998
[primary ] channel [master] [harddisk] device
Enabled S.M.A.R.T feature at [primary] channel [master] device!
CalculateBestPioMode: AdvancedPioMode = 3
But for some reason nothing happens when I attach a hdd on AHCI in qemu it
will detect the AHCI device and then fail when initializing AhciMode.
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.c
more specifically it happens here:
Status = AhciIdentify (PciIo, AhciRegisters, Port, 0, &Buffer);
if (EFI_ERROR (Status)) {
REPORT_STATUS_CODE (EFI_PROGRESS_CODE, (EFI_PERIPHERAL_FIXED_MEDIA |
EFI_P_EC_NOT_DETECTED));
continue;
}
What's happening? Why can't ahci mode be initialized?
Thanks,
Reza
------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel