[Intel-gfx] [PATCH] drm/i915: refuse to load on gen6+ without kms
Chris Wilson
chris at chris-wilson.co.uk
Mon Mar 26 21:44:51 CEST 2012
On Mon, 26 Mar 2012 21:33:18 +0200, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> Spurred by an irc discussion, let's start to clear up which parts of
> our kms + ums/gem + ums/dri1 + vbios/dri1 kernel driver pieces
> userspace in the wild actually uses.
>
> The idea is that we introduce checks at entry-points (module load
> time, ioctls, ...) first and then reap any obviously dead code in a
> second step.
>
> As a first step refuse to load without kms on chips where userspace
> never supported ums. Now upstream hasn't supported ums on ilk, ever.
> But RHEL had the great idea to backport the kms support to their ums
> driver.
>
> Cc: Dave Airlie <airlied at gmail.com>
> Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> ---
> drivers/gpu/drm/i915/i915_dma.c | 10 +++++++++-
> 1 files changed, 9 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index 64dfbb8..8567fdf 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -1955,9 +1955,17 @@ i915_mtrr_setup(struct drm_i915_private *dev_priv, unsigned long base,
> int i915_driver_load(struct drm_device *dev, unsigned long flags)
> {
> struct drm_i915_private *dev_priv;
> + struct intel_device_info *info;
> int ret = 0, mmio_bar;
> uint32_t agp_size;
>
> + info = (struct intel_device_info *) flags;
> +
> + /* Refuse to load on gen6+ without kms enabled. */
> + if (info->gen >= 6 && !drm_core_check_feature(dev, DRIVER_MODESET))
> + return -ENODEV;
The problem here is that this highlights that with the default
configuration we have no driver for our current hardware in the kernel.
You would also need to sneak
diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index cc11488..ebc5135 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -139,6 +139,7 @@ config DRM_I915
config DRM_I915_KMS
bool "Enable modesetting on intel by default"
depends on DRM_I915
+ default y
help
Choose this option if you want kernel modesetting enabled by default,
and you have a new enough userspace to support this. Running old
past Linus first.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list