Next Previous Contents

8. UDMA-Generic

The UDMA-Generic patch, modified by André Balsa ( andrebalsa@altern.org) from Mark Lord's original Triton DMA driver, provides UDMA support for the following chipsets:

It is also designed to be easy to extend to support other chipsets. UDMA-Generic has been tested successfully on kernels 2.0.29 through 2.0.33, although the patch may require some manual tweaking on kernels earlier than 2.0.32. A vastly updated patch known as the Grand Unified UDMA Patch that supports even more chipsets is currently in beta testing and will probably not be available until after kernel 2.0.35 is released, which should be soon.

You can download the current patch from http://pobox.com/~brion/linux/udma-generic-latest.tar.gz, see the files INSTALL and UDMA.txt in the archive for usage instructions.

Here are a few notes from the author:

Performance with IBM UDMA drives on a good motherboard approches the
maximum head transfer rates: about 10 Mb/s (measured with hdparm -t -T).

The Intel TX chipset has a single FIFO for hard disk data shared by
its two IDE controllers, so using 2 UDMA drives will not yield such a
great improvement over a single UDMA drive.
However, the SiS5598 has two completely separate controllers, each with
its own FIFO. Theoretically, one could approach 66Mb/s burt transfer
rates on motherboards with the SiS5598 chip, using the md driver and
data striping over two drives. The SiS5571 has the same controller
architecture, I think. I don't have the VIA chipsets datasheets, so I
can't say anything about those.

The Linux IDE (U)DMA kernel driver by Mark Lord has a particularly
low setup time (i.e. latency for data transfers). It is ideal for
frequent, small data transfers (such as those in Linux news servers),
and might be in some cases superior to its SCSI counterparts.


Next Previous Contents