Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Apr 2017 12:26:51 +0000
From:      Dexuan Cui <decui@microsoft.com>
To:        Jung-uk Kim <jkim@FreeBSD.org>, Yanmin Qiao <yaqia@microsoft.com>
Cc:        "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>
Subject:   Add support for ACPI Module Device ACPI0004?
Message-ID:  <HK2P15301MB0003969B87170C0593C92EB2BF180@HK2P15301MB0003.APCP153.PROD.OUTLOOK.COM>

next in thread | raw e-mail | index | archive | help
The ACPI firmware of Hyper-V UEFI VM has a Module Device whose Hardware
ID is "ACPI0004".  The module device has a _CRS object defining some MMIO
ranges, which are needed when physical PCIe devices are passed through
to the VM.

Currently it looks FreeBSD doesn't make use of the ACPI module device and
hence the _CRS object can't be easily retrieved by Hyper-V VMBus driver.

Can we add the support of "ACPI0004" with the below one-line change?

Looking forward to your suggestion!

--- a/sys/dev/acpica/acpi_resource.c
+++ b/sys/dev/acpica/acpi_resource.c
@@ -653,7 +653,7 @@ MODULE_DEPEND(acpi_sysresource, acpi, 1, 1, 1);
 static int
 acpi_sysres_probe(device_t dev)
 {
-    static char *sysres_ids[] =3D { "PNP0C01", "PNP0C02", NULL };
+    static char *sysres_ids[] =3D { "PNP0C01", "PNP0C02", "ACPI0004", NULL=
 };

     if (acpi_disabled("sysresource") ||
        ACPI_ID_PROBE(device_get_parent(dev), dev, sysres_ids) =3D=3D NULL)

Thanks,
-- Dexuan




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?HK2P15301MB0003969B87170C0593C92EB2BF180>