xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas.
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Fri, 25 Oct 2013 20:26:02 +0000 (16:26 -0400)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Fri, 8 Nov 2013 20:12:52 +0000 (15:12 -0500)
commit8deb3eb1461e4cb136c88d03ec5a6729ccf2f933
tree268e9ca7115273256bcffae24c360951dc315daa
parentaf09d1a73aed4e83ee095f2dabdc09386e31f2ea
xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved for MCFG areas.

The PCI MMCONFIG area is usually reserved via the E820 so the Xen hypervisor
is aware of these regions. But they can also be enumerated in the ACPI
DSDT which means the hypervisor won't know of them until the initial
domain informs it of via PHYSDEVOP_pci_mmcfg_reserved.

This is what this patch does for all of the MCFG regions that the
initial domain is aware of (E820 enumerated and ACPI).

Reported-by: Santosh Jodh <Santosh.Jodh@citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
CC: David Vrabel <david.vrabel@citrix.com>
CC: Mukesh Rathor <mukesh.rathor@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
[v1: Redid it a bit]
[v2: Dropped the P2M 1-1 setting]
[v3: Check for Xen in-case we are running under baremetal]
[v4: Wrap with CONFIG_PCI_MMCONFIG]
drivers/xen/pci.c
include/xen/interface/physdev.h