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