On Fri, Mar 04, 2016 at 03:46:29PM +0100, Laszlo Ersek wrote:
> The first two patches should fix
> <https://github.com/tianocore/edk2/issues/32>, based on Marcel's
> analysis in that item. (Thanks a lot for that again!) These patches are
> (and should be) independent of -D USE_OLD_PCI_HOST; that is, they are
> active regardless of the fallback that we're temporarily retaining.
> 
> Michał, can you please test if the series solves your issue?
> 
> Then, based on the first two patches, the other three expose ECAM to the
> firmware modules proper (DXE and later). These do depend on
> USE_OLD_PCI_HOST==FALSE (which is the default now, and the only
> supported build in the mid term).
> 
> I tested & regression tested the series in a bunch of scenarios; the
> most interesting is probably the usual physical GPU assignment. On Q35,
> the core PciHostBridgeDxe now permits access to the full extended config
> space, and it works all right with the PCIe GTX750.
> 
> Gabriel, can you please check if your Q35 OSX guest(s) continue working
> with this?

Applied this series on top of the remaining out-of-tree osx-specific 
patches I keep around, and q35 10.9 through 10.11 appear to work fine.

Older versions (10.8 and older) won't boot even without this series
applied, so if they ever did work (not really sure about that), it
wasn't anything recent that made them stop :)

Tested-by: Gabriel Somlo <so...@cmu.edu>

Cheers,
--Gabriel

> 
> Public branch: <https://github.com/lersek/edk2/commits/pcie_issue32_v1>.
> 
> Cc: Gabriel Somlo <so...@cmu.edu>
> Cc: Jordan Justen <jordan.l.jus...@intel.com>
> Cc: Marcel Apfelbaum <mar...@redhat.com>
> Cc: Michał Zegan <webczat_...@poczta.onet.pl>
> Cc: Ruiyu Ni <ruiyu...@intel.com>
> 
> Thanks!
> Laszlo
> 
> Laszlo Ersek (5):
>   OvmfPkg: IndustryStandard/Q35MchIch9.h: add PCIEXBAR macros
>   OvmfPkg: PlatformPei: enable PCIEXBAR (aka MMCONFIG / ECAM) on Q35
>   OvmfPkg: add DxePciLibI440FxQ35
>   OvmfPkg: match PCI config access to machine type (if not
>     USE_OLD_PCI_HOST)
>   OvmfPkg: PciHostBridgeLib: permit access to the full extended config
>     space
> 
>  OvmfPkg/Include/IndustryStandard/Q35MchIch9.h                                
>  |   8 +
>  OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf                    
>  |  47 ++++++
>  {MdePkg/Library/BasePciLibCf8 => 
> OvmfPkg/Library/DxePciLibI440FxQ35}/PciLib.c | 161 +++++++++++++++-----
>  OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c                          
>  |   4 +-
>  OvmfPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf                        
>  |   1 +
>  OvmfPkg/OvmfPkgIa32.dsc                                                      
>  |  29 ++++
>  OvmfPkg/OvmfPkgIa32X64.dsc                                                   
>  |  29 ++++
>  OvmfPkg/OvmfPkgX64.dsc                                                       
>  |  29 ++++
>  OvmfPkg/PlatformPei/Platform.c                                               
>  |  81 ++++++++++
>  OvmfPkg/PlatformPei/PlatformPei.inf                                          
>  |   3 +
>  10 files changed, 356 insertions(+), 36 deletions(-)
>  create mode 100644 OvmfPkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
>  copy {MdePkg/Library/BasePciLibCf8 => 
> OvmfPkg/Library/DxePciLibI440FxQ35}/PciLib.c (85%)
> 
> -- 
> 1.8.3.1
> 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to