# radeon or radeonhd driver?

## Xamindar

I have a Mobility Radeon x1400 still usinf the fglrx drivers from AMD. As the newer ones do not support my card any more I guess I have to upgrade to an open source driver. From searching around it looks like both open source drivers support 3d on my card now. The question is, which is better and more stable to use? I have never used radeonhd before. Does one support more features than the other? Faster? 

Please let me know what you have experienced. I will probably just install both anyway and see for myself. Do they both support the same xorg.conf options?

Thanks for any help.

----------

## sera

x11-drivers/xf86-video-radeonhd and x11-drivers/xf86-video-ati both will work

As you have also an r500(M54) card I suggest using radeonhd as I do with success.

About the stability: Radeonhd is rock solid stable. Ati is stable, at least a lot more than fglrx.

About xorg.conf: They are not the same.

About features: For r500 cards radeonhd hast most features a user wants and all features I need. In general ati has more features.

In any case add both radeon and radeonhd to make.conf as the stable mesa ebuild still doesn't handle the radeonhd use case.

----------

## Xamindar

That was pretty easy. Got the radeonhd driver working right away. But 3d performance is considerably slower than it was with the fglrx drivers. Direct rendering is enabled so I'm not sure what I'm missing. Is there somewhere were I can find xorg.conf options? I have looked all throught the radeon docs at x.org but it appears no one has documented it.

----------

## Xamindar

Also, now kde4.3 gives me a completely white screen when I log in and everything is extremely slow. Gnome works fine though. Both are using compiz fusion. Has anyone else had this issue?

----------

## yangman

3D is handled by Mesa. What xorg driver is being used is irrelevant.

----------

## sera

 *Xamindar wrote:*   

> Is there somewhere were I can find xorg.conf options? I have looked all throught the radeon docs at x.org but it appears no one has documented it.

 

```
man radeonhd
```

----------

## DirtyHairy

 *yangman wrote:*   

> 3D is handled by Mesa. What xorg driver is being used is irrelevant.

 

Sorry, that's not completely true, the 3D code itself resides in mesa but still needs the correct xorg + drm drivers to work. I personally never had any luck with radeonhd on my X1300, but radeon is working fine. However, 3D performance _is_ significantly lower than with fglrx. What does glxinfo say, is direct rendering enabled?

----------

## Xamindar

 *sera wrote:*   

>  *Xamindar wrote:*   Is there somewhere were I can find xorg.conf options? I have looked all throught the radeon docs at x.org but it appears no one has documented it. 
> 
> ```
> man radeonhd
> ```
> ...

 

Thanks sera, forgot about that. Seems to work better now that it is set to EXA. But still the kde4.3 problem. It's like it's going to a software rendering when I load kde.

----------

## sera

Beside Xv not being completely tear free I have no issues (mine is a rv560). but if you are not satisfied just give the other driver a try.

----------

## Xamindar

I'm now on just the normal radeon driver. Same exact issues though.  :Sad: 

----------

## Xamindar

Revisiting this issue I have a few questions. Hope someone can help me here.

Why is it using an r300 driver? Seems it is missing features that my card (r500) uses and would also help compiz to work.

```
server glx version string: 1.2

client glx version string: 1.4
```

Why don't these match? Is there a way to get them both at 1.4?

```
 $ glxinfo 

name of display: :0.0

libGL: XF86DRIGetClientDriverName: 5.3.0 r300 (screen 0)

libGL: OpenDriver: trying /usr/lib64/dri/tls/r300_dri.so

libGL: OpenDriver: trying /usr/lib64/dri/r300_dri.so

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 4, (OK)

drmOpenByBusid: Searching for BusID pci:0000:01:00.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 4, (OK)

drmOpenByBusid: drmOpenMinor returns 4

drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0

libGL: Can't open configuration file /etc/drirc: No such file or directory.

libGL: Can't open configuration file /home/xamindar/.drirc: No such file or directory.

display: :0  screen: 0

direct rendering: Yes

server glx vendor string: SGI

server glx version string: 1.2

server glx extensions:

    GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, 

    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, 

    GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control, 

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 

    GLX_SGIX_visual_select_group

client glx vendor string: SGI

client glx version string: 1.4

client glx extensions:

    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 

    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory, 

    GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control, 

    GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control, 

    GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync, 

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 

    GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap

GLX version: 1.2

GLX extensions:

    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 

    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, 

    GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method, 

    GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync, 

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 

    GLX_SGIX_visual_select_group

OpenGL vendor string: DRI R300 Project

OpenGL renderer string: Mesa DRI R300 20060815  TCL

OpenGL version string: 1.4 Mesa 7.5.2

OpenGL extensions:

    GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program, 

    GL_ARB_imaging, GL_ARB_multisample, GL_ARB_multitexture, 

    GL_ARB_point_parameters, GL_ARB_shadow, GL_ARB_shadow_ambient, 

    GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 

    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 

    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 

    GL_ARB_texture_env_dot3, GL_MESAX_texture_float, 

    GL_ARB_texture_mirrored_repeat, GL_ARB_texture_rectangle, 

    GL_ARB_transpose_matrix, GL_ARB_vertex_buffer_object, 

    GL_ARB_vertex_program, GL_ARB_window_pos, GL_EXT_abgr, GL_EXT_bgra, 

    GL_EXT_blend_color, GL_EXT_blend_equation_separate, 

    GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, 

    GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, GL_EXT_convolution, 

    GL_EXT_copy_texture, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 

    GL_EXT_gpu_program_parameters, GL_EXT_histogram, GL_EXT_multi_draw_arrays, 

    GL_EXT_packed_pixels, GL_EXT_point_parameters, GL_EXT_polygon_offset, 

    GL_EXT_rescale_normal, GL_EXT_secondary_color, 

    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 

    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 

    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp, 

    GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 

    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, 

    GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, 

    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array, 

    GL_APPLE_packed_pixels, GL_ATI_blend_equation_separate, 

    GL_ATI_texture_env_combine3, GL_ATI_texture_mirror_once, 

    GL_ATI_separate_stencil, GL_IBM_multimode_draw_arrays, 

    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 

    GL_INGR_blend_func_separate, GL_MESA_pack_invert, GL_MESA_ycbcr_texture, 

    GL_MESA_window_pos, GL_NV_blend_square, GL_NV_light_max_exponent, 

    GL_NV_texture_rectangle, GL_NV_texgen_reflection, GL_NV_vertex_program, 

    GL_OES_read_format, GL_SGI_color_matrix, GL_SGI_color_table, 

    GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp, 

    GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays

8 GLX Visuals

   visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav

 id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat

----------------------------------------------------------------------

0x21 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x22 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x6b 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x6c 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x6d 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x6e 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x6f 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x62 32 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 Ncon

8 GLXFBConfigs:

   visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav

 id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat

----------------------------------------------------------------------

0x63  0 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x64  0 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x65  0 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x66  0 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x67  0 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x68  0 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

0x69  0 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None

0x6a  0 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow

```

----------

## DirtyHairy

For me, radeon + X1300 mobility works fine with compiz and also with KDE4. It is using the R300 driver and that's OK, afaik the name is misleading and it indeed is the proper driver also for R500 class GPUs. What versions of mesa, X and xf86-video-ati are you using? Also, did you do anything special to xorg.conf?

----------

