Jerome Glisse | 771fe6b | 2009-06-05 14:42:42 +0200 | [diff] [blame^] | 1 | config DRM_RADEON_KMS |
| 2 | bool "Enable modesetting on radeon by default" |
| 3 | depends on DRM_RADEON |
| 4 | select DRM_TTM |
| 5 | help |
| 6 | Choose this option if you want kernel modesetting enabled by default, |
| 7 | and you have a new enough userspace to support this. Running old |
| 8 | userspaces with this enabled will cause pain. |
| 9 | |
| 10 | When kernel modesetting is enabled the IOCTL of radeon/drm |
| 11 | driver are considered as invalid and an error message is printed |
| 12 | in the log and they return failure. |
| 13 | |
| 14 | KMS enabled userspace will use new API to talk with the radeon/drm |
| 15 | driver. The new API provide functions to create/destroy/share/mmap |
| 16 | buffer object which are then managed by the kernel memory manager |
| 17 | (here TTM). In order to submit command to the GPU the userspace |
| 18 | provide a buffer holding the command stream, along this buffer |
| 19 | userspace have to provide a list of buffer object used by the |
| 20 | command stream. The kernel radeon driver will then place buffer |
| 21 | in GPU accessible memory and will update command stream to reflect |
| 22 | the position of the different buffers. |
| 23 | |
| 24 | The kernel will also perform security check on command stream |
| 25 | provided by the user, we want to catch and forbid any illegal use |
| 26 | of the GPU such as DMA into random system memory or into memory |
| 27 | not owned by the process supplying the command stream. This part |
| 28 | of the code is still incomplete and this why we propose that patch |
| 29 | as a staging driver addition, future security might forbid current |
| 30 | experimental userspace to run. |
| 31 | |
| 32 | This code support the following hardware : R1XX,R2XX,R3XX,R4XX,R5XX |
| 33 | (radeon up to X1950). Works is underway to provide support for R6XX, |
| 34 | R7XX and newer hardware (radeon from HD2XXX to HD4XXX). |