drm/i915: fix oops on single crtc devices.
[safe/jmp/linux-2.6] / drivers / gpu / drm / Kconfig
index 6903e54..88910e5 100644 (file)
@@ -7,6 +7,9 @@
 menuconfig DRM
        tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
        depends on (AGP || AGP=n) && PCI && !EMULATED_CMPXCHG && MMU
 menuconfig DRM
        tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
        depends on (AGP || AGP=n) && PCI && !EMULATED_CMPXCHG && MMU
+       select I2C
+       select I2C_ALGOBIT
+       select SLOW_WORK
        help
          Kernel-level support for the Direct Rendering Infrastructure (DRI)
          introduced in XFree86 4.0. If you say Y here, you need to select
        help
          Kernel-level support for the Direct Rendering Infrastructure (DRI)
          introduced in XFree86 4.0. If you say Y here, you need to select
@@ -16,6 +19,22 @@ menuconfig DRM
          details.  You should also select and configure AGP
          (/dev/agpgart) support.
 
          details.  You should also select and configure AGP
          (/dev/agpgart) support.
 
+config DRM_KMS_HELPER
+       tristate
+       depends on DRM
+       select FB
+       select FRAMEBUFFER_CONSOLE if !EMBEDDED
+       help
+         FB and CRTC helpers for KMS drivers.
+
+config DRM_TTM
+       tristate
+       depends on DRM
+       help
+         GPU memory management subsystem for devices with multiple
+         GPU memory types. Will be enabled automatically if a device driver
+         uses it.
+
 config DRM_TDFX
        tristate "3dfx Banshee/Voodoo3+"
        depends on DRM && PCI
 config DRM_TDFX
        tristate "3dfx Banshee/Voodoo3+"
        depends on DRM && PCI
@@ -26,6 +45,7 @@ config DRM_TDFX
 config DRM_R128
        tristate "ATI Rage 128"
        depends on DRM && PCI
 config DRM_R128
        tristate "ATI Rage 128"
        depends on DRM && PCI
+       select FW_LOADER
        help
          Choose this option if you have an ATI Rage 128 graphics card.  If M
          is selected, the module will be called r128.  AGP support for
        help
          Choose this option if you have an ATI Rage 128 graphics card.  If M
          is selected, the module will be called r128.  AGP support for
@@ -34,6 +54,13 @@ config DRM_R128
 config DRM_RADEON
        tristate "ATI Radeon"
        depends on DRM && PCI
 config DRM_RADEON
        tristate "ATI Radeon"
        depends on DRM && PCI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select FW_LOADER
+        select DRM_KMS_HELPER
+        select DRM_TTM
+       select POWER_SUPPLY
        help
          Choose this option if you have an ATI Radeon graphics card.  There
          are both PCI and AGP versions.  You don't need to choose this to
        help
          Choose this option if you have an ATI Radeon graphics card.  There
          are both PCI and AGP versions.  You don't need to choose this to
@@ -41,6 +68,8 @@ config DRM_RADEON
 
          If M is selected, the module will be called radeon.
 
 
          If M is selected, the module will be called radeon.
 
+source "drivers/gpu/drm/radeon/Kconfig"
+
 config DRM_I810
        tristate "Intel I810"
        depends on DRM && AGP && AGP_INTEL
 config DRM_I810
        tristate "Intel I810"
        depends on DRM && AGP && AGP_INTEL
@@ -65,12 +94,20 @@ config DRM_I830
          will load the correct one.
 
 config DRM_I915
          will load the correct one.
 
 config DRM_I915
+       tristate "i915 driver"
+       depends on AGP_INTEL
+       select SHMEM
+       select DRM_KMS_HELPER
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
-       select I2C_ALGOBIT
-       depends on FB
-       tristate "i915 driver"
+       # i915 depends on ACPI_VIDEO when ACPI is enabled
+       # but for select to work, need to select ACPI_VIDEO's dependencies, ick
+       select VIDEO_OUTPUT_CONTROL if ACPI
+       select BACKLIGHT_CLASS_DEVICE if ACPI
+       select INPUT if ACPI
+       select ACPI_VIDEO if ACPI
+       select ACPI_BUTTON if ACPI
        help
          Choose this option if you have a system that has Intel 830M, 845G,
          852GM, 855GM 865G or 915G integrated graphics.  If M is selected, the
        help
          Choose this option if you have a system that has Intel 830M, 845G,
          852GM, 855GM 865G or 915G integrated graphics.  If M is selected, the
@@ -79,22 +116,22 @@ config DRM_I915
          XFree86 4.4 and above. If unsure, build this and i830 as modules and
          the X server will load the correct one.
 
          XFree86 4.4 and above. If unsure, build this and i830 as modules and
          the X server will load the correct one.
 
-endchoice
-
 config DRM_I915_KMS
        bool "Enable modesetting on intel by default"
        depends on DRM_I915
        help
 config DRM_I915_KMS
        bool "Enable modesetting on intel by default"
        depends on DRM_I915
        help
-       Choose this option if you want kernel modesetting enabled by default,
-       and you have a new enough userspace to support this. Running old
-       userspaces with this enabled will cause pain.  Note that this causes
-       the driver to bind to PCI devices, which precludes loading things
-       like intelfb.
+         Choose this option if you want kernel modesetting enabled by default,
+         and you have a new enough userspace to support this. Running old
+         userspaces with this enabled will cause pain.  Note that this causes
+         the driver to bind to PCI devices, which precludes loading things
+         like intelfb.
 
 
+endchoice
 
 config DRM_MGA
        tristate "Matrox g200/g400"
        depends on DRM
 
 config DRM_MGA
        tristate "Matrox g200/g400"
        depends on DRM
+       select FW_LOADER
        help
          Choose this option if you have a Matrox G200, G400 or G450 graphics
          card.  If M is selected, the module will be called mga.  AGP
        help
          Choose this option if you have a Matrox G200, G400 or G450 graphics
          card.  If M is selected, the module will be called mga.  AGP