drm/radeon/kms/pm: rework power management
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / gpu / drm / radeon / Kconfig
blob80c5b3ea28b417e70dc2aa4c7f6068c4e442b20f
1 config DRM_RADEON_KMS
2         bool "Enable modesetting on radeon by default - NEW DRIVER"
3         depends on DRM_RADEON
4         depends on POWER_SUPPLY
5         help
6           Choose this option if you want kernel modesetting enabled by default.
8           This is a completely new driver. It's only part of the existing drm
9           for compatibility reasons. It requires an entirely different graphics
10           stack above it and works very differently from the old drm stack.
11           i.e. don't enable this unless you know what you are doing it may
12           cause issues or bugs compared to the previous userspace driver stack.
14           When kernel modesetting is enabled the IOCTL of radeon/drm
15           driver are considered as invalid and an error message is printed
16           in the log and they return failure.
18           KMS enabled userspace will use new API to talk with the radeon/drm
19           driver. The new API provide functions to create/destroy/share/mmap
20           buffer object which are then managed by the kernel memory manager
21           (here TTM). In order to submit command to the GPU the userspace
22           provide a buffer holding the command stream, along this buffer
23           userspace have to provide a list of buffer object used by the
24           command stream. The kernel radeon driver will then place buffer
25           in GPU accessible memory and will update command stream to reflect
26           the position of the different buffers.
28           The kernel will also perform security check on command stream
29           provided by the user, we want to catch and forbid any illegal use
30           of the GPU such as DMA into random system memory or into memory
31           not owned by the process supplying the command stream. This part
32           of the code is still incomplete and this why we propose that patch
33           as a staging driver addition, future security might forbid current
34           experimental userspace to run.
36           This code support the following hardware : R1XX,R2XX,R3XX,R4XX,R5XX
37           (radeon up to X1950). Works is underway to provide support for R6XX,
38           R7XX and newer hardware (radeon from HD2XXX to HD4XXX).