I have a similar problem. Maybe even worse.. If I change the way the hard drives are connected (like swap hda and hdb), changin the master/slave jumpers, the system does not boot at all... I had to find, what it seems a unique configuration in which it boots, but no DMA on the second IDE channel. I could turn DMA on with hdparam and as soon as I accessed the disk, it was disabled as in your case... I gave-up... I blame it on the stupid PIIX (Triton) chip, I have... Or maybe I am stupid, which is possible too :-) Anyway, I am following this thread with interest... :-)
> Then I'll run a program that requires a disk read, such as, for example, > find / > > It locks for a while (about ten seconds) then I run dmesg. The last > lines are self-explanative: > > > hdc: timeout waiting for DMA > hdc: irq timeout: status=0x58 { DriveReady SeekComplete DataRequest } > hdc: timeout waiting for DMA > hdc: irq timeout: status=0x58 { DriveReady SeekComplete DataRequest } > hdc: timeout waiting for DMA > hdc: irq timeout: status=0x58 { DriveReady SeekComplete DataRequest } > hdc: timeout waiting for DMA > hdc: irq timeout: status=0x58 { DriveReady SeekComplete DataRequest } > hdc: DMA disabled > ide1: reset: success > > > The system disables DMA. It gives me an IRQ timeout. > > BIOS is fine. Everything is fine but DMA. What should I do? Break my > MotherBoard in half? :-)) > > I've already tried hdparm -c 0, -c 1, -c 2, -c 3. I've also tried hdparm > -u 1. Results: Still no DMA. > > Wierd, eh?