From f1ba3b4f33a928a3a59538799b3863de5c87e70e Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Wed, 14 Dec 2005 20:11:16 +0000 Subject: [PATCH] Bug #4718: Command line flag to disable ACPI. --- ChangeLog | 8 ++++++++ hw/xfree86/common/xf86Globals.c | 1 + hw/xfree86/common/xf86Init.c | 5 +++++ hw/xfree86/common/xf86Priv.h | 1 + hw/xfree86/os-support/linux/lnx_apm.c | 5 +++-- 5 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6e64c3292..ec34a33ee 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-12-14 Adam Jackson + + * hw/xfree86/common/xf86Globals.c: + * hw/xfree86/common/xf86Init.c: + * hw/xfree86/common/xf86Priv.h: + * hw/xfree86/os-support/linux/lnx_apm.c: + Bug #4718: Command line flag to disable ACPI. + 2005-12-13 Adam Jackson * Xext/Makefile.am: diff --git a/hw/xfree86/common/xf86Globals.c b/hw/xfree86/common/xf86Globals.c index 1a513e048..30fe10554 100644 --- a/hw/xfree86/common/xf86Globals.c +++ b/hw/xfree86/common/xf86Globals.c @@ -216,6 +216,7 @@ Bool xf86sFlag = FALSE; Bool xf86bsEnableFlag = FALSE; Bool xf86bsDisableFlag = FALSE; Bool xf86silkenMouseDisableFlag = FALSE; +Bool xf86acpiDisableFlag = FALSE; char *xf86LayoutName = NULL; char *xf86ScreenName = NULL; char *xf86PointerName = NULL; diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c index 38103af7f..b73da71dc 100644 --- a/hw/xfree86/common/xf86Init.c +++ b/hw/xfree86/common/xf86Init.c @@ -1660,6 +1660,11 @@ ddxProcessArgument(int argc, char **argv, int i) xf86silkenMouseDisableFlag = TRUE; return 1; } + if (!strcmp(argv[i], "-noacpi")) + { + xf86acpiDisableFlag = TRUE; + return 1; + } if (!strcmp(argv[i], "-scanpci")) { DoScanPci(argc, argv, i); diff --git a/hw/xfree86/common/xf86Priv.h b/hw/xfree86/common/xf86Priv.h index cbd1172e4..f32fa768d 100644 --- a/hw/xfree86/common/xf86Priv.h +++ b/hw/xfree86/common/xf86Priv.h @@ -60,6 +60,7 @@ extern Bool xf86sFlag; extern Bool xf86bsEnableFlag; extern Bool xf86bsDisableFlag; extern Bool xf86silkenMouseDisableFlag; +extern Bool xf86acpiDisableFlag; extern char *xf86LayoutName; extern char *xf86ScreenName; extern char *xf86PointerName; diff --git a/hw/xfree86/os-support/linux/lnx_apm.c b/hw/xfree86/os-support/linux/lnx_apm.c index 1c2dc0cf4..bd78d877f 100644 --- a/hw/xfree86/os-support/linux/lnx_apm.c +++ b/hw/xfree86/os-support/linux/lnx_apm.c @@ -131,9 +131,10 @@ xf86OSPMOpen(void) { PMClose ret = NULL; - /* Favour ACPI over APM */ + /* Favour ACPI over APM, but only when enabled */ - ret = lnxACPIOpen(); + if (!xf86acpiDisableFlag) + ret = lnxACPIOpen(); if (!ret) ret = lnxAPMOpen();