# VIA K8M800 VGA and openchrome drivers problems

## OnlyTux

Hello,

I am installing Gentoo on an old machine. Stable, desktop x86 profile.

I am experiencing problems with the integrated Unichrome VGA.

The problematic hardware:

```
# lspci | grep VGA

01:00.0 VGA compatible controller: VIA Technologies, Inc. K8M800/K8N800/K8N800A [S3 UniChrome Pro] (rev 01)
```

My kernel 2.6.32-r7 config:

```
# cat .config|grep -i via

# CONFIG_MVIAC3_2 is not set

# CONFIG_MVIAC7 is not set

CONFIG_SATA_VIA=y

CONFIG_PATA_VIA=y

CONFIG_VIA_RHINE=m

# CONFIG_VIA_RHINE_MMIO is not set

CONFIG_HW_RANDOM_VIA=m

# CONFIG_I2C_VIA is not set

CONFIG_I2C_VIAPRO=y

# CONFIG_SENSORS_VIA686A is not set

CONFIG_AGP_VIA=y

CONFIG_DRM_VIA=y

CONFIG_SND_VIA82XX=m

# CONFIG_SND_VIA82XX_MODEM is not set

# cat .config|grep -i agp

CONFIG_AGP=y

# CONFIG_AGP_ALI is not set

# CONFIG_AGP_ATI is not set

# CONFIG_AGP_AMD is not set

# CONFIG_AGP_AMD64 is not set

# CONFIG_AGP_INTEL is not set

# CONFIG_AGP_NVIDIA is not set

# CONFIG_AGP_SIS is not set

# CONFIG_AGP_SWORKS is not set

CONFIG_AGP_VIA=y

# CONFIG_AGP_EFFICEON is not set

# cat .config|grep -i drm

CONFIG_DRM=y

# CONFIG_DRM_TDFX is not set

# CONFIG_DRM_R128 is not set

# CONFIG_DRM_RADEON is not set

# CONFIG_DRM_MGA is not set

# CONFIG_DRM_SIS is not set

CONFIG_DRM_VIA=y

# CONFIG_DRM_SAVAGE is not set
```

If it can help, my emerge --info:

```
# emerge --info

Portage 2.1.8.3 (default/linux/x86/10.0/desktop, gcc-4.3.4, glibc-2.10.1-r1, 2.6.32-gentoo-r7 i686)

=================================================================

System uname: Linux-2.6.32-gentoo-r7-i686-AMD_Hammer_Family_processor_-_Model_Unknown-with-gentoo-1.12.13

Timestamp of tree: Tue, 01 Jun 2010 19:55:01 +0000

app-shells/bash:     4.0_p37

dev-java/java-config: 2.1.10

dev-lang/python:     2.6.4-r1

dev-util/cmake:      2.6.4-r3

sys-apps/baselayout: 1.12.13

sys-apps/sandbox:    1.6-r2

sys-devel/autoconf:  2.65

sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1

sys-devel/binutils:  2.18-r3

sys-devel/gcc:       4.3.4

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.6b

virtual/os-headers:  2.6.30-r1

ACCEPT_KEYWORDS="x86"

ACCEPT_LICENSE="*"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-Os -march=k8 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/X11/xkb"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-Os -march=k8 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LANG="it_IT@euro"

LDFLAGS="-Wl,-O1"

LINGUAS="it"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

USE="3dnow 3dnowext X a52 aac aalib acl acpi alsa berkdb bidi bl bluetooth branding bzip2 cairo cddb cdparanoia cdr cli consolekit cracklib crypt cups cxx dbus dga dri dts dub dvb dvd dvdr emboss encode esd exif fam ffmpeg firefox flac fortran gdbm gif gmplayer gpm gstreamer gtk hal iconv java jpeg lcms ldap libcaca libnotify lzo mad mikmod mmx mmxext mng modules mp3 mp4 mpeg mudflap ncurses nls nptl nptlonly nsplugin ogg opengl openmp pam pango pcre pdf perl png pnm policykit ppds pppd python qt3support radio readline reflection schroedinger sdl session speex spell spl sse sse2 ssl startup-notification svg svga sysfs tcpd tga theora threads tiff truetype unicode usb v4l vidix vorbis x264 x86 xanim xcb xinerama xml xorg xulrunner xv xvid xvmc zlib zoran" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="openchrome via" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
```

The software:

```
# emerge -pv xf86-video-openchrome xorg-server

[ebuild   R   ] x11-base/xorg-server-1.7.6  USE="hal nptl sdl xorg -debug -dmx -ipv6 -kdrive -minimal -tslib" 0 kB

[ebuild   R   ] x11-drivers/xf86-video-openchrome-0.2.904  USE="dri -debug" 0 kB
```

The first problem (the *ERROR* appears anytime I startx):

```
# dmesg|grep agp     

[    0.180896] Linux agpgart interface v0.103

[   48.145798] [drm:via_initialize] *ERROR* called with no agp memory available
```

The performances under LXDE are very poor. If I do not configure any xorg.conf, X will start at least.

The following are my Xorg log errors:

```
# grep EE /var/log/Xorg.0.log

(EE) Failed to load module "vesa" (module does not exist, 0)

(EE) Failed to load module "fbdev" (module does not exist, 0)

(EE) CHROME(0): [drm] drmAgpAcquire failed 19

(EE) CHROME(0): [drm] Failed to initialize DMA ring-buffer: 14
```

If I type X -configure and try to startx using the xorg.conf.new, the screen blanks. In that case, though, the logs do not report the first two error lines.

I also unmasked the latest version of the drivers available in portage, but it does not seem to help. The errors stay the same.

This is my first VIA experience, I am not very skilled and I cannot tell if this all is my fault or the driver is definitely broken. Must I emerge and use the vesa drivers?

I hope I gave all the necessary informations.

Thanks in advance for your patience and your help.

----------

## rufnut

Hi   :Smile: 

I think you should be able to get some 3d happening if you really need.

Years ago on a km800 chipset board, I remember getting 3d by manually installing DRM.

Hopefully the openchrome drivers should work for you. << I had mixed success IIRC.

Sorry I cannot help more ....

I guess you really need onboard video ? 

The reason I ask is that an Nvidia or ATI Card, even an old one, would perform better and is much easier to install ?

Good Luck

----------

## OnlyTux

Hello,

rufnut, you are right: in spyte of everything and without any xorg.conf I do have 3D acceleration, even if very poor. glxinfo says "yes", and I can see the glxgears window run without glitches. Thank you for the hint.

The performances (I know glxgears is no benchmark software, but it gives an idea of the differences I am seeing) are ~62FPS with stable drivers and ~84FPS with the newest version available in portage. Does anybody know if this is an acceptable value from this VGA?

Unfortunately, this machine is one of thirteen identical ancient computers coming from my old school, so I cannot upgrade them  :Sad: 

----------

## rufnut

 *OnlyTux wrote:*   

>  are ~62FPS with stable drivers and ~84FPS with the newest version available in portage. Does anybody know if this is an acceptable value from this VGA?
> 
> 

 

IIRC , glxgears ran at about 300 F/S with 15/16 colour depths , 62 F/S and 84 F/S sound like its frame sync'ed thats another reason you cannot use glxgears as a benchmark.

good luck

----------

