Actually to be more specific the PioTransfer does not work. It will return an
EFI_ERROR at the following point:

    Offset = FisBaseAddr + EFI_AHCI_D2H_FIS_OFFSET;
    Status = AhciCheckMemSet (Offset, EFI_AHCI_FIS_TYPE_MASK,
            EFI_AHCI_FIS_REGISTER_D2H, 0);
    if (!EFI_ERROR (Status)) {
        Status = EFI_DEVICE_ERROR;
        break;
    }


On 22/06/14 16:06, Reza Jelveh wrote:
> 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

-- 
Reza Jelveh | @rjzzleep | reza.jelveh.me

------------------------------------------------------------------------------
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

Reply via email to