Jens Owen wrote: > Brian Paul wrote: > >> >> I've whipped up an HTML table which summarizes the features of the DRI >> drivers. > > > Thanks Brian. Here are some more corrections: > > 1) Driver headings on top row:
This was intended to be interpreted as chipsets, not drivers. By that reasoning, I should probably split G200 and G400, but they're pretty similar. > It looks like the driver names were based on some common names we > throw around when talking about these drivers. Unfortunately, these > names can be very confusing as times, so I've tried to generate > consistent names using the IHV's name followed by the directory name for > the 3D driver. Here is what I got: > > ATI r200, ATI radeon, ATI r128, Intel i810, Intel i830, Matrox mga, > 3Dfx Voodoo3, 3Dfx Voodoo5. > > Note, I didn't follow my convention for the 3Dfx drivers in that a > single source directory generates two different drivers with very > different features in your matrix. I think we'll find as time goes on > that it's not unusual for a single driver to generate very different > results in the matrix depending on the capabilities for the specific > hardware. I know there are a few for the G200 vs G400 hardware for > example. > > 2) Cards Row. > > This is the hardest row to keep up to date. > > ATI r200 Column: I realize the 8700 has the R200 chipset, but has > anybody successfully testing the 8700 or 8900 with the R200 open source > driver? > > ATI r128 Column: Was support for "Pro" cards ever completed? I know > the initial driver did not have it. "Pro" is listed on DRI Status page: http://dri.sourceforge.net/dri_status.phtml > Intel I830 Column: i845 is also supported, this can be changed to > i830/i845 chipsets. > > Matrox mga Column: Millenium and Mystique are not supported by this > driver. G200 is listed twice. The product names were "Millenium G200, Millenium G400, Mystique 200" etc. Again, I got these from the existing DRI docs. The weird table word wrapping requires very careful reading. > 3) Kernel Module Row, ATI R200 Column: > > There is no r200.o kernel module. This should be radeon.o Fixed. > 4) Added 2D Driver Module Row. Row inverted here for the sake of e-mail: > > DRI Driver 2D Driver Name > > ATI r200 radeon_drv.o > ATI radeon radeon_drv.o > ATI r128 r128_drv.o > Intel i810 i810_drv.o > Intel i830 i810_drv.o > Matrox mga mga_drv.o > 3Dfx Voodoo3 tdfx_drv.o > 3Dfx Voodoo5 tdfx_drv.o Done. Attached is an update. If anyone else wants to make changes, do so, and post a new table.html file. -Brian
Summary of DRI driver features:
| ATI r200 | ATI Radeon | ATI r128 | Intel i810/815 | Intel i830/845 | Matrox G200/400 | 3dfx Voodoo3 | 3dfx Voodoo5 | |
| Cards | Radeon 8500, 8700 | Radeon 7x00 | Rage Fury/Pro/Magnum, XPERT 2000, XPERT 128, XPERT 99, All-in-Wonder 128 |
i810/815 chipsets | i830/845 chipsets | Millenium G200, G400, G450, Mystique G200 | Voodoo3, Banshee, Velocity 100/200 | Voodoo4 4500, Voodoo5 5500 |
| Intel/AMD x86 | YES (AGP only) | YES (AGP only) | YES | YES | YES | YES | YES | YES |
| DEC Alpha | YES | YES | YES | no | no | no | YES | YES |
| PowerPC | ? | ? | ? | ? | ? | ? | ? | ? |
| Driver Name | r200_dri.so | radeon_dri.so | r128_dri.so | i810_dri.so | i830_dri.so | mga_dri.so | tdfx_dri.so | tdfx_dri.so |
| Kernel Module | radeon.o | radeon.o | r128.o | i810.o | i810.o | mga.o | tdfx.o | tdfx.o |
| 2D XFree86 Driver | radeon_drv.o | radeon_drv.o | r128_drv.o | i810_drv.o | i810_drv.o | mga_drv.o | tdfx_drv.o | tdfx_drv.o |
| Hardware Stencil | YES (@32bpp) | YES (@32bpp) | YES (@32bpp) | no | YES (@32bpp) | YES (@32bpp) | no | YES (@32bpp) |
| Hardware Alpha Channel | YES (@32bpp) | YES (@32bpp) | no | no | YES (@32bpp) | YES (@32bpp) | no | YES (@32bpp) |
| Hardware TCL | YES | YES | no | no | no | no | no | no |
| ARB_multitexture (units) | YES (2?) | YES (2?) | YES (2) | YES (2) | YES (2) | YES (G200:1, G400:2) | YES (2) | YES (2) |
| ARB_texture_cube_map | no | no | no | no | no | no | no | no |
| ARB/EXT_texture_env_add | YES | YES | YES | YES | YES | YES | YES | YES |
| ARB/EXT_texture_env_dot3 | YES | YES | no | no | no | no | no | no |
| ARB/EXT_texture_env_combine | YES | YES | no | no | YES | no | no | YES |
| EXT_blend_color | no | no | no | no | YES | no | no | no |
| EXT_blend_function_separate | no | no | no | no | YES | no | no | no |
| EXT_blend_logic_op | YES | YES | no | no | no | no | no | no |
| EXT_blend_min_max | YES | no | no | no | YES | no | no | no |
| EXT_blend_subtract | YES | YES | no | no | YES | no | no | no |
| EXT_fog_coord | YES | YES | no | no | YES | no | no | no |
| EXT_paletted_texture | no | no | no | no | no | no | YES | YES |
| EXT_secondary_color | YES | YES | no | no | YES | no | no | no |
| EXT_shared_texture_palette | no | no | no | no | no | no | no | no |
| EXT_stencil_wrap | YES | no | no | YES | YES | no | no | YES |
| EXT_texture_filter_anisotropic | YES | YES | no | no | no | no | no | no |
| EXT_texture_lod_bias | YES | YES | no | YES | YES | no | YES | YES |
| IBM_texture_mirrored_repeat | no | YES | no | no | no | no | no | no |
| MESA_pack_invert | YES | no | no | no | no | no | no | no |
| MESA_texture_ycbcr | YES | no | no | no | no | no | no | no |
| NV_texture_rectangle | YES | no | no | no | no | no | no | no |
| SGIS_generate_mipmap | no | YES | no | no | no | YES | no | no |
| GLX_NV_vertex_array_range | YES | no | no | no | no | no | no | no |
OpenGL Extensions enabled in all DRI drivers:
- GL_ARB_transpose_matrix
- GL_EXT_abgr
- GL_EXT_bgra
- GL_EXT_clip_volume_hint
- GL_EXT_compiled_vertex_array
- GL_EXT_packed_pixels
- GL_EXT_polygon_offset
- GL_EXT_rescale_normal
- GL_EXT_texture3D (in software)
- GL_EXT_texture_object
- GL_EXT_vertex_array
- GL_IBM_rasterpos_clip
- GL_MESA_window_pos
- GL_NV_texgen_reflection
