Messages in this thread | | | Date | Wed, 25 Nov 1998 02:49:57 +0000 | From | Mark Lord <> | Subject | Re: UDMA is NFG on Ultra33 (CMD646 in disguise) |
| |
pmonta@halibut.imedia.com wrote: .. > Do you also see problems with the normal, non-UDMA busmaster > operation? If there is a PCI-controller bug for this chip, > likely enough any busmaster mode would be bad. >
Okay, here's the latest scoop:
UDMA2: corruption UDMA1: not tried UDMA0: no corruption DMA2: no corruption (identical timings to UDMA0/PIO4) PIO4: no corruption (identical timings to DMA2/UDMA0)
Looks like we could put together a kernel patch to auto-detect the card, and automatically convert UDMA2 settings to UDMA0 to prevent data corruption.
Easy to do for the chipset, but the drive also needs to be told, via "hdparm -X64".
PROBLEM: some drives require a reset (?) when changing UDMA modes. Ugh.
Maybe for linux-2.1.xxx, we should just have the kernel auto-detect the chipset, check for UDMA > 0, and not use DMA if the chipset is programmed for UDMA > 0.
The user can then later correct this using /proc/ide/*/config and hdparm.
For linux-2.3.xxx, we can add significantly more functionality to to the kernel to do all this automatically. -- mlord@pobox.com
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |