summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2015-03-01 10:41:37 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-03-18 13:31:34 +0100
commitd0cf2aa4ba438fd0a4072edc59620b1b1f3cb3e7 (patch)
tree36b5426229440493e5f179b907b0fe18de62b6b1
parentf563d4825241ad7c9fd8fd3538efece0607d5869 (diff)
downloadlwn-d0cf2aa4ba438fd0a4072edc59620b1b1f3cb3e7.tar.gz
lwn-d0cf2aa4ba438fd0a4072edc59620b1b1f3cb3e7.zip
ACPI / video: Load the module even if ACPI is disabled
commit 6e17cb12881ba8d5e456b89f072dc6b70048af36 upstream. i915.ko depends upon the acpi/video.ko module and so refuses to load if ACPI is disabled at runtime if for example the BIOS is broken beyond repair. acpi/video provides an optional service for i915.ko and so we should just allow the modules to load, but do no nothing in order to let the machines boot correctly. Reported-by: Bill Augur <bill-auger@programmer.net> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Jani Nikula <jani.nikula@intel.com> Acked-by: Aaron Lu <aaron.lu@intel.com> [ rjw: Fixed up the new comment in acpi_video_init() ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/acpi/video.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
index bb0b90461a6b..997540dc8250 100644
--- a/drivers/acpi/video.c
+++ b/drivers/acpi/video.c
@@ -2064,6 +2064,17 @@ EXPORT_SYMBOL(acpi_video_unregister);
static int __init acpi_video_init(void)
{
+ /*
+ * Let the module load even if ACPI is disabled (e.g. due to
+ * a broken BIOS) so that i915.ko can still be loaded on such
+ * old systems without an AcpiOpRegion.
+ *
+ * acpi_video_register() will report -ENODEV later as well due
+ * to acpi_disabled when i915.ko tries to register itself afterwards.
+ */
+ if (acpi_disabled)
+ return 0;
+
dmi_check_system(video_dmi_table);
if (intel_opregion_present())