From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: Re: [PATCH] drm/i915: refuse to load on gen6+ without kms Date: Mon, 26 Mar 2012 20:44:51 +0100 Message-ID: <1332791100_103676@CP5-2952> References: <1332790398-5837-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from fireflyinternet.com (smtp.fireflyinternet.com [109.228.6.236]) by gabe.freedesktop.org (Postfix) with ESMTP id 8C3399E84F for ; Mon, 26 Mar 2012 12:45:06 -0700 (PDT) In-Reply-To: <1332790398-5837-1-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Intel Graphics Development Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org On Mon, 26 Mar 2012 21:33:18 +0200, Daniel Vetter 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 > Signed-Off-by: Daniel Vetter > --- > 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