Radeon with gnome/compiz

Hi, i try compiz on my new "FreeBSD 8.0-RELEASE amd64"
with RV790 radeon HD 4890, with "radeon" driver.

I have read http://www.freebsd.org/doc/en_US.ISO8859-1/articles/compiz-fusion/index.html
and finally i managed to have compiz starting, only to give a white screen.

I have
compiz-fusion-0.8.4
emerald-0.8.4
emerald-themes-0.5.2
ccsm-0.8.4
compiz-0.8.4
compiz-bcop-0.8.4
compiz-plugins-extra-0.8.4
compiz-plugins-main-0.8.4
compizconfig-backend-gconf-0.8.4
compizconfig-python-0.8.4
libcompizconfig-0.8.4

my script is start_compiz
Code:
#!/bin/tcsh
setenv  LIBGL_ALWAYS_INDIRECT 1
compiz --replace --sm-disable --ignore-desktop-hints ccp &
emerald --replace &

That took me as far as compiz not complaining about various extensions, but unfortunately i get a white screen and nothing more.

If anyone had any luck, just drop a line, thanx!
 
As far as I know you need the latest radeonhd (>=1.3.0) for this and Mesa 7.6.x libraries. We will see the latter with the advent of 7.6.1 release.
 
achix said:
Hi, i try compiz on my new "FreeBSD 8.0-RELEASE amd64"
with RV790 radeon HD 4890, with "radeon" driver.

...

and finally i managed to have compiz starting, only to give a white screen.

my script is start_compiz
Code:
#!/bin/tcsh
setenv  LIBGL_ALWAYS_INDIRECT 1
compiz --replace --sm-disable --ignore-desktop-hints ccp &
emerald --replace &

Try adding the --indirect-rendering option to the compiz commandline, and see if that gets you any further.

BTW: When you open the compiz config settings manager (ccsm), under the settings of the window decorations plugin, there is a Command textfield for the decorator commandline. So you do not need to start emerald separately.
 
Oliver Thanx,
i already have xf86-video-radeonhd-1.3.0, and xf86-video-ati-6.12.4. Currently i have preferred the "radeon" driver from xf86-video-ati-6.12.4, because it works nice giving 1920x1080 on my wide screen Samsung, while with "radeonhd" i had a nasty screen.
Regarding to Mesa i have mesagl-mangled-5.0.2.

Also i noticed that while i had AIGLX in
Code:
Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
        Option "AIGLX" "true"
        Option "AllowEmptyInput" "no"
EndSection

the system complained with
Cannot open "/usr/local/lib/dri/r600_dri.so"

Its not that important anyway, i will live with KDE4 or Gnome2 as usual :)
 
Mickey, i added --indirect-rendering and it came back with the same white screen.
Also in /var/log/messages whenever i try to start compiz i keep seeing
Code:
kernel: info: [drm] Resetting GPU
 
The r600 driver is not in Mesa in the ports tree. If you check the freebsd-x11 mailing list, you can grab a patch to update the Mesa ports tree, but even that patch has its own issues. You could compile libdrm, mesa, and xf86-video-ati from git. However, 8.0-RELEASE doesn't have the necessary kernel support, either. You would need to use -STABLE or -CURRENT for that.

Adam
 
I didn't have any problems with driver on my IBM Thinkpad (RV350 if I remeber properlly), but I want to notice, that I had some problems with all those indirect rendering, allow glx empty blah blah, which was necessary earlier. Several days ago I noticed message in some forum, that option to enable AIGLX and running compiz-manager is enough and it really works. So try this first after resolving problems with your driver.
 
If I remember correctly the RV350 is one of the supported chipsets by the Mesa that is currently in ports (7.5.x). Achix' card is not, at least not until Mesa 7.6.1 is released, which is supposed to be only a couple weeks away. I'd just wait patiently.
 
Sure, I understand that, I just wanted to say "After driver will be available, don't try all that black magic, just try to simply use it first" :)
 
Hello! i just got back to this.
I upgraded MESA to 7.6.1, namely:

Code:
dri-7.6.1,2         OpenGL hardware acceleration drivers for the DRI
libGL-7.6.1         OpenGL library that renders using GLX or DRI
libGLU-7.6.1        OpenGL utility library
libdrm-2.4.17       Userspace interface to kernel Direct Rendering Module servi
libglut-7.6.1       OpenGL utility toolkit

However, when i run:
% compiz --replace --sm-disable --indirect-rendering --ignore-desktop-hints & i get:
Code:
WARNING: Application calling GLX 1.3 function "glXCreatePixmap" when GLX 1.3 is not supported!  This is an application bug!
I still get the white screen effect.i don't have a xorg.conf file.
Any ideas as to where should i look now?

my system is amd64 8.0-RELEASE-p2 with all ports up to date.
 
As I said previously:

However, 8.0-RELEASE doesn't have the necessary kernel support, either. You would need to use -STABLE or -CURRENT for that.

Also, you need an xorg.conf file to at least enable AIGLX (which is disabled by default on FreeBSD).

Adam
 
oops.. thanx... i'll have to wait till the next release (its the first time i go with the freebsd-update way instead of world-kernel build, so i'll beat the temptation and hold to that).
 
Hello everyone,

I'm new to the Unix world. After several failed attempts to get compiz running, I decided to ask the much more experienced. At the moment, my compiz is in the stage of the white cube as it was described a couple of posts earlier. Actually, I'm in the exact same situation. I have a RADEON HD 2600 XT and I use the 'radeon' driver. On a virgin minimal system, I cvsup'd STABLE src-all, ports-all and now it's FreeBSD 8.1-PRERELEASE/amd64. I installed MesaLib-7.6.1 from ports with the WITHOUT_NOUVEAU=yes option. I played around with many xorg.conf options that came into my mind, without any luck. Now xorg.conf sets only AIGLX "Enable".

There's a little app called 'texture_from_pixmap'. When I try to run that with direct rendering, it complains about that infernal 'GLX_EXT_texture_from_pixmap' is not supported. However, with indirect rendering it starts up, shows a white!!! rectangle and says 'WARNING: Application calling GLX 1.3 function "glXCreatePixmap" when GLX 1.3 is not supported! This is an application bug!'. It seems that in my case LIBGL_ALWAYS_INDIRECT only cheats death temporarily as it sets GLX_EXT_texture_from_pixmap, while the extension itself is missing somehow.
I'm out of ideas, any help is appreciated.
 
Thank you for your fast reply!
Here's my glxinfo with LIBGL_ALWAYS_INDIRECT:
Code:
name of display: :0.0
display: :0  screen: 0
direct rendering: No (LIBGL_ALWAYS_INDIRECT set)
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
    GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method, 
    GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_hyperpipe, 
    GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_MESA_copy_sub_buffer
client glx vendor string: Mesa Project and 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_OML_swap_method, GLX_SGI_make_current_read, GLX_SGIS_multisample, 
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_EXT_texture_from_pixmap
OpenGL vendor string: Mesa Project
OpenGL renderer string: Software Rasterizer
OpenGL version string: 1.4 (2.1 Mesa 7.6.1)
OpenGL extensions:
    GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program, 
    GL_ARB_fragment_program_shadow, GL_ARB_imaging, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_point_parameters, 
    GL_ARB_point_sprite, 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_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_transpose_matrix, 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_copy_texture, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 
    GL_EXT_framebuffer_object, GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels, 
    GL_EXT_paletted_texture, 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_shared_texture_palette, 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_lod_bias, GL_EXT_texture_mirror_clamp, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array, 
    GL_3DFX_texture_compression_FXT1, GL_APPLE_packed_pixels, 
    GL_ATI_draw_buffers, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_mirror_once, GL_ATIX_texture_env_combine3, 
    GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, 
    GL_MESA_pack_invert, GL_MESA_ycbcr_texture, GL_NV_blend_square, 
    GL_NV_fragment_program, GL_NV_light_max_exponent, GL_NV_point_sprite, 
    GL_NV_texgen_reflection, GL_NV_texture_env_combine4, 
    GL_NV_texture_rectangle, GL_NV_vertex_program, GL_NV_vertex_program1_1, 
    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_SGIX_shadow_ambient, GL_SUN_multi_draw_arrays
 
Ooh, I see !!!
I accidentally wrote "Enable" instead of "True" for AIGLX. Now everything works as expected.
Sorry for wasting your time :S and thank you for all the tips in this topic! :D
 
Back
Top