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