You are not logged in.
Hi,
ich created two PKGBUILDS for the r6xx-r7xx branch of the radeonhd driver. Therefor i need the new drm modules (also from the r6xx-r7xx branch).
You can get it here:
drm module: http://aur.archlinux.org/packages.php?ID=24235
pkgname=drm-radeon-module-git-r6xx-r7xx
pkgver=20090302
pkgrel=1
_kernver=`uname -r`
pkgdesc="radeon and drm module for xf86-video-radeonhd-git-r6xx-r7xx"
arch=(i686 x86_64)
depends=('glibc' 'libdrm')
options=('!libtool')
url="http://dri.freedesktop.org/"
license=('custom')
groups=('xorg')
install=('drm.install')
source=()
md5sums=()
_gitroot="git://git.freedesktop.org/git/mesa/drm"
_gitname="drm"
_branch="r6xx-r7xx-support origin/r6xx-r7xx-support"
build() {
export MAKEFLAGS=""
msg "Connecting to git.freedesktop.org GIT server...."
echo ${_kernver}
if [ -d ${srcdir}/$_gitname ] ; then
cd $_gitname && git pull origin
msg "The local files are updated."
else
git clone $_gitroot
fi
cd ${srcdir}/${_gitname}
msg "Switch branch to r6xx-r7xx-support"
git checkout -b $_branch
msg "GIT checkout done or server timeout"
cd ${srcdir}
rm -rf ${_gitname}-build
git clone $_gitname $_gitname-build
cd ${srcdir}/$_gitname-build
msg "Starting make..."
cd linux-core
make radeon.o || return 1
mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/char/drm/
install -m644 drm.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/char/drm/
install -m644 radeon.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/char/drm/
}
drm.install:
post_install() {
echo "<<< Running depmod >>>"
depmod
}
post_upgrade() {
post_install
}
xf86-video-radeonhd-git-r6xx-r7xx: http://aur.archlinux.org/packages.php?ID=24236
# Contributor: Perry3D <perry3d@gmail.com>
# Parts taken from avivo pkgbuild from: Markus Gross <xsdnyd@gmail.com> and jonathan <eyeswide@gmail.com>
# originally based on a PKGBUILD created by "billy" from archlinux.org forum
pkgname=xf86-video-radeonhd-git-r6xx-r7xx
pkgver=20090225
pkgrel=1
pkgdesc="Driver for AMD GPG r6xx/r7xx Chipsets - r6xx-r7xx branch"
url="http://cgit.freedesktop.org/xorg/driver/xf86-video-radeonhd/"
arch=('i686' 'x86_64')
license=('MIT')
depends=('xorg-server>=1.2.0''xf86proto''dri2proto''drm-radeon-module-git-r6xx-r7xx')
makedepends=('git' 'xorg-util-macros')
provides=('xf86-video-radeonhd')
options=('!libtool')
groups=('xorg')
install=radeonhd.install
source=()
md5sums=()
_gitroot="git://anongit.freedesktop.org/git/xorg/driver/xf86-video-radeonhd"
_gitname="xf86-video-radeonhd"
_branch="r6xx-r7xx-support origin/r6xx-r7xx-support"
build() {
cd $startdir/src
msg "Connecting to git.freedesktop.org GIT server...."
if [ -d $startdir/src/$_gitname ] ; then
cd $_gitname && git pull origin
msg "The local files are updated."
else
git clone $_gitroot
fi
msg "GIT checkout done or server timeout"
msg "Starting make..."
cp -r $startdir/src/$_gitname $startdir/src/$_gitname-build
cd $startdir/src/$_gitname-build
msg "Switch branch to r6xx-r7xx-support"
git checkout -b $_branch
./autogen.sh --prefix=/usr/ || return 1
make all || return 1
make DESTDIR=$startdir/pkg install
install -Dm644 COPYING $startdir/pkg/usr/share/licenses/$_gitname/COPYING
rm -rf $startdir/src/$_gitname-build
}
I have already some comments. So i need some testers and a little help.
On my desktop pc (Arch x86_64 and a HD4850) it works fine.
Maybe i missed some dependencies.
Perry
Offline
I've installed drm-radeon-module-git-r6xx-r7xx but I still have error:
In file included from r6xx_accel.h:4,
from rhd_driver.c:121:
/usr/include/xf86drm.h:40:17: error: drm.h: No such file or directory
Offline
Can you paste the configure output?
Mine looks like this:
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
autoreconf: Leaving directory `.'
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking whether /bin/sed can substitute tabs and newlines for text... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... (cached) /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking if RANDR is defined... yes
checking if RENDER is defined... yes
checking if XV is defined... yes
checking if DPMSExtension is defined... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for XORG... yes
checking for ANSI C header files... (cached) yes
checking for PCIUTILS... no
configure: WARNING: libpci not registered in pkgconfig, will guess instead
checking pci/pci.h usability... yes
checking pci/pci.h presence... yes
checking for pci/pci.h... yes
checking whether XSERVER_LIBPCIACCESS is declared... yes
checking for PCIACCESS... yes
checking whether to enable EXA support... yes
checking exa.h usability... yes
checking exa.h presence... yes
checking for exa.h... yes
checking whether EXA version is at least 2.0.0... yes
checking for xf86RandR12.h... yes
checking whether to enable RandR1.2 support... yes
checking whether XF86DRI is declared... yes
checking for DRI... yes
checking GL/gl.h usability... yes
checking GL/gl.h presence... yes
checking for GL/gl.h... yes
checking whether to enable DRI support... yes
checking for /usr/include/xorg/damage.h... yes
checking /usr/include/xorg/xf86_ansic.h usability... no
checking /usr/include/xorg/xf86_ansic.h presence... no
checking for /usr/include/xorg/xf86_ansic.h... no
checking for MonRec.reducedblanking... yes
checking for MonRec.maxPixClock... yes
checking for xf86CrtcFuncsRec.set_mode_major... yes
checking whether xf86RotateFreeShadow is declared... no
checking for ./src/AtomBios/includes/atombios.h... yes
checking for ./src/AtomBios/includes/Decoder.h... yes
checking whether to include AtomBIOS... yes
checking whether to include AtomBIOS parser... yes
checking for gzopen in -lz... yes
checking whether gcc supports -Wall... yes
checking whether gcc supports -Wextra... yes
checking whether gcc supports -Wno-unused-parameter... yes
checking whether gcc supports -Werror-implicit-function-declaration... yes
checking whether gcc supports -Wstrict-aliasing... yes
checking whether gcc supports -Wstrict-overflow... yes
checking whether gcc supports -Wpointer-arith... yes
checking whether gcc supports -Woverlength-strings... yes
checking whether gcc supports -Wvolatile-register-var... yes
checking whether gcc supports -Winit-self... yes
checking whether gcc supports -Wbad-function-cast... yes
checking whether gcc supports -Wstrict-prototypes... yes
checking whether gcc supports -Wold-style-definition... yes
checking whether gcc supports -Wnested-externs... yes
checking whether gcc supports -Wdisabled-optimization... yes
checking whether gcc supports -pedantic... yes
checking whether gcc supports -Wno-long-long... yes
checking whether gcc supports -Wno-variadic-macros... yes
checking whether gcc supports -std=c99... yes
checking whether gcc supports -Wno-unknown-pragmas... yes
configure: Doing optimized build, checking for additional options
checking whether gcc supports -finline-functions... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating man/Makefile
config.status: creating src/Makefile
config.status: creating utils/conntest/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
Offline
Here is mine:
fatal: git checkout: branch r6xx-r7xx-support already exists
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
autoreconf: Leaving directory `.'
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking whether /bin/sed can substitute tabs and newlines for text... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... (cached) /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking if RANDR is defined... yes
checking if RENDER is defined... yes
checking if XV is defined... yes
checking if DPMSExtension is defined... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for XORG... yes
checking for ANSI C header files... (cached) yes
checking for PCIUTILS... no
configure: WARNING: libpci not registered in pkgconfig, will guess instead
checking pci/pci.h usability... yes
checking pci/pci.h presence... yes
checking for pci/pci.h... yes
checking whether XSERVER_LIBPCIACCESS is declared... yes
checking for PCIACCESS... yes
checking whether to enable EXA support... yes
checking exa.h usability... yes
checking exa.h presence... yes
checking for exa.h... yes
checking whether EXA version is at least 2.0.0... yes
checking for xf86RandR12.h... yes
checking whether to enable RandR1.2 support... yes
checking whether XF86DRI is declared... yes
checking for DRI... no
checking whether to enable DRI support... no
checking for /usr/include/xorg/damage.h... yes
checking /usr/include/xorg/xf86_ansic.h usability... no
checking /usr/include/xorg/xf86_ansic.h presence... no
checking for /usr/include/xorg/xf86_ansic.h... no
checking for MonRec.reducedblanking... yes
checking for MonRec.maxPixClock... yes
checking for xf86CrtcFuncsRec.set_mode_major... yes
checking whether xf86RotateFreeShadow is declared... no
checking for ./src/AtomBios/includes/atombios.h... yes
checking for ./src/AtomBios/includes/Decoder.h... yes
checking whether to include AtomBIOS... yes
checking whether to include AtomBIOS parser... yes
checking for gzopen in -lz... yes
checking whether gcc supports -Wall... yes
checking whether gcc supports -Wextra... yes
checking whether gcc supports -Wno-unused-parameter... yes
checking whether gcc supports -Werror-implicit-function-declaration... yes
checking whether gcc supports -Wstrict-aliasing... yes
checking whether gcc supports -Wstrict-overflow... yes
checking whether gcc supports -Wpointer-arith... yes
checking whether gcc supports -Woverlength-strings... yes
checking whether gcc supports -Wvolatile-register-var... yes
checking whether gcc supports -Winit-self... yes
checking whether gcc supports -Wbad-function-cast... yes
checking whether gcc supports -Wstrict-prototypes... yes
checking whether gcc supports -Wold-style-definition... yes
checking whether gcc supports -Wnested-externs... yes
checking whether gcc supports -Wdisabled-optimization... yes
checking whether gcc supports -pedantic... yes
checking whether gcc supports -Wno-long-long... yes
checking whether gcc supports -Wno-variadic-macros... yes
checking whether gcc supports -std=c99... yes
checking whether gcc supports -Wno-unknown-pragmas... yes
configure: Doing optimized build, checking for additional options
checking whether gcc supports -finline-functions... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating man/Makefile
config.status: creating src/Makefile
config.status: creating utils/conntest/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
NOTE: DRI support is disabled
I've noticed that I don't have support for DRI. Is it critical for compilation?
EDIT: SOLVED! I've installed xf86driproto.
Last edited by kfgz (2009-03-02 17:56:00)
Offline
Oh,
install xf86driproto and try it again.
Perry
Offline
Thx, it works. I figure it out this myself
Last edited by kfgz (2009-03-02 17:57:10)
Offline
Thx, it works. I figure it out this myself
And what was the solution?
Offline
And what was the solution?
EDIT: SOLVED! I've installed xf86driproto.
Sadly I have to revert to xf86-video-radeonhd from extra. The performance of r6xx-r7xx is poor. At least for now.
Offline
Sounds like the wrong module is loaded.
What says /var/log/Xorg.0.log ?
Did you modify your xorg.conf?
Section "Device"
Identifier "radeonCard"
Driver "ati"
Option "AccelMethod" "exa" # default shadowfb
Option "DRI" "on
EndSection
Section "DRI"
Group "video"
Mode 0660
EndSection
Offline
My xorg.conf:
Section "Module"
Load "ddc"
Load "dri"
Load "drm"
Load "glx"
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "DPMS" "true"
HorizSync 28.0 - 96.0
VertRefresh 50.0 - 85.0
Modeline "1024x768_85.00" 94.39 1024 1088 1200 1376 768 769 772 807 -HSync +Vsync
EndSection
Section "Device"
Identifier "radeonCard"
Driver "radeonhd"
Option "AccelMethod" "exa"
BusID "PCI:1:5:0"
VendorName "All"
BoardName "All"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultColorDepth 24
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection
Section "DRI"
Group "video"
Mode 0660
EndSection
Driver "ati" doesn't work (no module found) so I put "radeonhd".
What worries me is:
(II) Setting vga for screen 0.
(**) RADEONHD(0): Depth 24, (--) framebuffer bpp 32
(**) RADEONHD(0): Option "AccelMethod" "exa"
(**) RADEONHD(0): Selected EXA 2D acceleration.
(II) RADEONHD(0): Unknown card detected: 0x9614:0x1043:0x834D.
If - and only if - your card does not work or does not work optimally
please contact radeonhd@opensuse.org to help rectify this.
Use the subject: 0x9614:0x1043:0x834D: <name of board>
and *please* describe the problems you are seeing
in your message.
(--) RADEONHD(0): Detected an RS780 on an unidentified card
(II) RADEONHD(0): Mapped IO @ 0xfe9f0000 to 0x7f0a7a12e000 (size 0x00010000)
(II) RADEONHD(0): Getting BIOS copy from legacy VBIOS location
(II) RADEONHD(0): ATOM BIOS Rom:
SubsystemVendorID: 0x1002 SubsystemID: 0x1002
IOBaseAddress: 0xb000
Filename: M3A78T_D_1.b
BIOS Bootup Message:
B27722 RS780D DDR2 200e/500m
and
(II) Setting vga for screen 0.
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFIXES
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Initializing built-in extension COMPOSITE
(II) Initializing built-in extension DAMAGE
(II) Initializing built-in extension XEVIE
(II) AIGLX: Screen 0 is not DRI capable
(II) AIGLX: Loaded and initialized /usr/lib/xorg/modules/dri/swrast_dri.so
(II) GLX: Initialized DRISWRAST GL provider for screen 0
(II) RADEONHD(0): Setting screen physical size to 306 x 230
2D acceleration is working very, very badly. I've serious problems with page scrolling in firefox etc. etc.
P.S. I have onboard graphic card HD3300 (motherboard ASUS M3A78-T)
EDIT: Adding Option "DRI" "on" did the trick Thanks
One question only: I have 270fps in glxgear and on catalyst 1200fps. Do you know when 3D hardware acceleriation will be added?
EDIT2:
I found one more error - 3D accel
(EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/r600_dri.so failed (/usr/lib/xorg/modules/dri/r600_dri.so: cannot open shared object file: No such file or directory)
(EE) AIGLX: reverting to software rendering
It seems that I have to be patient and wait for 3D accel.
Last edited by kfgz (2009-03-02 21:37:55)
Offline
Here is the current progress for the radeon(ati) and the radeonhd driver: http://www.x.org/wiki/RadeonFeature
Offline
Sounds like the wrong module is loaded.
What says /var/log/Xorg.0.log ?Did you modify your xorg.conf?
Section "Device" Identifier "radeonCard" Driver "ati" Option "AccelMethod" "exa" # default shadowfb Option "DRI" "on EndSection Section "DRI" Group "video" Mode 0660 EndSection
Shouldn't the driver be "radeonhd" ?
Also, I was using xf86-video-radeonhd-git-20090219, which correctly recognizes my 4830, but the xf86-video-radeonhd-git-r6xx-r7xx-20090305 does not. It fails in the same way as xf86-video-radeonhd-1.2.4 fails (recognizing the 4830 was committed to git after 1.2.4 was released). Odd.
Offline
Oh, you are right. I was testing the radeon driver. The driver should be "radeonhd".
That curious. Did you try a newer xf86-video-radeonhd-git?
Offline
I have not yet. The AUR page for xf86-video-radeonhd-git says it's intended for r5xx and r6xx chips, whereas mine is an r7xx, so I assumed that the package directly targeted for my card would be more appropriate. Was that erroneous? I did have trouble finding information on why there is a separate branch for r6xx and r7xx, though I didn't look terribly hard.
Offline
I'm on a Mobility Radeon HD2400 here and after putting the following on xorg.conf it is working perfectly (the features that are supposed to be working that is ).
Very well done, Thank you for the pkgbuilds
Section "Device"
Identifier "radeonCard"
Driver "radeonhd"
Option "AccelMethod" "exa"
Option "DRI" "True"
EndSection
Section "DRI"
Mode 0660
EndSection
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
Some more experimental results:
xf86-video-radeonhd-git as of today works (but no Xv).
xf86-video-radeonhd-git-r6xx-r7xx/drm-radeon-module-git-r6xx-r7xx do not work. I tried the xorg.conf I'd been using with xf86-video-radeonhd-git, and the one that was successful for R00KIE; neither worked. Both resulted in "(EE) No devices detected." even though the code that supposedly detects the 4830 is in that branch.
Offline
@mimmozzo: Thx for the info. I added these 2 packages as dependencies.
I read that the r6xx-r7xx branch of the ati and the radeonhd driver was merged to master. So you also could use xf86-video-radeonhd-git or xf86-video-ati-git to get XV and EXA. But i think you must install the drm-radeon-module-git-r6xx-r7xx to use the features. For me ati would be a little better, because it provides tear-free Video and i don't need HDMI (advantage of radeonhd). But it only works if i switch from radeonhd to ati without reboot. After reboot i get a blank screen. Mysterious
Offline
Well like I said it worked for me in a sort of new Arch64 install, I do have a mobility radeon hd2400 (although it doesn't seem to have any power saving capability either with catalyst or the oss drivers ). I could use xv and textured xv (with mapplayer + smplayer, textured xv seemed to be a bit faster). Still I noticed that sometimes the video wasn't as fluid as it should be but thats the drivers fault anyway (or some other factor, will sort that out soon enough when xserver 1.6 gets into extra). Also I am interested in being able to use my dvi output (to be able to connect an external monitor/projector) (with the latest xserver and xf86-video-ati in the testing repo its a mess, but with this driver it was not an issue at all).
If there is a pkgbuild for git radeonhd and ati drivers I will give them a try. Currently on my arch32 I'm using the xf86-video-ati driver as everything works as I want (and without a xorg.conf) but as I said soon enough that is bound to change.
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
Okay. I now have drm-radeon-module-git-r6xx-r7xx-20090305 and xf86-video-radeonhd-git-20090306 installed. I've loaded the radeon kernel driver, and set up my xorg.conf similar to R00KIE's above. xvinfo reports no adaptors present, and text scrolls *really* slowly in terminals.
Offline
Aha! It appears the drm and radeon modules provided by the kernel package were being loaded instead of those provided by drm-radeon-module-git-r6xx-r7xx. Now xv works, which is really what I've been after. Wheeeeeee!
Offline
Aha! It appears the drm and radeon modules provided by the kernel package were being loaded instead of those provided by drm-radeon-module-git-r6xx-r7xx. Now xv works, which is really what I've been after. Wheeeeeee!
I can't make it work on my arch32 install .... how did you make it load the proper modules?
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
Instead of using modprobe to load the modules, I used insmod, specifying the full path (otherwise it loads the drm.ko and radeon.ko as provided by the kernel26 package). I haven't yet looked into how to make this work with modprobe.
Offline
Thank you, that did the trick. I'm now loading the modules manually in rc.local. Maybe later I'll try to figure out how to do it some other way. Now the bigger question is, why did it work well in my arch64 and not in my arch32? The kernel modules are there too and I haven't changed anything else in the system. The only difference I can see is this
On arch32
$ find /lib -iname drm.ko
/lib/modules/2.6.28-ARCH/kernel/drivers/gpu/drm/drm.ko
/lib/modules/2.6.28-ARCH/kernel/drivers/char/drm/drm.ko
On arch64
$ find /lib -iname drm.ko
/lib/modules/2.6.28-ARCH/kernel/drivers/char/drm/drm.ko
/lib/modules/2.6.28-ARCH/kernel/drivers/gpu/drm/drm.ko
I don't think this will influence anything though, but if someone knows better please do explain because I'm curious about this. Although .... if modprobe and whatever automagically loads the modules gets the same results as find then I guess it does explain why it works on arch64 and not on arch32.
Edit:
Maybe the pkgbuilds should have a big fat warning about this telling to load the modules manually or they might not work.
That or put a little script in /etc/profile.d/ that will load the proper modules automagically
Last edited by R00KIE (2009-03-08 14:36:56)
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline
Ok, i added a warning in the install file:
Run 'insmod /lib/modules/2.6.28-ARCH/kernel/drivers/char/drm/radeon.ko' and
'insmod /lib/modules/2.6.28-ARCH/kernel/drivers/char/drm/drm.ko' as root before X-Server starts to ensure
that the system use the modules from this package an not the one from the kernel26.
/edit: I got a tip from paulez: the modules are now installed in the updates directory.
Is this problem solved now?
Last edited by Perry3D (2009-03-29 12:00:46)
Offline
I confirm it does work fine on Arch32 without any "hacks/tweaks", I didn't test on Arch64 yet but it should work fine too, I'll edit this when I confirm that.
R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K
Offline