|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [edk2-devel] [PATCH v2 24/31] OvmfPkg/XenPlatformPei: Ignore missing PCI Host Bridge on Xen PVH
On 04/09/19 13:08, Anthony PERARD wrote:
> When the device ID of the host bridge is unknown, check if we are
> running as a PVH guest as there is no PCI bus in that case.
>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> ---
>
> Notes:
> v2:
> - Use new XEN_PVH_PCI_HOST_BRIDGE_DEVICE_ID macro
>
> OvmfPkg/Include/OvmfPlatforms.h | 6 ++++++
> OvmfPkg/XenPlatformPei/Platform.c | 7 +++++++
> 2 files changed, 13 insertions(+)
>
> diff --git a/OvmfPkg/Include/OvmfPlatforms.h b/OvmfPkg/Include/OvmfPlatforms.h
> index cc67f40a88..1ce71e18ec 100644
> --- a/OvmfPkg/Include/OvmfPlatforms.h
> +++ b/OvmfPkg/Include/OvmfPlatforms.h
> @@ -43,4 +43,10 @@
> //
> #define ACPI_TIMER_OFFSET 0x8
>
> +//
> +// When running OVMF on a Xen PVH guest there is no PCI,
> +// so -1 is return for the Host Bridge Device ID.
> +//
> +#define XEN_PVH_PCI_HOST_BRIDGE_DEVICE_ID 0xFFFF
> +
> #endif
We split the i440fx and Q35 host bridge device IDs to separate files,
under "OvmfPkg/Include/IndustryStandard/", in commit cb2e300766ae
("OvmfPkg: split Include/OvmfPlatforms.h", 2015-05-13).
(1) I'd prefer if we could introduce the above macro similarly -- and
include that header only in XenPlatformPei (plus wherever else it is
necessary).
Thanks!
Laszlo
> diff --git a/OvmfPkg/XenPlatformPei/Platform.c
> b/OvmfPkg/XenPlatformPei/Platform.c
> index 5e6d553ad5..d91cd98bf4 100644
> --- a/OvmfPkg/XenPlatformPei/Platform.c
> +++ b/OvmfPkg/XenPlatformPei/Platform.c
> @@ -278,6 +278,13 @@ MiscInitialization (
> AcpiEnBit = ICH9_ACPI_CNTL_ACPI_EN;
> break;
> default:
> + if (XenPvhDetected ()) {
> + //
> + // There is no PCI bus in this case
> + //
> + PcdSet16S (PcdOvmfHostBridgePciDevId,
> XEN_PVH_PCI_HOST_BRIDGE_DEVICE_ID);
> + return;
> + }
> DEBUG ((EFI_D_ERROR, "%a: Unknown Host Bridge Device ID: 0x%04x\n",
> __FUNCTION__, mHostBridgeDevId));
> ASSERT (FALSE);
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |