LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Radeon kms works! (https://www.linuxquestions.org/questions/slackware-14/radeon-kms-works-760963/)

dolphin77 10-10-2009 07:10 AM

Radeon kms works!
 
At first I was very upset with ATI Radeon support in linux. But after a little bit of magic - it works!!! And the performance is really good.

Let me share my experience.

1) we need kernel 2.6.32-rc3.
I just got config-general-2.6.30.5 from /testing. Made oldconfig. Then I enabled radeon_kms from Device Drivers/Staging

2) because I use LVM and luks, the driver failed to initialize properly during boot. This happens because driver initialises before root is mounted and cannot load proper firmware. Thus I had to blackist driver in /etc/modprobe.d/blacklist, and load it later (I load it from /etc/rc.modules).

3) we need to make an proper environment for X to work with KMS. We need to build (in this order):
1) libdrm - from git
git clone git://cgit.freedesktop.org/mesa/drm

configure it with --enable-radeon-experimental-api

2) mesa - from git
git clone git://cgit.freedesktop.org/git/mesa/mesa

do not specify DRI DRIVERS it will automaticaly detect.
3) xf86-video-ati - from git
git clone git://cgit.freedesktop.org/git/xorg/driver/xf86-video-ati


I use this scripts for that (modified from original .Slackbuilds)

get-libdrm.sh:
Code:

rm -rf libdrm
#git clone git://anongit.freedesktop.org/mesa/drm
git clone git://cgit.freedesktop.org/mesa/drm

#cd drm
#git checkout -t -b master origin/master
#cd ..
# package the source archive and clean up:
( cd drm ; find . -type d -name .git -exec rm -rf {} \; 2> /dev/null )
DATE=$(date +%Y%m%d)
mv drm libdrm-${DATE}_git
tar cjf libdrm-${DATE}_git.tar.bz2 libdrm-${DATE}_git
rm -rf libdrm-${DATE}_git

libdrm.Slackbuild:

Code:

PKGNAM=libdrm
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}     
NUMJOBS=${NUMJOBS:-" -j7 "}
BUILD=${BUILD:-1}         

CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""                       
elif [ "$ARCH" = "s390" ]; then         
  SLKCFLAGS="-O2"                       
  LIBDIRSUFFIX=""                       
elif [ "$ARCH" = "x86_64" ]; then       
  SLKCFLAGS="-O2 -fPIC"                 
  LIBDIRSUFFIX="64"                     
fi                                     

rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP         
rm -rf ${PKGNAM}-${VERSION}
tar xvf $CWD/${PKGNAM}-$VERSION.tar.bz2 || exit 1
cd ${PKGNAM}-$VERSION                           

# Make sure ownerships and permissions are sane:
chown -R root:root .                           
find . \                                       
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \                                         
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;                                                           

# Configure:
./autogen.sh
CFLAGS="$SLKCFLAGS" \
./configure \       
  --prefix=/usr \   
  --enable-radeon-experimental-api \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --build=$ARCH-slackware-linux   

# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1

#cd linux-core
#make $NUMJOBS || make || exit 1
#make install DESTDIR=$PKG || exit 1
#mkdir -p $PKG/lib/modules/`uname -r`/extra/
#cp *.ko $PKG/lib/modules/`uname -r`/extra/
#cd ..                                     

# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null               

# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
  ( cd $PKG/usr/man
    for manpagedir in $(find . -type d -name "man*") ; do
      ( cd $manpagedir
        for eachpage in $( find . -type l -maxdepth 1) ; do
          ln -s $( readlink $eachpage ).gz $eachpage.gz
          rm $eachpage
        done
        gzip -9 *.?
      )
    done
  )
fi

# Compress info files, if any:
if [ -d $PKG/usr/info ]; then
  ( cd $PKG/usr/info
    rm -f dir
    gzip -9 *
  )
fi

# Add a documentation directory:
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
cp -a \
  README \
  $PKG/usr/doc/${PKGNAM}-$VERSION

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $TMP/package-${PKGNAM}
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz

mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD

get-mesa.sh:
Code:

rm -rf mesa
git clone git://cgit.freedesktop.org/git/mesa/mesa
cd mesa
git checkout -t -b master origin/master
cd ..
# package the source archive and clean up:
( cd mesa ; find . -type d -name .git -exec rm -rf {} \; 2> /dev/null )
DATE=$(date +%Y%m%d)
mv mesa mesa-${DATE}_git
tar cjf mesa-${DATE}_git.tar.bz2 mesa-${DATE}_git
rm -rf mesa-${DATE}_git

mesa.Slackbuild:
Code:

PKGNAM=mesa
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}     
BUILD=${BUILD:-1}                                                                                                           

NUMJOBS=${NUMJOBS:--j8}

CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-mesa

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""                       
elif [ "$ARCH" = "x86_64" ]; then       
  SLKCFLAGS="-O2 -fPIC"                 
  LIBDIRSUFFIX="64"                     
else                                   
  SLKCFLAGS="-O2"                       
  LIBDIRSUFFIX=""                       
fi                                     

rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP         
rm -rf mesa-${VERSION}
tar xvf $CWD/mesa-${VERSION}.tar.bz2 || exit 1
cd mesa-$VERSION                             

# Make sure ownerships and permissions are sane:
chown -R root:root .                           
find . \                                       
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \                                         
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;                                                           


./autogen.sh

CFLAGS="$SLKCFLAGS" \
./configure \       
  --prefix=/usr \   
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \             
  --docdir=/usr/doc/mesa-$VERSION \
  --with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
  --disable-gallium \                                           
  --enable-debug \                                             
  --build=$ARCH-slackware-linux                                 

# Nobody else is enabling this.  Seems like it's asking for trouble.
#  --enable-xcb                                                   

make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1

# Install gears and glinfo manually, and make symlinks from the names
# of the deprecated similar programs to reduce confusion:           
mkdir -p $PKG/usr/bin                                               
cp -a progs/demos/gears $PKG/usr/bin/gears                         
cp -a progs/demos/glinfo $PKG/usr/bin/glinfo                       
( cd $PKG/usr/bin                                                   
  ln -sf glinfo glxinfo                                             
  ln -sf gears glxgears                                             
)                                                                   

# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null

# Compress and link manpages, if any:
if [ -d $PKG/usr/man ]; then
  ( cd $PKG/usr/man
    for manpagedir in $(find . -type d -name "man*") ; do
      ( cd $manpagedir
        for eachpage in $( find . -type l -maxdepth 1) ; do
          ln -s $( readlink $eachpage ).gz $eachpage.gz
          rm $eachpage
        done
        gzip -9 *.?
      )
    done
  )
fi

# Compress info files, if any:
if [ -d $PKG/usr/info ]; then
  ( cd $PKG/usr/info
    rm -f dir
    gzip -9 *
  )
fi

mkdir -p $PKG/usr/doc/mesa-$VERSION/html
cp -a COPYING docs/relnotes-$VERSION.html $PKG/usr/doc/mesa-$VERSION
rm -f docs/relnotes*.html docs/RELNOTES*
cp -a docs/*.html $PKG/usr/doc/mesa-$VERSION/html

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD

get-xf86-video-ati:
Code:

rm -rf xf86-video-ati
git clone git://cgit.freedesktop.org/git/xorg/driver/xf86-video-ati
cd xf86-video-ati
git checkout -t -b master origin/master
cd ..
# package the source archive and clean up:
( cd xf86-video-ati ; find . -type d -name .git -exec rm -rf {} \; 2> /dev/null )
DATE=$(date +%Y%m%d)
mv xf86-video-ati xf86-video-ati-${DATE}_git
tar cjf xf86-video-ati-${DATE}_git.tar.bz2 xf86-video-ati-${DATE}_git
rm -rf xf86-video-ati-${DATE}_git

xf86-video-ati.SlackBuild:
Code:

PKGNAM=xf86-video-ati
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}     
BUILD=${BUILD:-1}         

# Be sure this list is up-to-date:

NUMJOBS=${NUMJOBS:--j8}
CWD=$(pwd)           
TMP=${TMP:-/tmp}     
PKG=$TMP/package-xf86-video-ati

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""                       
elif [ "$ARCH" = "x86_64" ]; then       
  SLKCFLAGS="-O2 -fPIC"                 
  LIBDIRSUFFIX="64"                     
else                                   
  SLKCFLAGS="-O2"                       
  LIBDIRSUFFIX=""                       
fi                                     

rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP         
rm -rf xf86-video-ati-${VERSION}
tar xvf $CWD/xf86-video-ati-${VERSION}.tar.bz2 || exit 1
cd xf86-video-ati-$VERSION

# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;

./autogen.sh

CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --build=$ARCH-slackware-linux

# Nobody else is enabling this.  Seems like it's asking for trouble.
#  --enable-xcb

make $NUMJOBS
make install DESTDIR=$PKG

mkdir -p $PKG/usr/doc/xf86-video-ati-$VERSION/html
cp -a COPYING docs/relnotes-$VERSION.html $PKG/usr/doc/xf86-video-ati-$VERSION
rm -f docs/relnotes*.html docs/RELNOTES*
cp -a docs/*.html $PKG/usr/doc/xf86-video-ati-$VERSION/html

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD



The performance is really goot. Switching between VT and X is momental. All the GL staff works.

Hope this could be useful for anyone.

BrZ 10-10-2009 10:03 AM

Thanks for sharing =]

onebuck 10-10-2009 10:21 AM

Hi,

Yes, thanks for sharing.

I would suggest that you place your lists, SlackBuilds and/or long data within the vbcode tags # or quote with identification within. A experienced user will be able to pick things out but the novice will not. Plus it makes things cleaner therefore easier to read.

kukibl 10-10-2009 11:18 AM

Thank you very much, specially for SlackBuilds!:) I was looking for them 2 days ago, had plans to experiment with KMS. No need for that now, since you already did all hard work.;)

w1k0 10-10-2009 11:51 AM

Thank you dolphin77 for your scripts. Thanks to them I was able to solve my problem with Random system hang ups as well as the last of my Three MPlayer and Xine issues.

dolphin77 10-10-2009 03:43 PM

Just to add a little bit to the above.

KDE desktop effects - works great

Big TFT Sony TV (47") connected via VGA cable - detected automaticaly - works great

native resolution work and looks great in "text" console mode

output from dmesg:
Code:

[drm] Initialized drm 1.1.0 20060810
[drm] radeon defaulting to kernel modesetting.
[drm] radeon kernel modesetting enabled.
radeon 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
radeon 0000:01:00.0: setting latency timer to 64
[drm] radeon: Initializing kernel modesetting.
[drm] register mmio base: 0x88020000
[drm] register mmio size: 65536
ATOM BIOS: SonyM750
[drm] Clocks initialized !
[drm] Detected VRAM RAM=128M, BAR=128M
[drm] RAM width 64bits DDR
[TTM] Zone  kernel: Available graphics memory: 1027268 kiB.
[drm] radeon: 128M of VRAM memory ready
[drm] radeon: 512M of GTT memory ready.
[drm] Loading RV620 CP Microcode
platform radeon_cp.0: firmware: requesting radeon/RV620_pfp.bin
platform radeon_cp.0: firmware: requesting radeon/RV620_me.bin
[drm] GART: num cpu pages 131072, num gpu pages 131072
[drm] ring test succeeded in 0 usecs
[drm] radeon: ib pool ready.
[drm] ib test succeeded in 0 usecs
[drm] radeon: kernel modesetting successfully initialized.
[drm] Radeon Display Connectors
[drm] Connector 0:
[drm]  VGA
[drm]  DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c
[drm]  Encoders:
[drm]    CRT1: INTERNAL_KLDSCP_DAC1
[drm] Connector 1:
[drm]  LVDS
[drm]  DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c
[drm]  Encoders:
[drm]    LCD1: INTERNAL_KLDSCP_LVTMA
[drm] Connector 2:
[drm]  DVI-D
[drm]  DDC: 0x7e20 0x7e20 0x7e24 0x7e24 0x7e28 0x7e28 0x7e2c 0x7e2c
[drm]  Encoders:
[drm]    DFP2: INTERNAL_UNIPHY
[drm] fb mappable at 0x80141000
[drm] vram apper at 0x80000000
[drm] size 4096000
[drm] fb depth is 24
[drm]    pitch is 5120

X.org.log:
Code:

X.Org X Server 1.6.3
Release Date: 2009-7-31
X Protocol Version 11, Revision 0
Build Operating System: Slackware 13.0 Slackware Linux Project
Current Operating System: Linux darkstar 2.6.32-rc3 #4 SMP Fri Oct 9 19:50:27 EEST 2009 x86_64
Build Date: 03 August 2009  07:39:15PM
 
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sat Oct 10 22:58:37 2009
(II) Loader magic: 0x3d20
(II) Module ABI versions:
        X.Org ANSI C Emulation: 0.4
        X.Org Video Driver: 5.0
        X.Org XInput driver : 4.0
        X.Org Server Extension : 2.0
(II) Loader running on linux
(++) using VT number 7

(--) PCI:*(0:1:0:0) 1002:95c4:104d:9033 rev 0, Mem @ 0x80000000/134217728, 0x88020000/65536, I/O @ 0x00009000/256, BIOS @ 0x????????/131072
(==) Using default built-in configuration (30 lines)
(==) --- Start of built-in configuration ---
        Section "Device"
                Identifier        "Builtin Default ati Device 0"
                Driver        "ati"
        EndSection
        Section "Screen"
                Identifier        "Builtin Default ati Screen 0"
                Device        "Builtin Default ati Device 0"
        EndSection
        Section "Device"
                Identifier        "Builtin Default vesa Device 0"
                Driver        "vesa"
        EndSection
        Section "Screen"
                Identifier        "Builtin Default vesa Screen 0"
                Device        "Builtin Default vesa Device 0"
        EndSection
        Section "Device"
                Identifier        "Builtin Default fbdev Device 0"
                Driver        "fbdev"
        EndSection
        Section "Screen"
                Identifier        "Builtin Default fbdev Screen 0"
                Device        "Builtin Default fbdev Device 0"
        EndSection
        Section "ServerLayout"
                Identifier        "Builtin Default Layout"
                Screen        "Builtin Default ati Screen 0"
                Screen        "Builtin Default vesa Screen 0"
                Screen        "Builtin Default fbdev Screen 0"
        EndSection
(==) --- End of built-in configuration ---
(==) ServerLayout "Builtin Default Layout"
(**) |-->Screen "Builtin Default ati Screen 0" (0)
(**) |  |-->Monitor "<default monitor>"
(**) |  |-->Device "Builtin Default ati Device 0"
(==) No monitor specified for screen "Builtin Default ati Screen 0".
        Using a default monitor configuration.
(**) |-->Screen "Builtin Default vesa Screen 0" (1)
(**) |  |-->Monitor "<default monitor>"
(**) |  |-->Device "Builtin Default vesa Device 0"
(==) No monitor specified for screen "Builtin Default vesa Screen 0".
        Using a default monitor configuration.
(**) |-->Screen "Builtin Default fbdev Screen 0" (2)
(**) |  |-->Monitor "<default monitor>"
(**) |  |-->Device "Builtin Default fbdev Device 0"
(==) No monitor specified for screen "Builtin Default fbdev Screen 0".
        Using a default monitor configuration.
(==) Automatically adding devices
(==) Automatically enabling devices
(WW) The directory "/usr/share/fonts/local" does not exist.
        Entry deleted from font path.
(WW) The directory "/usr/share/fonts/CID" does not exist.
        Entry deleted from font path.
(==) FontPath set to:
        /usr/share/fonts/TTF,
        /usr/share/fonts/OTF,
        /usr/share/fonts/Type1,
        /usr/share/fonts/misc,
        /usr/share/fonts/75dpi/:unscaled,
        /usr/share/fonts/100dpi/:unscaled,
        /usr/share/fonts/75dpi,
        /usr/share/fonts/100dpi,
        /usr/share/fonts/cyrillic,
        built-ins
(==) ModulePath set to "/usr/lib64/xorg/modules"
(II) Cannot locate a core pointer device.
(II) Cannot locate a core keyboard device.
(II) The server relies on HAL to provide the list of input devices.
        If no devices become available, reconfigure HAL or disable AllowEmptyInput.
(II) Open ACPI successful (/var/run/acpid.socket)
(II) System resource ranges:
        [0] -1        0        0xffffffff - 0xffffffff (0x1) MX[B]
        [1] -1        0        0x000f0000 - 0x000fffff (0x10000) MX[B]
        [2] -1        0        0x000c0000 - 0x000effff (0x30000) MX[B]
        [3] -1        0        0x00000000 - 0x0009ffff (0xa0000) MX[B]
        [4] -1        0        0x0000ffff - 0x0000ffff (0x1) IX[B]
        [5] -1        0        0x00000000 - 0x00000000 (0x1) IX[B]
(II) LoadModule: "extmod"
(II) Loading /usr/lib64/xorg/modules/extensions//libextmod.so
(II) Module extmod: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        Module class: X.Org Server Extension
        ABI class: X.Org Server Extension, version 2.0
(II) Loading extension MIT-SCREEN-SAVER
(II) Loading extension XFree86-VidModeExtension
(II) Loading extension XFree86-DGA
(II) Loading extension DPMS
(II) Loading extension XVideo
(II) Loading extension XVideo-MotionCompensation
(II) Loading extension X-Resource
(II) LoadModule: "dbe"
(II) Loading /usr/lib64/xorg/modules/extensions//libdbe.so
(II) Module dbe: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        Module class: X.Org Server Extension
        ABI class: X.Org Server Extension, version 2.0
(II) Loading extension DOUBLE-BUFFER
(II) LoadModule: "glx"
(II) Loading /usr/lib64/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        ABI class: X.Org Server Extension, version 2.0
(==) AIGLX enabled
(II) Loading extension GLX
(II) LoadModule: "dri"
(II) Loading /usr/lib64/xorg/modules/extensions//libdri.so
(II) Module dri: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        ABI class: X.Org Server Extension, version 2.0
(II) Loading extension XFree86-DRI
(II) LoadModule: "dri2"
(II) Loading /usr/lib64/xorg/modules/extensions//libdri2.so
(II) Module dri2: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.1.0
        ABI class: X.Org Server Extension, version 2.0
(II) Loading extension DRI2
(II) LoadModule: "ati"
(II) Loading /usr/lib64/xorg/modules/drivers//ati_drv.so
(II) Module ati: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 6.12.99
        Module class: X.Org Video Driver
        ABI class: X.Org Video Driver, version 5.0
(II) LoadModule: "radeon"
(II) Loading /usr/lib64/xorg/modules/drivers//radeon_drv.so
(II) Module radeon: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 6.12.99
        Module class: X.Org Video Driver
        ABI class: X.Org Video Driver, version 5.0
(II) LoadModule: "vesa"
(II) Loading /usr/lib64/xorg/modules/drivers//vesa_drv.so
(II) Module vesa: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 2.2.1
        Module class: X.Org Video Driver
        ABI class: X.Org Video Driver, version 5.0
(II) LoadModule: "fbdev"
(WW) Warning, couldn't open module fbdev
(II) UnloadModule: "fbdev"
(EE) Failed to load module "fbdev" (module does not exist, 0)
(II) RADEON: Driver for ATI Radeon chipsets:
        ATI Radeon Mobility X600 (M24) 3150 (PCIE), ATI FireMV 2400 (PCI),
        ATI Radeon Mobility X300 (M24) 3152 (PCIE),
        ATI FireGL M24 GL 3154 (PCIE), ATI Radeon X600 (RV380) 3E50 (PCIE),
        ATI FireGL V3200 (RV380) 3E54 (PCIE), ATI Radeon IGP320 (A3) 4136,
        ATI Radeon IGP330/340/350 (A4) 4137, ATI Radeon 9500 AD (AGP),
        ATI Radeon 9500 AE (AGP), ATI Radeon 9600TX AF (AGP),
        ATI FireGL Z1 AG (AGP), ATI Radeon 9800SE AH (AGP),
        ATI Radeon 9800 AI (AGP), ATI Radeon 9800 AJ (AGP),
        ATI FireGL X2 AK (AGP), ATI Radeon 9600 AP (AGP),
        ATI Radeon 9600SE AQ (AGP), ATI Radeon 9600XT AR (AGP),
        ATI Radeon 9600 AS (AGP), ATI FireGL T2 AT (AGP), ATI Radeon 9650,
        ATI FireGL RV360 AV (AGP), ATI Radeon 7000 IGP (A4+) 4237,
        ATI Radeon 8500 AIW BB (AGP), ATI Radeon 8500 AIW BC (AGP),
        ATI Radeon IGP320M (U1) 4336, ATI Radeon IGP330M/340M/350M (U2) 4337,
        ATI Radeon Mobility 7000 IGP 4437, ATI Radeon 9000/PRO If (AGP/PCI),
        ATI Radeon 9000 Ig (AGP/PCI), ATI Radeon X800 (R420) JH (AGP),
        ATI Radeon X800PRO (R420) JI (AGP),
        ATI Radeon X800SE (R420) JJ (AGP), ATI Radeon X800 (R420) JK (AGP),
        ATI Radeon X800 (R420) JL (AGP), ATI FireGL X3 (R420) JM (AGP),
        ATI Radeon Mobility 9800 (M18) JN (AGP),
        ATI Radeon X800 SE (R420) (AGP), ATI Radeon X800XT (R420) JP (AGP),
        ATI Radeon X800 VE (R420) JT (AGP), ATI Radeon X850 (R480) (AGP),
        ATI Radeon X850 XT (R480) (AGP), ATI Radeon X850 SE (R480) (AGP),
        ATI Radeon X850 PRO (R480) (AGP), ATI Radeon X850 XT PE (R480) (AGP),
        ATI Radeon Mobility M7 LW (AGP),
        ATI Mobility FireGL 7800 M7 LX (AGP),
        ATI Radeon Mobility M6 LY (AGP), ATI Radeon Mobility M6 LZ (AGP),
        ATI FireGL Mobility 9000 (M9) Ld (AGP),
        ATI Radeon Mobility 9000 (M9) Lf (AGP),
        ATI Radeon Mobility 9000 (M9) Lg (AGP), ATI Radeon 9700 Pro ND (AGP),
        ATI Radeon 9700/9500Pro NE (AGP), ATI Radeon 9600TX NF (AGP),
        ATI FireGL X1 NG (AGP), ATI Radeon 9800PRO NH (AGP),
        ATI Radeon 9800 NI (AGP), ATI FireGL X2 NK (AGP),
        ATI Radeon 9800XT NJ (AGP),
        ATI Radeon Mobility 9600/9700 (M10/M11) NP (AGP),
        ATI Radeon Mobility 9600 (M10) NQ (AGP),
        ATI Radeon Mobility 9600 (M11) NR (AGP),
        ATI Radeon Mobility 9600 (M10) NS (AGP),
        ATI FireGL Mobility T2 (M10) NT (AGP),
        ATI FireGL Mobility T2e (M11) NV (AGP), ATI Radeon QD (AGP),
        ATI Radeon QE (AGP), ATI Radeon QF (AGP), ATI Radeon QG (AGP),
        ATI FireGL 8700/8800 QH (AGP), ATI Radeon 8500 QL (AGP),
        ATI Radeon 9100 QM (AGP), ATI Radeon 7500 QW (AGP/PCI),
        ATI Radeon 7500 QX (AGP/PCI), ATI Radeon VE/7000 QY (AGP/PCI),
        ATI Radeon VE/7000 QZ (AGP/PCI), ATI ES1000 515E (PCI),
        ATI Radeon Mobility X300 (M22) 5460 (PCIE),
        ATI Radeon Mobility X600 SE (M24C) 5462 (PCIE),
        ATI FireGL M22 GL 5464 (PCIE), ATI Radeon X800 (R423) UH (PCIE),
        ATI Radeon X800PRO (R423) UI (PCIE),
        ATI Radeon X800LE (R423) UJ (PCIE),
        ATI Radeon X800SE (R423) UK (PCIE),
        ATI Radeon X800 XTP (R430) (PCIE), ATI Radeon X800 XL (R430) (PCIE),
        ATI Radeon X800 SE (R430) (PCIE), ATI Radeon X800 (R430) (PCIE),
        ATI FireGL V7100 (R423) (PCIE), ATI FireGL V5100 (R423) UQ (PCIE),
        ATI FireGL unknown (R423) UR (PCIE),
        ATI FireGL unknown (R423) UT (PCIE),
        ATI Mobility FireGL V5000 (M26) (PCIE),
        ATI Mobility FireGL V5000 (M26) (PCIE),
        ATI Mobility Radeon X700 XL (M26) (PCIE),
        ATI Mobility Radeon X700 (M26) (PCIE),
        ATI Mobility Radeon X700 (M26) (PCIE),
        ATI Radeon X550XTX 5657 (PCIE), ATI Radeon 9100 IGP (A5) 5834,
        ATI Radeon Mobility 9100 IGP (U3) 5835,
        ATI Radeon XPRESS 200 5954 (PCIE),
        ATI Radeon XPRESS 200M 5955 (PCIE), ATI Radeon 9250 5960 (AGP),
        ATI Radeon 9200 5961 (AGP), ATI Radeon 9200 5962 (AGP),
        ATI Radeon 9200SE 5964 (AGP), ATI FireMV 2200 (PCI),
        ATI ES1000 5969 (PCI), ATI Radeon XPRESS 200 5974 (PCIE),
        ATI Radeon XPRESS 200M 5975 (PCIE),
        ATI Radeon XPRESS 200 5A41 (PCIE),
        ATI Radeon XPRESS 200M 5A42 (PCIE),
        ATI Radeon XPRESS 200 5A61 (PCIE),
        ATI Radeon XPRESS 200M 5A62 (PCIE),
        ATI Radeon X300 (RV370) 5B60 (PCIE),
        ATI Radeon X600 (RV370) 5B62 (PCIE),
        ATI Radeon X550 (RV370) 5B63 (PCIE),
        ATI FireGL V3100 (RV370) 5B64 (PCIE),
        ATI FireMV 2200 PCIE (RV370) 5B65 (PCIE),
        ATI Radeon Mobility 9200 (M9+) 5C61 (AGP),
        ATI Radeon Mobility 9200 (M9+) 5C63 (AGP),
        ATI Mobility Radeon X800 XT (M28) (PCIE),
        ATI Mobility FireGL V5100 (M28) (PCIE),
        ATI Mobility Radeon X800 (M28) (PCIE), ATI Radeon X850 5D4C (PCIE),
        ATI Radeon X850 XT PE (R480) (PCIE),
        ATI Radeon X850 SE (R480) (PCIE), ATI Radeon X850 PRO (R480) (PCIE),
        ATI unknown Radeon / FireGL (R480) 5D50 (PCIE),
        ATI Radeon X850 XT (R480) (PCIE),
        ATI Radeon X800XT (R423) 5D57 (PCIE),
        ATI FireGL V5000 (RV410) (PCIE), ATI Radeon X700 XT (RV410) (PCIE),
        ATI Radeon X700 PRO (RV410) (PCIE),
        ATI Radeon X700 SE (RV410) (PCIE), ATI Radeon X700 (RV410) (PCIE),
        ATI Radeon X700 SE (RV410) (PCIE), ATI Radeon X1800,
        ATI Mobility Radeon X1800 XT, ATI Mobility Radeon X1800,
        ATI Mobility FireGL V7200, ATI FireGL V7200, ATI FireGL V5300,
        ATI Mobility FireGL V7100, ATI Radeon X1800, ATI Radeon X1800,
        ATI Radeon X1800, ATI Radeon X1800, ATI Radeon X1800,
        ATI FireGL V7300, ATI FireGL V7350, ATI Radeon X1600, ATI RV505,
        ATI Radeon X1300/X1550, ATI Radeon X1550, ATI M54-GL,
        ATI Mobility Radeon X1400, ATI Radeon X1300/X1550,
        ATI Radeon X1550 64-bit, ATI Mobility Radeon X1300,
        ATI Mobility Radeon X1300, ATI Mobility Radeon X1300,
        ATI Mobility Radeon X1300, ATI Radeon X1300, ATI Radeon X1300,
        ATI RV505, ATI RV505, ATI FireGL V3300, ATI FireGL V3350,
        ATI Radeon X1300, ATI Radeon X1550 64-bit, ATI Radeon X1300/X1550,
        ATI Radeon X1600, ATI Radeon X1300/X1550, ATI Mobility Radeon X1450,
        ATI Radeon X1300/X1550, ATI Mobility Radeon X2300,
        ATI Mobility Radeon X2300, ATI Mobility Radeon X1350,
        ATI Mobility Radeon X1350, ATI Mobility Radeon X1450,
        ATI Radeon X1300, ATI Radeon X1550, ATI Mobility Radeon X1350,
        ATI FireMV 2250, ATI Radeon X1550 64-bit, ATI Radeon X1600,
        ATI Radeon X1650, ATI Radeon X1600, ATI Radeon X1600,
        ATI Mobility FireGL V5200, ATI Mobility Radeon X1600,
        ATI Radeon X1650, ATI Radeon X1650, ATI Radeon X1600,
        ATI Radeon X1300 XT/X1600 Pro, ATI FireGL V3400,
        ATI Mobility FireGL V5250, ATI Mobility Radeon X1700,
        ATI Mobility Radeon X1700 XT, ATI FireGL V5200,
        ATI Mobility Radeon X1700, ATI Radeon X2300HD,
        ATI Mobility Radeon HD 2300, ATI Mobility Radeon HD 2300,
        ATI Radeon X1950, ATI Radeon X1900, ATI Radeon X1950,
        ATI Radeon X1900, ATI Radeon X1900, ATI Radeon X1900,
        ATI Radeon X1900, ATI Radeon X1900, ATI Radeon X1900,
        ATI Radeon X1900, ATI Radeon X1900, ATI Radeon X1900,
        ATI AMD Stream Processor, ATI Radeon X1900, ATI Radeon X1950,
        ATI RV560, ATI RV560, ATI Mobility Radeon X1900, ATI RV560,
        ATI Radeon X1950 GT, ATI RV570, ATI RV570, ATI FireGL V7400,
        ATI RV560, ATI Radeon X1650, ATI Radeon X1650, ATI RV560,
        ATI Radeon 9100 PRO IGP 7834, ATI Radeon Mobility 9200 IGP 7835,
        ATI Radeon X1200, ATI Radeon X1200, ATI Radeon X1200,
        ATI Radeon X1200, ATI Radeon X1200, ATI RS740, ATI RS740M, ATI RS740,
        ATI RS740M, ATI Radeon HD 2900 XT, ATI Radeon HD 2900 XT,
        ATI Radeon HD 2900 XT, ATI Radeon HD 2900 Pro, ATI Radeon HD 2900 GT,
        ATI FireGL V8650, ATI FireGL V8600, ATI FireGL V7600,
        ATI Radeon 4800 Series, ATI Radeon HD 4870 x2,
        ATI Radeon 4800 Series, ATI Radeon HD 4850 x2,
        ATI FirePro V8750 (FireGL), ATI FirePro V7760 (FireGL),
        ATI Mobility RADEON HD 4850, ATI Mobility RADEON HD 4850 X2,
        ATI Radeon 4800 Series, ATI FirePro RV770, AMD FireStream 9270,
        AMD FireStream 9250, ATI FirePro V8700 (FireGL),
        ATI Mobility RADEON HD 4870, ATI Mobility RADEON M98,
        ATI Radeon 4800 Series, ATI Radeon 4800 Series, ATI FirePro M7750,
        ATI M98, ATI M98, ATI M98, ATI Mobility Radeon HD 4650,
        ATI Radeon RV730 (AGP), ATI Mobility Radeon HD 4670,
        ATI FirePro M5750, ATI Radeon RV730 (AGP),
        ATI RV730XT [Radeon HD 4670], ATI RADEON E4600,
        ATI Radeon HD 4600 Series, ATI RV730 PRO [Radeon HD 4650],
        ATI FirePro V7750 (FireGL), ATI FirePro V5700 (FireGL),
        ATI FirePro V3750 (FireGL), ATI Mobility Radeon HD 4830,
        ATI Mobility Radeon HD 4850, ATI FirePro M7740, ATI RV740,
        ATI Radeon HD 4770, ATI Radeon HD 4700 Series, ATI Radeon HD 4770,
        ATI FirePro M5750, ATI RV610, ATI Radeon HD 2400 XT,
        ATI Radeon HD 2400 Pro, ATI Radeon HD 2400 PRO AGP, ATI FireGL V4000,
        ATI RV610, ATI Radeon HD 2350, ATI Mobility Radeon HD 2400 XT,
        ATI Mobility Radeon HD 2400, ATI RADEON E2400, ATI RV610,
        ATI FireMV 2260, ATI RV670, ATI Radeon HD3870,
        ATI Mobility Radeon HD 3850, ATI Radeon HD3850,
        ATI Mobility Radeon HD 3850 X2, ATI RV670,
        ATI Mobility Radeon HD 3870, ATI Mobility Radeon HD 3870 X2,
        ATI Radeon HD3870 X2, ATI FireGL V7700, ATI Radeon HD3850,
        ATI Radeon HD3690, AMD Firestream 9170, ATI Radeon HD 4550,
        ATI Radeon RV710, ATI Radeon RV710, ATI Radeon HD 4350,
        ATI Mobility Radeon 4300 Series, ATI Mobility Radeon 4500 Series,
        ATI Mobility Radeon 4500 Series, ATI FirePro RG220, ATI RV630,
        ATI Mobility Radeon HD 2600, ATI Mobility Radeon HD 2600 XT,
        ATI Radeon HD 2600 XT AGP, ATI Radeon HD 2600 Pro AGP,
        ATI Radeon HD 2600 XT, ATI Radeon HD 2600 Pro, ATI Gemini RV630,
        ATI Gemini Mobility Radeon HD 2600 XT, ATI FireGL V5600,
        ATI FireGL V3600, ATI Radeon HD 2600 LE,
        ATI Mobility FireGL Graphics Processor, ATI Radeon RV710,
        ATI Radeon HD 3470, ATI Mobility Radeon HD 3430,
        ATI Mobility Radeon HD 3400 Series, ATI Radeon HD 3450,
        ATI Radeon HD 3450, ATI Radeon HD 3430, ATI Radeon HD 3450,
        ATI FirePro V3700, ATI FireMV 2450, ATI FireMV 2260, ATI FireMV 2260,
        ATI Radeon HD 3600 Series, ATI Radeon HD 3650 AGP,
        ATI Radeon HD 3600 PRO, ATI Radeon HD 3600 XT,
        ATI Radeon HD 3600 PRO, ATI Mobility Radeon HD 3650,
        ATI Mobility Radeon HD 3670, ATI Mobility FireGL V5700,
        ATI Mobility FireGL V5725, ATI Radeon HD 3200 Graphics,
        ATI Radeon 3100 Graphics, ATI Radeon HD 3200 Graphics,
        ATI Radeon 3100 Graphics, ATI Radeon HD 3300 Graphics,
        ATI Radeon HD 3200 Graphics, ATI Radeon 3000 Graphics,
        ATI Radeon HD 4200, ATI Radeon 4100, ATI Mobility Radeon HD 4200,
        ATI Mobility Radeon 4100, ATI RS880
(II) VESA: driver for VESA chipsets: vesa
(II) Primary Device is: PCI 01@00:00:0
(II) resource ranges after xf86ClaimFixedResources() call:
        [0] -1        0        0xffffffff - 0xffffffff (0x1) MX[B]
        [1] -1        0        0x000f0000 - 0x000fffff (0x10000) MX[B]
        [2] -1        0        0x000c0000 - 0x000effff (0x30000) MX[B]
        [3] -1        0        0x00000000 - 0x0009ffff (0xa0000) MX[B]
        [4] -1        0        0x0000ffff - 0x0000ffff (0x1) IX[B]
        [5] -1        0        0x00000000 - 0x00000000 (0x1) IX[B]
(II) [KMS] Kernel modesetting enabled.
(WW) Falling back to old probe method for vesa
(II) resource ranges after probing:
        [0] -1        0        0xffffffff - 0xffffffff (0x1) MX[B]
        [1] -1        0        0x000f0000 - 0x000fffff (0x10000) MX[B]
        [2] -1        0        0x000c0000 - 0x000effff (0x30000) MX[B]
        [3] -1        0        0x00000000 - 0x0009ffff (0xa0000) MX[B]
        [4] 0        0        0x000a0000 - 0x000affff (0x10000) MS[B]
        [5] 0        0        0x000b0000 - 0x000b7fff (0x8000) MS[B]
        [6] 0        0        0x000b8000 - 0x000bffff (0x8000) MS[B]
        [7] -1        0        0x0000ffff - 0x0000ffff (0x1) IX[B]
        [8] -1        0        0x00000000 - 0x00000000 (0x1) IX[B]
        [9] 0        0        0x000003b0 - 0x000003bb (0xc) IS[B]
        [10] 0        0        0x000003c0 - 0x000003df (0x20) IS[B]
(II) Setting vga for screen 0.
(II) RADEON(0): Creating default Display subsection in Screen section
        "Builtin Default ati Screen 0" for depth/fbbpp 24/32
(==) RADEON(0): Depth 24, (--) framebuffer bpp 32
(II) RADEON(0): Pixel depth = 24 bits stored in 4 bytes (32 bpp pixmaps)
(==) RADEON(0): Default visual is TrueColor
(==) RADEON(0): RGB weight 888
(II) RADEON(0): Using 8 bits per RGB (8 bit DAC)
(--) RADEON(0): Chipset: "ATI Mobility Radeon HD 3400 Series" (ChipID = 0x95c4)
(II) RADEON(0): PCIE card detected
(II) RADEON(0): KMS Color Tiling: disabled
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: Searching for BusID pci:0000:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: drmOpenMinor returns 8
drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
(II) [drm] DRM interface version 1.3
(II) [drm] DRM open master succeeded.
(II) RADEON(0): Output VGA-0 has no monitor section
(II) RADEON(0): Output LVDS has no monitor section
(II) RADEON(0): Output DVI-0 has no monitor section
(II) RADEON(0): Output VGA-0 disconnected
(II) RADEON(0): Output LVDS connected
(II) RADEON(0): Output DVI-0 disconnected
(II) RADEON(0): Using exact sizes for initial modes
(II) RADEON(0): Output LVDS using initial mode 1280x800
(II) RADEON(0): mem size init: gart size :20000000 vram size: s:8000000 visible:7c00000
(==) RADEON(0): DPI set to (96, 96)
(II) Loading sub module "fb"
(II) LoadModule: "fb"
(II) Loading /usr/lib64/xorg/modules//libfb.so
(II) Module fb: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        ABI class: X.Org ANSI C Emulation, version 0.4
(==) RADEON(0): Using gamma correction (1.0, 1.0, 1.0)
(II) Loading sub module "ramdac"
(II) LoadModule: "ramdac"
(II) Module "ramdac" already built-in
(II) Loading sub module "exa"
(II) LoadModule: "exa"
(II) Loading /usr/lib64/xorg/modules//libexa.so
(II) Module exa: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 2.4.0
        ABI class: X.Org Video Driver, version 5.0
(II) UnloadModule: "vesa"
(II) Unloading /usr/lib64/xorg/modules/drivers//vesa_drv.so
(--) Depth 24 pixmap format is 32 bpp
(II) do I need RAC?  No, I don't.
(II) resource ranges after preInit:
        [0] -1        0        0xffffffff - 0xffffffff (0x1) MX[B]
        [1] -1        0        0x000f0000 - 0x000fffff (0x10000) MX[B]
        [2] -1        0        0x000c0000 - 0x000effff (0x30000) MX[B]
        [3] -1        0        0x00000000 - 0x0009ffff (0xa0000) MX[B]
        [4] 0        0        0x000a0000 - 0x000affff (0x10000) MS[B]
        [5] 0        0        0x000b0000 - 0x000b7fff (0x8000) MS[B]
        [6] 0        0        0x000b8000 - 0x000bffff (0x8000) MS[B]
        [7] -1        0        0x0000ffff - 0x0000ffff (0x1) IX[B]
        [8] -1        0        0x00000000 - 0x00000000 (0x1) IX[B]
        [9] 0        0        0x000003b0 - 0x000003bb (0xc) IS[B]
        [10] 0        0        0x000003c0 - 0x000003df (0x20) IS[B]
(II) RADEON(0): [DRI2] Setup complete
(II) RADEON(0): Front buffer size: 4000K
(II) RADEON(0): Remaining VRAM size (used for pixmaps): 122944K
(==) RADEON(0): Backing store disabled
(II) RADEON(0): Direct rendering enabled
(II) RADEON(0): Setting EXA maxPitchBytes
(II) EXA(0): Driver allocated offscreen pixmaps
(II) EXA(0): Driver registered support for the following operations:
(II)        Solid
(II)        Copy
(II)        Composite (RENDER acceleration)
(II)        UploadToScreen
(II)        DownloadFromScreen
(II) RADEON(0): Acceleration enabled
(II) RADEON(0): DPMS enabled
(==) RADEON(0): Silken mouse enabled
(II) RADEON(0): Set up textured video
(II) RADEON(0): RandR 1.2 enabled, ignore the following RandR disabled message.
(--) RandR disabled
(II) Setting vga for screen 0.
(II) Initializing built-in extension Generic Event Extension
(II) Initializing built-in extension SHAPE
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension BIG-REQUESTS
(II) Initializing built-in extension SYNC
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension XC-MISC
(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) AIGLX: enabled GLX_MESA_copy_sub_buffer
(II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
(II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
(II) AIGLX: Loaded and initialized /usr/lib64/xorg/modules/dri/r600_dri.so
(II) GLX: Initialized DRI2 GL provider for screen 0
(II) RADEON(0): Setting screen physical size to 338 x 211


rvdboom 10-12-2009 02:10 AM

It's not just KMS that's starting to run with these, but even more importantly 3D for r600/r700 chips. I have an integrated motherboard with, I believe, RS780 chip, and KWin Desktop effects now works smoothly in OpenGL. On the whole, it's quite stable for me right now and if performance can certainly be improved, it's already enough for a composited desktop.

dolphin77 11-13-2009 05:24 AM

Hello there.

I figured out that with kernel 2.6.32-rc5, rc6 there were a lot of "noise" produced in X under KDE. So for a while I had to stick to -rc3. But today 2.6.32-rc7 was released. It looks like they fixed this issue with "noise production". There are also a lot of various improvements for radeon driver. So for thous who are not afraid of bleeding edge, and who wants to get reasonable performance of radeon opensource driver, there is a good reason to update.

best regards,
Vladimir

rvdboom 11-13-2009 06:53 AM

Nice! I was thinking it came from Mesa or the xfree86-video-ati driver. :-)
Will compile it tonight.

octoberblu3 11-13-2009 10:50 AM

Quote:

Originally Posted by rvdboom (Post 3755498)
Nice! I was thinking it came from Mesa or the xfree86-video-ati driver. :-)
Will compile it tonight.

Well, to get the whole thing working, you need the latest kernel 2.6.32-rc7, and a couple things from git repositories.

libdrm from git://anongit.freedesktop.org/mesa/drm
compile like the Slackware source SlackBuild with an extra option on configure: --enable-radeon-experimental-api
The extra flag should give you another library libdrm_radeon

xf86-video-ati from git://anongit.freedesktop.org/xorg/driver/xf86-video-ati
You can either hack out most of the unneeded stuff from the x11.SlackBuild script, or just make a complete new one from piecing together the configure calls and the like.
The configure should find the new library libdrm_radeon automatically.

mesa from git://anongit.freedesktop.org/mesa/mesa
Using the stock source SlackBuild, make sure to add r600 to the list of dri drivers to build. The configure script should also find libdrm_radeon automatically.

I copied and modified the original source SlackBuilds to just rsync from the git directory instead of untarring a source tarball.

rsync -aC $CWD/drm/ $PKGNAM-$VERSION

One last thing: if you use an initrd to boot, blacklist the radeon module from automatically loading (unless you build in the radeon module and firmware you need.) Manually load it in later (perhaps in rc.local) with a call like /sbin/modprobe radeon modeset=1

Good luck.

agentdcooper 11-13-2009 03:38 PM

thanks alot for posting this, I've been struggling with intel drivers, but recently noticed there is KMS option for the intel video options in a kernel recompile recently. I am trying some things out with your scripts here + some tweaks, trying to get it working on my ancient intel g45 hardware. anyways, I am in no way trying to thread-jack here, simply want to thank you publicly for posting this, it is very helpful to me in my troubleshooting!

peace

dolphin77 11-13-2009 03:43 PM

Quote:

Originally Posted by octoberblu3 (Post 3755797)
Well, to get the whole thing working, you need the latest kernel 2.6.32-rc7, and a couple things from git repositories.

libdrm from git://anongit.freedesktop.org/mesa/drm
compile like the Slackware source SlackBuild with an extra option on configure: --enable-radeon-experimental-api
The extra flag should give you another library libdrm_radeon

xf86-video-ati from git://anongit.freedesktop.org/xorg/driver/xf86-video-ati
You can either hack out most of the unneeded stuff from the x11.SlackBuild script, or just make a complete new one from piecing together the configure calls and the like.
The configure should find the new library libdrm_radeon automatically.

mesa from git://anongit.freedesktop.org/mesa/mesa
Using the stock source SlackBuild, make sure to add r600 to the list of dri drivers to build. The configure script should also find libdrm_radeon automatically.

I copied and modified the original source SlackBuilds to just rsync from the git directory instead of untarring a source tarball.

rsync -aC $CWD/drm/ $PKGNAM-$VERSION

One last thing: if you use an initrd to boot, blacklist the radeon module from automatically loading (unless you build in the radeon module and firmware you need.) Manually load it in later (perhaps in rc.local) with a call like /sbin/modprobe radeon modeset=1

Good luck.

Sorry I didn't get it. Is there any principal difference from post#1 in this thread?

dolphin77 11-15-2009 06:46 PM

An updated info& scripts:

1) KERNEL PART:

In order to make this work, we will need a kernel 2.6.32-rc7 (or later).
It should be compiled with this options in .config:
Code:

CONFIG_DRM_RADEON=m
CONFIG_DRM_RADEON_KMS=y

If you make menuconfig, this should be found here:
Code:

Device Drivers ---> Graphics support ---> <M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support ---> <M>  ATI Radeon

Device Drivers --->[*] Staging drivers  --->[*]    Enable modesetting on radeon by default

next step is to blacklist radeon frame buffer and radeon modules. We need to do this to avoid firmware initialization problem, if it is not accessible before root FS is mounted. This should be added to /etc/modprobe.d/blacklist.conf:
Code:

blacklist radeonfb
blacklist radeon

And then we will load module from /etc/rc.d/rc.modules:
Code:

/sbin/modprobe radeon
2) Libdrm, Mesa and xf86-video-ati from git.

In order to get as much as we can from our ATIs with opensource drivers, it is reasonable to play with GIT version of this packages.


Code:

# git clone git://cgit.freedesktop.org/mesa/drm
# mv drm libdrm
# git clone git://cgit.freedesktop.org/git/mesa/mesa
# git clone git://cgit.freedesktop.org/git/xorg/driver/xf86-video-ati

This should be done once and after this you could use this scripts, which will update git repositories, and build packages with -date_git version.
libdrm.SlackBuild
Code:

#!/bin/sh

PKGNAM=libdrm
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}
NUMJOBS=${NUMJOBS:-" -j7 "}
BUILD=${BUILD:-1}

CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-${PKGNAM}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
fi

rm -rf $PKG
mkdir -p $TMP $PKG
cd libdrm
git pull
git checkout

# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;

make clean
# Configure:
./autogen.sh

CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --enable-radeon-experimental-api \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --build=$ARCH-slackware-linux

# Build and install:
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1

# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null

mkdir -p $PKG/install

cd $TMP/package-${PKGNAM}
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz

mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD

mesa.SlackBuild (to save time I build only r600 driver. if you need different one, change DRI_DRIVERS accordingly, or if you want to build all the drivers, remove this line: ( --with-dri-drivers="$DRI_DRIVERS" \)and all the drivers will be built):
Code:

#!/bin/sh

PKGNAM=mesa
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}
BUILD=${BUILD:-1}

# Be sure this list is up-to-date:
DRI_DRIVERS="r600,swrast"

NUMJOBS=${NUMJOBS:--j8}

CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-mesa

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

rm -rf $PKG
mkdir -p $TMP $PKG
cd mesa
git pull
git checkout

# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;
make clean

./autogen.sh

CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/mesa-$VERSION \
  --with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
  --with-dri-drivers="$DRI_DRIVERS" \
  --disable-gallium \
  --enable-debug \
  --build=$ARCH-slackware-linux

make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1

# Install gears and glinfo manually, and make symlinks from the names
# of the deprecated similar programs to reduce confusion:
mkdir -p $PKG/usr/bin
cp -a progs/demos/gears $PKG/usr/bin/gears
cp -a progs/demos/glinfo $PKG/usr/bin/glinfo
( cd $PKG/usr/bin
  ln -sf glinfo glxinfo
  ln -sf gears glxgears
)

# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null

mkdir -p $PKG/install

cd $PKG
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD

xf86-video-ati.SlackBuild
Code:

#!/bin/sh

PKGNAM=xf86-video-ati
VERSION=$(date +%Y%m%d)_git
ARCH=${ARCH:-x86_64}
BUILD=${BUILD:-1}

NUMJOBS=${NUMJOBS:--j8}
CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-xf86-video-ati

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

rm -rf $PKG
mkdir -p $TMP $PKG
cd $PKGNAM
git pull
git checkout

# Make sure ownerships and permissions are sane:
chown -R root:root .
find . \
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;
make clean
./autogen.sh
CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --build=$ARCH-slackware-linux

make $NUMJOBS
make install DESTDIR=$PKG

mkdir -p $PKG/install

cd $PKG
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
mv $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz  $CWD

Something like this should do it all together (lets call this build_all.sh):
Code:

./libdrm.SlackBuild && upgradepkg --reinstall libdrm-`date +%Y%m%d`_git-x86_64-1.t?z
./mesa.SlackBuild && upgradepkg --reinstall mesa-`date +%Y%m%d`_git-x86_64-1.t?z
./xf86-video-ati.SlackBuild && upgradepkg --reinstall xf86-video-ati-`date +%Y%m%d`_git-x86_64-1.t?z


onebuck 11-18-2009 01:11 PM

Hi,

I've been working on this Dell Inspiron 1501 problem for ages now.
I've compiled the 2.6.32-rc7 kernel with your suggested settings.

Followed the Thread/posts, especially #13. I used the recipe to the 'T'. I did include all drivers. Still no joy!

Code:

lspci -vv;

01:05.0 VGA compatible controller: ATI Technologies Inc RS482 [Radeon Xpress 200M] (prog-if 00 [VGA controller])

Code:

xorg.log what it should be;

Information                ATI Radeon XPRESS 200M 5955 (PCIE)

Whenever I have the new kernel 2.6.32-rc7 running with your cookbook technique I get a rasterized screen. The 'blacklist radeonfb & blacklist radeon' have been included in the 'blacklist.conf' but invoking 'modprobe radeon' gets a raster screen. Must re-boot.

Heads UP: I noticed in the script '/Soft/dri' that if you setup the directory some users may not be aware that the rest of the scripts should be in that directory. No checking.

I reverted to my original kernel, packages and configurations. I think that a separate install will be easier to see if this can be worked out.

dolphin77 11-18-2009 04:40 PM

Quote:

Originally Posted by onebuck (Post 3761672)
Hi,

I've been working on this Dell Inspiron 1501 problem for ages now.
I've compiled the 2.6.32-rc7 kernel with your suggested settings.

Followed the Thread/posts, especially #13. I used the recipe to the 'T'. I did include all drivers. Still no joy!

Code:

lspci -vv;

01:05.0 VGA compatible controller: ATI Technologies Inc RS482 [Radeon Xpress 200M] (prog-if 00 [VGA controller])

Code:

xorg.log what it should be;

Information                ATI Radeon XPRESS 200M 5955 (PCIE)

Whenever I have the new kernel 2.6.32-rc7 running with your cookbook technique I get a rasterized screen. The 'blacklist radeonfb & blacklist radeon' have been included in the 'blacklist.conf' but invoking 'modprobe radeon' gets a raster screen. Must re-boot.

Heads UP: I noticed in the script '/Soft/dri' that if you setup the directory some users may not be aware that the rest of the scripts should be in that directory. No checking.

I reverted to my original kernel, packages and configurations. I think that a separate install will be easier to see if this can be worked out.

Hi.

First of all I should say that I am not an expert in graphics, programming and etc. I just spent few crazy weeks with my laptop not working properly (it has ATI Mobility Radeon HD 3400 - R600 chip). I almost got a nail in my head. But after a lot of googling, reading and etc I finally found workaround for my card. A little bit later all the required things were included in the development version of the kernel. That what I was trying to report and to share with the community. And I think that if it will help at least to one person, my target is reached. If someone spent a lot of time on figuring out something - why should others do the same? they can do something else.

I do not know what kind of chipset is used in your card and the level of its support in kernel driver. But I do not think this is a very new card. And I think it should be supported. What you still can try to do is to remove all the vga options from lilo. As I understand,there could be interference between "old" framebuffers and the new features of radeon driver. Try also too look on phoronix forums.

PS I removed this /Soft/dri from the above. You right it can confuse people.

Good luck

adamk75 11-18-2009 07:08 PM

Quote:

Originally Posted by dolphin77 (Post 3761900)
Hi.

First of all I should say that I am not an expert in graphics, programming and etc. I just spent few crazy weeks with my laptop not working properly (it has ATI Mobility Radeon HD 3400 - R600 chip). I almost got a nail in my head. But after a lot of googling, reading and etc I finally found workaround for my card. A little bit later all the required things were included in the development version of the kernel. That what I was trying to report and to share with the community. And I think that if it will help at least to one person, my target is reached. If someone spent a lot of time on figuring out something - why should others do the same? they can do something else.

I do not know what kind of chipset is used in your card and the level of its support in kernel driver. But I do not think this is a very new card. And I think it should be supported. What you still can try to do is to remove all the vga options from lilo. As I understand,there could be interference between "old" framebuffers and the new features of radeon driver. Try also too look on phoronix forums.

PS I removed this /Soft/dri from the above. You right it can confuse people.

Good luck

First, I want to thank you for taking the time to write up your original post. I've had KMS working since almost day 1 of installing Slackware 13, but have never written up directions for it (nor have I generated slackbuilds for it).

Yes, you are correct that the Xpress GPU should be supported by KMS (in fact, at this point *all* radeon GPUs prior to the HD5*** series cards should be supported at this point). I would stress that KMS is undergoing nearly constant development in a git tree called drm-next. This is regularly (or semi-regularly) merged into the linux kernel tree.

If someone is having problems with one of the 2.6.32 RCs, it might be worth trying drm-next. There are directions here: http://wiki.x.org/wiki/radeonBuildHowTo . Specifically, under the "Kernel mode setting and 3D for r600/r700" section (which is not accurately titled, as that pertains to KMS for all radeon GPUs). Unfortunately, even that wiki isn't completely up to date. It refers to cloning the linux stable tree, when users actually want to use the development tree:

git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Otherwise, when you get to the last step, merging in drm-next, it will fail.

Finally, #radeon is (usually) a very helpful channel on freenode if users run into problems with the radeon driver.

Adam

TSquaredF 11-19-2009 10:17 AM

dolphin77:
I just wanted to say that yesterday I followed your instructions & installed all of this on my Toshiba laptop. I had to do some massaging on the SlackBuilds, as I got a couple of errors, but that was a minor detail. Everything works well. I am (favorably) impressed.
Regards,
Bill

onebuck 11-19-2009 10:31 AM

Hi,

Quote:

Originally Posted by TSquaredF (Post 3762814)
dolphin77:
I just wanted to say that yesterday I followed your instructions & installed all of this on my Toshiba laptop. I had to do some massaging on the SlackBuilds, as I got a couple of errors, but that was a minor detail. Everything works well. I am (favorably) impressed.
Regards,
Bill

Care to share what you tweaked?

TSquaredF 11-19-2009 08:45 PM

onebuck:
Quote:

Care to share what you tweaked?
Well, it was nothing really applicable. "autogen.sh" would not run because of the permissions I put on flies in my data/download partition, so I had to make it executable in the script. I also copied the entire git directory to a new directory in /tmp then changed to that & ran "autogen.sh" & the rest of the script. I really had no problems with the programs themselves. I do get half a heartbeat of strange raster-looking effect when X starts & it comes up in 180x56 display mode, which means I have to use my reading glasses to read it, but that's ok.
Regards,
Bill

dolphin77 11-22-2009 06:53 AM

Not sure this will have same effect for all the chipsets, but tested on my hardware so I think this should be mentioned.

If I enable vga=791 in my lilo.conf, than some noise is produced on the screen while initializing radeon module and when X started. But the worth is that DRI doesn't work.

Thus I assume that any vga= options should be disabled in /etc/lilo.conf (don't forget to run lilo after edditing).

I do not have any /etc/X11/xorg.conf

The system initialise everything automatically.

PS just checked 2.6.32-rc8 - runs well.

forum1793 11-22-2009 11:40 AM

dolphin, did you do anything different with the kernel firmware options?

I normally have these set, I think as they default, to not build firmware in kernel. But that might be needed for kms to work. Some problems resolved when I enabled the firmware settings by removing * for Select only... and Prevent firmware... Also * for Include in-kernel... as below. Not sure what is minimum required.

From kernel configuration: make menuconfig

Code:

Device Drivers->
Generic Driver Options ->
 (/sbin/hotplug) path to uevent helper
 [ ] Create a kernel maintained /dev tmpfs (EXPERIMENTAL)
 [ ] Select only drivers that don't need compile-time external firmware
 [ ] Prevent firmware from being built
 -*- Userspace firmware loading support[*]  Include in-kernel firmware blobs in kernel binary
 ()    External firmware blobs to build into the kernel binary

Interesting to note that dri2 seems to show up in xorg.0.log.

Edit: I should point out that with the kernel config changes, kms and 3D on AMD 780g (integrated HD3200) does work and at least one or more of the firmware changes discussed above was needed, or maybe can be done in initrd.

dolphin77 11-22-2009 03:06 PM

Quote:

Originally Posted by forum1793 (Post 3765869)
dolphin, did you do anything different with the kernel firmware options?

I just built kernel with make && make modules && make modules_install

Code:

vladimir@darkstar:~$ grep FIRMWARE /usr/src/linux/.config
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_RT2X00_LIB_FIRMWARE=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FIRMWARE_MEMMAP=y

pm-utils:
I am not sure, this is caused by the KMS, but maybe someone can explain. I had a problem with pm-suspend on my Sony Vaio VGN-SR11MR. I tried a lot of different quirks etc. Nothing really worked. Actually machine went to sleep very fast (2-3 seconds). But when I tried to wake it up, it didn't work. Just black screen and no keyboard. Since I use 64 bit system, I didn't know how to trace the problem. (http://hal.freedesktop.org/quirk/qui...-advanced.html)
Till today I decided to spent some time on this issue. Firstly I tried to dump a little bit, if this is a correct word for this. what I did is:
Code:

# rmmod `lsmod`
# pm-suspend

And it started to work!!!

Not all the modules were removed by this 'stupid strait away method'. So I created a list of potential client among modules and started to remove half of list. I started with
58 modules and after few reboots only 4 left. I started to remove them one by one. It was module 'video' which caused problems with pm-suspend.

So now if I manualy do:
Code:

# rmmod video
# pm-suspend

it finaly works!!!

PS could you please check and report here if this issue only corresponds to radeon kms - or it is just an issue with my sony laptop. Thank you.

okos 11-23-2009 09:59 PM

Did any of you get an error with git?
I have not used it before and am not sure what this means.
Quote:

fatal: git checkout: branch master already exists

TSquaredF 11-24-2009 11:56 AM

When did this appear? If during one of the get-*.sh scripts, you probably already have the master branch installed, under the directory ".git".
Regards,
Bill

wirelessmc 11-24-2009 12:51 PM

Hey All,

Thanks for all your posts everyone. This is my first post here on LQ - at least with this tag (wirelessmc). All this explains a great deal. I am new to kms. So onto my issue:

No X in either SW 12.2 (stock kernel 2.6.26.?) or 12.2 with 13.0 kernel 2.6.29.6. I rebuilt this kernel (2.6.29.6) last night (on my 12.2 install) but haven't tried booting it yet. I suspect after reading this that this (2.6.29.6 rebuild) is not the answer.

New mobo is Asus M3A76-CM (Radeon 3000). X is working fine on this hardware with a fresh install of Ubuntu 9.10/kernel 2.6.31-14 using radeon driver (although frlgx non-free driver was offered after boot).

I am thinking that latest kernel snapshot "2.6.32-rc8-git1" will likely fix everything or...

Will I still need to use above Slack build script to rebuild libdrm, then blacklist radeon & radeonfb and enable radeon module from rc.modules?

Seems like much hassle to get a radeon driver working properly under SW.

onebuck 11-24-2009 01:09 PM

Hi,

Tweaking the system via 'git' is sometimes the only way to get your 'ATI' card/subsystem functional. Especially if your card has been dropped.

What do you mean by 'No X'? You should be able to use the 'vesafb' to test things.

You can use 'SlackBuilds' since it would be easier but you could install manually if desired. Look at the Xorg Wiki.

:hattip:

wirelessmc 11-24-2009 03:28 PM

What I mean by no X is I've tried every conceivable permutation of Xorg.conf including the vesafb driver and I can seem to get X started. I am not at my machine to give you the gory details of my /var/log/Xorg.0.log, but something about not knowing the 9616 chipset if I recall.

I thought about something in my lilo that could have been an issue (like vga=791 or whatever I have it set to). So booting from the SW13 CD (with boot: hugesmp.s root=/dev/[myrootdev] rdinit=ro) should eliminate that yes?

onebuck 11-24-2009 05:26 PM

Hi,

Quote:

Originally Posted by wirelessmc (Post 3768353)
What I mean by no X is I've tried every conceivable permutation of Xorg.conf including the vesafb driver and I can seem to get X started. I am not at my machine to give you the gory details of my /var/log/Xorg.0.log, but something about not knowing the 9616 chipset if I recall.

I thought about something in my lilo that could have been an issue (like vga=791 or whatever I have it set to). So booting from the SW13 CD (with boot: hugesmp.s root=/dev/[myrootdev] rdinit=ro) should eliminate that yes?

The lilo.conf settings are for the console that you wish to setup for use. You don't have to have setting for the console within the '/etc/lilo.conf'. Your default console will be setup if you don't select one.

If you can provide more information about the confiuration along with any error messages. Then we can possibly help you.

okos 11-25-2009 12:53 AM

Quote:

Originally Posted by TSquaredF (Post 3768153)
When did this appear? If during one of the get-*.sh scripts, you probably already have the master branch installed, under the directory ".git".
Regards,
Bill

I ran the three scripts the last two got the fatal error. Not really sure what it means.
I guess it has something to do with "git checkout -t -b master origin/master".

No .git in my home dir
Quote:

den@bst:~$ ls -la | grep git
den@bst:~$

okos 11-25-2009 01:15 AM

Oh yea second question. I am not sure how to find the chipset.
Quote:

lspci prints
01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3650
I don't think my chipset is 3650.

onebuck 11-25-2009 07:48 AM

Hi,

Quote:

excerpt from 'Xorg.0.log';

(II) RADEON: Driver for ATI Radeon chipsets:

...
ATI Radeon HD 3600 Series, ATI Radeon HD 3650 AGP,
ATI Radeon HD 3600 PRO, ATI Radeon HD 3600 XT,
ATI Radeon HD 3600 PRO, ATI Mobility Radeon HD 3650,
ATI Mobility Radeon HD 3670, ATI Mobility FireGL V5700,
ATI Mobility FireGL V5725, ATI Radeon HD 3200 Graphics,
ATI Radeon 3100 Graphics, ATI Radeon HD 3200 Graphics,
ATI Radeon 3100 Graphics, ATI Radeon HD 3300 Graphics,
ATI Radeon HD 3200 Graphics, ATI Radeon 3000 Graphics,
ATI Radeon HD Graphics, ATI Radeon Graphics,
ATI Mobility Radeon HD Graphics, ATI Mobility Radeon Graphics,
ATI Radeon Graphics

Your device is in the radeon driver.

:hattip:

dolphin77 12-08-2009 09:49 AM

Hello again.

Just wanted to report, that if you tried the above recipe (http://www.linuxquestions.org/questi...75#post3758275) in the period 24.11.2009-04.12.2009, probably you got a wrong impression that it doesn't work stable enough. There were an issue in mesa git. Some new code was introduced which caused wrong behavior of Kwin and other 3d apps. There were missing parts of screen and many many other buggy stuff. But do not give up. Mesa developing team is still working hard. They reverted the buggy part of code and now everything works very nice.

And of course it is reasonable to update kernel to recently released 2.6.32. I've installed it the next day it was released. so far so good. No negative impressions.

Best regards,
Vladimir

onebuck 12-08-2009 02:39 PM

Hi,

I'm still working with the '2.6.32' kernel on an experimental basis.

I'll continue to work with 'git' for mesa, drm and 'ATI' on the separate install just to get an idea of adjusting things in hopes of getting things shook out.

:hattip:

BrZ 12-08-2009 03:43 PM

Not going to kms now, just trying to gain some fps but I'm learning with this thread. My weak rs482 is giving almost 1400 fps with glxgears. It's running with kernel-2.6.32, patched mesa-761rc2, ddx-6.12.14, libdrm-2.4.15. Except the kernel, all of them was built with SlackBuilds.

I'm tempted to build libdrm-2.4.16, ddx patched with some code from git and mesa761rc3 to see if this mess will work and sustain 1300+ fps.

Please, keep sharing your findings. Thanks.

octoberblu3 12-10-2009 05:15 PM

Quote:

Originally Posted by BrZ (Post 3784511)
I'm tempted to build libdrm-2.4.16, ddx patched with some code from git and mesa761rc3 to see if this mess will work and sustain 1300+ fps.

Please, keep sharing your findings. Thanks.

I am currently running KMS with kernel 2.6.32, libdrm-2.4.16 with --enable-radeon-experimental-api, mesa-7.7-rc2 including r600, and xf86-video-ati from git master. It's working great thus far. (~1250 fps on glxgears) KWin compositing works just fine, and fullscreen video at 1920x1080 works better than ever.

This is running on an ATI HD 2600 Pro.

zvzi 12-10-2009 11:37 PM

i tried kms with kernel 2.6.32 and the bleeding edge mesa, drm and ati from git. Didn't work at first then i removed the "vga" line from lilo.conf and works fine. Performance in kwin dropped however, as they were visible stuttering in a couple of effects compared to running in non-kms. I'm sure these will improve in future releases though. Btw im running on an ATI Mobility Radeon x1700 (R500).

dolphin77 12-11-2009 03:22 AM

I am not sure that glxgears is giving a good measuring. It is very relative measurements. I have 1000-1200 fps with desktop effects switched on and if I switch it off while glxgears running, I can get 1800-1900 fps. Kernel 2.6.32, mesa, libdrm and xf86-video-ati from git of yesterday.

01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3400 Series (prog-if 00 [VGA controller])
Subsystem: Sony Corporation Device 9033
I think it is actually HD3470

BroX 12-20-2009 11:38 AM

I'm trying to get kms working with kernel 2.6.32.2. Upgraded libdrm, mesa and xf86-ati-video as per above.

The screen blanks when drm should be loaded. When I boot with radeon.modesetting=0 I find the following in Xorg.0.log:
Code:

$ grep drm /var/log/Xorg.0.log
(II) Loading sub module "fglrxdrm"
(II) LoadModule: "fglrxdrm"
(WW) Warning, couldn't open module fglrxdrm
(II) UnloadModule: "fglrxdrm"
(EE) Can't load FireGL DRM library (libfglrxdrm.so).

This is my card:
Code:

$ lspci|grep VGA
01:00.0 VGA compatible controller: ATI Technologies Inc RV730XT [Radeon HD 4670]

I removed fglrx packages and have no xorg.conf. Why is it still looking for FireGL stuff???

adamk75 12-20-2009 12:29 PM

Please show us the full /var/log/Xorg.0.log file. I have a feeling that you still have fglrx at least partially installed.

As for your KMS issues (which is probably not related)... Did you compile the radeon DRM into the kernel or as a module? How about framebuffer console support?

Adam

BroX 12-20-2009 12:56 PM

1 Attachment(s)
Quote:

Originally Posted by adamk75 (Post 3799079)
Please show us the full /var/log/Xorg.0.log file. I have a feeling that you still have fglrx at least partially installed.

As for your KMS issues (which is probably not related)... Did you compile the radeon DRM into the kernel or as a module? How about framebuffer console support?

Adam

Both drm and framebuffer support are built as modules. I have blacklisted radeon and radeonfb, and load radeon from rc.modules.
Code:

$ grep RADEON build/linux-2.6.32.2/.config
CONFIG_DRM_RADEON=m
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y
# CONFIG_FB_RADEON_DEBUG is not set
CONFIG_DRM_RADEON_KMS=y

Full Xorg.0.log attached.

Cheers, Leon.

adamk75 12-20-2009 01:19 PM

Alright, well let's start with the easiest thing:

Code:

(II) LoadModule: "glx"
(II) Loading /usr/lib64/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="FireGL - ATI Technologies Inc."
        compiled for 7.4.0, module version = 1.0.0

You did not completely remove fglrx, because the glx module that is getting loaded is from the fglrx package/driver.

Code:

(II) LoadModule: "ati"
(WW) Warning, couldn't open module ati
(II) UnloadModule: "ati"
(EE) Failed to load module "ati" (module does not exist, 0)

You also don't seem to have the necessary updated 2D driver installed. I'm guessing you removed the xf86-video-ati package that Slackware installed but you did not properly install xf86-video-ati from git.

As for your console issues. I would personally recommend building with CONFIG_FB=y and removing CONFIG_FB_RADEON altogether, but first it's probably worth just getting those other two parts working and seeing if it improves the console situation any.

Adam

BroX 12-20-2009 01:51 PM

Quote:

Originally Posted by adamk75 (Post 3799120)
Alright, well let's start with the easiest thing:

Code:

(II) LoadModule: "glx"
(II) Loading /usr/lib64/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="FireGL - ATI Technologies Inc."
        compiled for 7.4.0, module version = 1.0.0

You did not completely remove fglrx, because the glx module that is getting loaded is from the fglrx package/driver.

Ok, got that sorted by reinstalling xorg-server package:
Code:

(II) LoadModule: "glx"
(II) Loading /usr/lib64/xorg/modules/extensions//libglx.so
(II) Module glx: vendor="X.Org Foundation"
        compiled for 1.6.3, module version = 1.0.0
        ABI class: X.Org Server Extension, version 2.0

Quote:

Code:

(II) LoadModule: "ati"
(WW) Warning, couldn't open module ati
(II) UnloadModule: "ati"
(EE) Failed to load module "ati" (module does not exist, 0)

You also don't seem to have the necessary updated 2D driver installed. I'm guessing you removed the xf86-video-ati package that Slackware installed but you did not properly install xf86-video-ati from git.
I will see if reinstalling xf86-video-ati will make a difference.

Thanks for the help!

Cheers, Leon.

dolphin77 12-20-2009 02:01 PM

there is a bug in 2.6.32.2. I've seen a patch for it somewhere, but I am to busy for now. Try Googling if you want, or better stick to 2.6.32 or 2.6.32.1 for a while.

BroX 12-20-2009 02:19 PM

Quote:

Originally Posted by dolphin77 (Post 3799154)
there is a bug in 2.6.32.2. I've seen a patch for it somewhere, but I am to busy for now. Try Googling if you want, or better stick to 2.6.32 or 2.6.32.1 for a while.

Thanks!

The xf86-video-ati package hadn't been build at all because xorg macros were not updated. Was in too much hurry to notice the obvious error message... Following this guide solved that.
Will now downgrade to 2.6.32.1 and see what it all brings.

Cheers, Leon.

BroX 12-20-2009 02:51 PM

Solved!

Although I get the following when running glxgears:
Code:

$ glxgears
Mesa: Mesa 7.8-devel DEBUG build Dec 20 2009 20:54:44
Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
Mesa: Initializing x86-64 optimizations                                                       
Mesa: 3Dnow! detected                                                                         
do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.                 
Try adjusting the vblank_mode configuration parameter.                                       
10465 frames in  5.000 seconds = 2093.000 FPS

How can I adjust the vblank_mode configuration?

And:
Code:

$ grep WW /var/log/Xorg.0.log
(WW) Warning, couldn't open module fbdev
(WW) Falling back to old probe method for vesa
(WW) RADEON(0): Color tiling is not yet supported on R600/R700

$ grep EE /var/log/Xorg.0.log                           
(EE) Failed to load module "fbdev" (module does not exist, 0)

Is this because I disabled radeonfb support?

BroX 12-20-2009 04:07 PM

Quote:

Originally Posted by LJSBrokken (Post 3799173)
Solved!

Although I get the following when running glxgears:
[code]$ glxgears
Mesa: Mesa 7.8-devel DEBUG build Dec 20 2009 20:54:44
Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable

Reply to self ;-)
libtxc_dxtn.so can be had from here:
http://homepage.hispeed.ch/rscheidegger/dri_experimental/s3tc_index.html
Now glxgears and the likes report
Code:

$ glxgears
Mesa: Mesa 7.8-devel DEBUG build Dec 20 2009 20:54:44
Mesa warning: software DXTn compression/decompression available
Mesa: Initializing x86-64 optimizations
Mesa: 3Dnow! detected
do_wait: drmWaitVBlank returned -1, IRQs don't seem to be working correctly.
Try adjusting the vblank_mode configuration parameter.

(for what it's worth)

Now on to the 'vblank_mode configuration'...

adamk75 12-20-2009 04:34 PM

IRQs are not supported unless you are using the latest/greatest code in drm_next and have downloaded some extra firmware. Without that support you can't sync-to-vblank. It's really safe to ignore that message.

As for the DXTn stuff... That's actually completely broken on r6xx/r7xx cards, even with the libtxc_dxtn library.

BroX 12-20-2009 05:31 PM

Solved!
 
Quote:

Originally Posted by adamk75 (Post 3799262)
IRQs are not supported unless you are using the latest/greatest code in drm_next and have downloaded some extra firmware. Without that support you can't sync-to-vblank. It's really safe to ignore that message.

As for the DXTn stuff... That's actually completely broken on r6xx/r7xx cards, even with the libtxc_dxtn library.

Thanks for getting this sorted! I'll leave it that then.

mkoco 12-21-2009 01:02 AM

Compiling in 2.6.32.2:
from ./autogen.sh in xf86-video-ati/ -
Code:

configure.ac:35: error: xorg-macros version 1.3 or higher is required but 1.2.2 found
/usr/share/aclocal/xorg-macros.m4:45: XORG_MACROS_VERSION is expanded from...
configure.ac:35: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
aclocal: autom4te failed with exit status: 1
autoreconf: aclocal failed with exit status: 1


BroX 12-21-2009 01:49 AM

Quote:

Originally Posted by mkoco (Post 3799539)
Compiling in 2.6.32.2:
from ./autogen.sh in xf86-video-ati/ -
Code:

configure.ac:35: error: xorg-macros version 1.3 or higher is required but 1.2.2 found
/usr/share/aclocal/xorg-macros.m4:45: XORG_MACROS_VERSION is expanded from...
configure.ac:35: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
aclocal: autom4te failed with exit status: 1
autoreconf: aclocal failed with exit status: 1


Updating xorg-macros:

(Copy/pasted from Xorg.wiki)
The build macros module contains a set of macros used by the build scripts across X.org modules. They are needed by both the Xserver and the drivers, if you are compiling from git.

Code:

$ git clone git://anongit.freedesktop.org/git/xorg/util/macros
$ cd macros
$ ./autogen.sh --prefix=/opt/xorg
$ make install

After installing the build macros, you should point your build environment to the newly installed macros. Add "/opt/xorg/share/aclocal" at the include patch of the aclocal tool:

Bash:

Code:

$ export ACLOCAL="aclocal -I /opt/xorg/share/aclocal"
C shell:

Code:

$ setenv ACLOCAL "aclocal -I /opt/xorg/share/aclocal"


All times are GMT -5. The time now is 12:16 AM.