The Linux Ultra-DMA Mini-Howto: Problems

Next Previous Contents

## 9. Problems

## 9.1 The UDMA Blacklist

The following drives are ``blacklisted''. You should not use UDMA with these drives as it may cause corruption of data. To avoid this, the driver should automatically disable DMA for these drives.

- Western Digital WDC AC11000H, AC22100H, AC32500H, AC33100H, AC31600H - all versions
- Western Digital WDC AC32100H revision 24.09P07
- Western Digital WDC AC23200L revision 21.10N21

## 9.2 Are you overclocking?

If you are, beware! Here is a quote from the old udma-generic documentation:

> `

>     DON'T OVERCLOCK the PCI bus. 37.5MHz is the maximum supported speed for
>     the PCI bus. Some (supposedly compatible) UDMA drives will not even take
>     37.5MHz, but should be OK at 33.3MHz.

>     In any case, NEVER, NEVER set the PCI bus to 41.5MHz.

>     The RECOMMENDED safe setting is 33MHz.

> `

## 9.3 Is your BIOS current?

Here is another clip from the udma-generic docs:

> `

>     The real work involved in setting up the chips for DMA transfers is done
>     mostly by the BIOS of each motherboard. Now of course one hopes that the
>     BIOS has been correctly programmed...

>     For example, the ASUS SP-97V motherboard with its original BIOS (Rev. 1.03)
>     would malfunction with the modified Linux driver in both DMA mode 2 and UDMA
>     modes; it would work well using PIO mode 4, or under Windows 95 in all
>     modes. I downloaded the latest BIOS image (Rev. 1.06) from the ASUS Web site
>     and flashed the BIOS EPROM with the latest BIOS revision. It has been
>     working perfectly ever since (at 66 MHz bus speeds).

>     What this tells us is that the BIOS sets up the DMA controller with specific
>     timing parameters (active pulse and recovery clock cycles). My initial BIOS
>     revision probably had bad timings. Since the Windows 95 driver sets up those
>     timings by itself (i.e. it does not depend on the BIOS to setup the hard
>     disk controller timing parameters), I initially had problems only with the
>     Linux driver, while Windows 95 worked well.

>     So, let me state this again: this Linux (U)DMA driver depends on the BIOS for
>     correct (U)DMA controller setup. If you have problems, first check that you
>     have the latest BIOS revision for your specific motherboard.

>     ...

>     New BIOS revisions can be downloaded from your motherboard manufacturer's
>     Web site. Flashing a new BIOS image is a simple operation but one must
>     strictly follow the steps explained on the motherboard manual.

>     Late Award BIOS revisions seem stable with respect to UDMA. Anything with a
>     date of 1998 should be fine.

> `

## 9.4 If you still can't get it to work!

If nothing in this document proved helpful, or at least not helpful enough to get your machine working, your best bet is to write up a message that fully describes your difficulty, what type of UDMA interface you have, whether it is onboard or on a card, if your drive is actually UDMA or plain EIDE, exactly what configuration of drives you have, what version (distribution & kernel versions if possible) of Linux you are using, and anything else that sounds useful, and post it to the newsgroup comp.os.linux.hardware. You will probably get some helpful suggestions soon.

Next Previous Contents