[PATCH] drm/i915: Provide a parameter to disable loading

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It can be handy at times to forbid i915 from loading at startup to
modprobe it later.

In particular, when trying to debug a problem that occurs at startup,
it's usually easier to boot into a working machine and modprobe the
driver at a more convenient time.

Signed-off-by: Damien Lespiau <damien.lespiau@xxxxxxxxx>
---
 drivers/gpu/drm/i915/i915_drv.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 61fb9fc..d80e47e 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -38,6 +38,12 @@
 #include <linux/module.h>
 #include <drm/drm_crtc_helper.h>
 
+static int i915_fail __read_mostly = 0;
+module_param_named(fail, i915_fail, int, 0400);
+MODULE_PARM_DESC(fail,
+		"Allow a user to skip loading the i915 driver, "
+		"0=load i915 as usual [default], 1=don't load");
+
 static int i915_modeset __read_mostly = -1;
 module_param_named(modeset, i915_modeset, int, 0400);
 MODULE_PARM_DESC(modeset,
@@ -823,6 +829,11 @@ static int i915_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 	struct intel_device_info *intel_info =
 		(struct intel_device_info *) ent->driver_data;
 
+	if (i915_fail) {
+		DRM_INFO("i915 disabled by module parameter\n");
+		return -ENODEV;
+	}
+
 	if (IS_PRELIMINARY_HW(intel_info) && !i915_preliminary_hw_support) {
 		DRM_INFO("This hardware requires preliminary hardware support.\n"
 			 "See CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT, and/or modparam preliminary_hw_support\n");
-- 
1.8.3.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux