6795c985a6
This patch adds serveral new ioctls and a new query to get_param query to support PCI MGA cards. Two ioctls were added to implement interrupt based waiting. With this change, the client-side driver no longer needs to map the primary DMA region or the MMIO region. Previously, end-of-frame waiting was done by busy waiting in the client-side driver until one of the MMIO registers (the current DMA pointer) matched a pointer to the end of primary DMA space. By using interrupts, the busy waiting and the extra mappings are removed. A third ioctl was added to bootstrap DMA. This ioctl, which is used by the X-server, moves a *LOT* of code from the X-server into the kernel. This allows the kernel to do whatever needs to be done to setup DMA buffers. The entire process and the locations of the buffers are hidden from user-mode. Additionally, a get_param query was added to differentiate between G4x0 cards and G550 cards. A gap was left in the numbering sequence so that, if needed, G450 cards could be distinguished from G400 cards. According to Ville Syrjälä, the G4x0 cards and the G550 cards handle anisotropic filtering differently. This seems the most compatible way to let the client-side driver know which card it's own. Doing this very small change now eliminates the need to bump the DRM minor version twice. http://marc.theaimsgroup.com/?l=dri-devel&m=106625815319773&w=2 (airlied - this may not work at this point, I think the follow on buffer cleanup patches will be needed) From: Ian Romanick <idr@us.ibm.com> Signed-off-by: Dave Airlie <airlied@linux.ie>
106 lines
3.5 KiB
Plaintext
106 lines
3.5 KiB
Plaintext
#
|
|
# Drm device configuration
|
|
#
|
|
# This driver provides support for the
|
|
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
|
|
#
|
|
config DRM
|
|
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
|
|
depends on (AGP || AGP=n) && PCI
|
|
help
|
|
Kernel-level support for the Direct Rendering Infrastructure (DRI)
|
|
introduced in XFree86 4.0. If you say Y here, you need to select
|
|
the module that's right for your graphics card from the list below.
|
|
These modules provide support for synchronization, security, and
|
|
DMA transfers. Please see <http://dri.sourceforge.net/> for more
|
|
details. You should also select and configure AGP
|
|
(/dev/agpgart) support.
|
|
|
|
config DRM_TDFX
|
|
tristate "3dfx Banshee/Voodoo3+"
|
|
depends on DRM && PCI
|
|
help
|
|
Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
|
|
graphics card. If M is selected, the module will be called tdfx.
|
|
|
|
config DRM_GAMMA
|
|
tristate "3dlabs GMX 2000"
|
|
depends on DRM && BROKEN
|
|
help
|
|
This is the old gamma driver, please tell me if it might actually
|
|
work.
|
|
|
|
config DRM_R128
|
|
tristate "ATI Rage 128"
|
|
depends on DRM && PCI
|
|
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
|
|
this card is strongly suggested (unless you have a PCI version).
|
|
|
|
config DRM_RADEON
|
|
tristate "ATI Radeon"
|
|
depends on DRM && PCI
|
|
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
|
|
run the Radeon in plain VGA mode. There is a product page at
|
|
<http://www.ati.com/na/pages/products/pc/radeon32/index.html>.
|
|
If M is selected, the module will be called radeon.
|
|
|
|
config DRM_I810
|
|
tristate "Intel I810"
|
|
depends on DRM && AGP && AGP_INTEL
|
|
help
|
|
Choose this option if you have an Intel I810 graphics card. If M is
|
|
selected, the module will be called i810. AGP support is required
|
|
for this driver to work.
|
|
|
|
choice
|
|
prompt "Intel 830M, 845G, 852GM, 855GM, 865G"
|
|
depends on DRM && AGP && AGP_INTEL
|
|
optional
|
|
|
|
config DRM_I830
|
|
tristate "i830 driver"
|
|
help
|
|
Choose this option if you have a system that has Intel 830M, 845G,
|
|
852GM, 855GM or 865G integrated graphics. If M is selected, the
|
|
module will be called i830. AGP support is required for this driver
|
|
to work. This driver will eventually be replaced by the i915 one.
|
|
|
|
config DRM_I915
|
|
tristate "i915 driver"
|
|
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
|
|
module will be called i915. AGP support is required for this driver
|
|
to work. This driver will eventually replace the I830 driver, when
|
|
later release of X start to use the new DDX and DRI.
|
|
|
|
endchoice
|
|
|
|
config DRM_MGA
|
|
tristate "Matrox g200/g400"
|
|
depends on DRM
|
|
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
|
|
support is required for this driver to work.
|
|
|
|
config DRM_SIS
|
|
tristate "SiS video cards"
|
|
depends on DRM && AGP
|
|
help
|
|
Choose this option if you have a SiS 630 or compatible video
|
|
chipset. If M is selected the module will be called sis. AGP
|
|
support is required for this driver to work.
|
|
|
|
config DRM_VIA
|
|
tristate "Via unichrome video cards"
|
|
depends on DRM
|
|
help
|
|
Choose this option if you have a Via unichrome or compatible video
|
|
chipset. If M is selected the module will be called via.
|
|
|