Does anybody know how to get Linux working RELIABLY on an Athlon
system which uses the Via chipset? I believe that a fix has been
included in the Kernel, but I still have problems -- is there a special
configuration parameter needed?
I have a year-old Asus A7V133 motherboard with 256 MB RAM and an 800
MHz Athlon. It has (potentially) 2 hard drives, a CDROM and a CD-RW;
for this article I only discuss using a single HD and the CD-RW on the
first IDE cable, with the other drives unmounted. Its BIOS is the
latest version 1008a. This motherboard uses the Via chipset, and it has
the dreaded data corruption bug:
data errors when copying large files between IDE drives on
different cables, and for CD-R/W drives.
Until recently I never saw it, because my drives were on a single IDE
cable. I am trying to upgrade my CD-R/W drive and cannot get it working,
even when it and a single hard drive are on the same IDE cable. Note
I had an old 4x CD writer which occasionally saw errors (~1 per 20 CDs).
The new CD writer is a Philips 24x12x40 which gets 1-3 errors every CD. I
have been through 4 CD writers without success (various manufacturers).
I have upraded everything I know how to do easily:
RedHat 7.2 (includes cdrecord 1.10)
BIOS 1008a (latest from the manufacturer)
Kernel 2.4.18 (configured and built it myself (:-)) -- system
boots just fine using this or the RH kernel (2.4.7-10).
CD-R problems are the same for both kernels. I had to
config it for PentiumIII, because the Athlon config has
unsatisfied external _mmx_memcopy() in some modules. I
used PCI access = BIOS (see below).
When I burn a CD in this Linux (using GToaster), I get no error messages,
but when I compare it to the original, a few files have permanent compare
errors. When I copy the files to a Win98 partition and boot the machine
into Win98se, I can burn CDs just fine, which compare correctly when
I reboot into Linux and do the compare (why-oh-why don't they include
a program to compare CD to disk in Windows???). I did NOT install Via's
updated "4-in-1" driver into Win98se.
In desperation I tried several Windows packages which claim
to use ext2 filesystems in Windows. Not one could use my
drives -- probably because they are too large; at least one
could handle /boot (45 MB; the partition of interest is 39 GB).
I have burned 12 CD-Rs in Win98se, but it is tedious as the
Win98 partiton has space for only 1.4 GB and I had to reboot
back and forth for every 2 CDs.
From the success in Windows, I believe that the BIOS is configuring the
PCI and IDE systems correctly (that is Via's way to fix the bug). This
implies that Linux is re-configuring them incorrectly. I did configure
the Kernel to use "BIOS" access mode for PCI, hoping that would preserve
the BIOS settings which work in Windows. I still get errors.
Does anyone have a clue? Do I need to discard this motherboard and
start over?
A Google search on "via data corruption bug" returns volumes of
information, but I cannot separate the wheat from the chaff....