|
@@ -28,12 +28,12 @@
|
|
#include <acpi/acpi_drivers.h>
|
|
#include <acpi/acpi_drivers.h>
|
|
#include <xen/acpi.h>
|
|
#include <xen/acpi.h>
|
|
|
|
|
|
|
|
+#ifdef CONFIG_ACPI
|
|
|
|
+
|
|
/*--------------------------------------------
|
|
/*--------------------------------------------
|
|
stub driver for Xen memory hotplug
|
|
stub driver for Xen memory hotplug
|
|
--------------------------------------------*/
|
|
--------------------------------------------*/
|
|
|
|
|
|
-#ifdef CONFIG_ACPI
|
|
|
|
-
|
|
|
|
static const struct acpi_device_id memory_device_ids[] = {
|
|
static const struct acpi_device_id memory_device_ids[] = {
|
|
{ACPI_MEMORY_DEVICE_HID, 0},
|
|
{ACPI_MEMORY_DEVICE_HID, 0},
|
|
{"", 0},
|
|
{"", 0},
|
|
@@ -63,4 +63,39 @@ void xen_stub_memory_device_exit(void)
|
|
}
|
|
}
|
|
EXPORT_SYMBOL_GPL(xen_stub_memory_device_exit);
|
|
EXPORT_SYMBOL_GPL(xen_stub_memory_device_exit);
|
|
|
|
|
|
|
|
+
|
|
|
|
+/*--------------------------------------------
|
|
|
|
+ stub driver for Xen cpu hotplug
|
|
|
|
+--------------------------------------------*/
|
|
|
|
+
|
|
|
|
+static const struct acpi_device_id processor_device_ids[] = {
|
|
|
|
+ {ACPI_PROCESSOR_OBJECT_HID, 0},
|
|
|
|
+ {ACPI_PROCESSOR_DEVICE_HID, 0},
|
|
|
|
+ {"", 0},
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct acpi_driver xen_stub_processor_driver = {
|
|
|
|
+ /* same name as native processor driver to block native loaded */
|
|
|
|
+ .name = "processor",
|
|
|
|
+ .class = ACPI_PROCESSOR_CLASS,
|
|
|
|
+ .ids = processor_device_ids,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+int xen_stub_processor_init(void)
|
|
|
|
+{
|
|
|
|
+ if (!xen_initial_domain())
|
|
|
|
+ return -ENODEV;
|
|
|
|
+
|
|
|
|
+ /* just reserve space for Xen, block native driver loaded */
|
|
|
|
+ return acpi_bus_register_driver(&xen_stub_processor_driver);
|
|
|
|
+}
|
|
|
|
+EXPORT_SYMBOL_GPL(xen_stub_processor_init);
|
|
|
|
+subsys_initcall(xen_stub_processor_init);
|
|
|
|
+
|
|
|
|
+void xen_stub_processor_exit(void)
|
|
|
|
+{
|
|
|
|
+ acpi_bus_unregister_driver(&xen_stub_processor_driver);
|
|
|
|
+}
|
|
|
|
+EXPORT_SYMBOL_GPL(xen_stub_processor_exit);
|
|
|
|
+
|
|
#endif
|
|
#endif
|