On Fri, 13 May 2005, Peter Gordon wrote:
My understanding is that the kernel will automagically configure DMA as appropriate if you build support for the IDE controller statically, but hdparm is needed to initialize DMA stuff if you build your IDE controller's driver as a module. I'm not certain though. I tend to build everything into the kernel, and I've not needed to use hdparm.
There's a whole lot more one can do with hdparm. What the kernel _can_ do is enable dma only. hdparm is used to set other performance enhancing options. My '/etc/conf.d/hdparm' contains 'hda_args="-d1A1m16u1a64"' which means:
-d1 - enables dma for this drive (to ensure dma is set).
-A1 - enables the IDE drive's read-lookahead feature.
-m1 - set sector count to 16. This reads 16 sectors per interrupt instead of one. Some drives run slower with this.
-u1 - set interrupt-unmask for the drive. Can be dangerous with some drive/controller combinations. Allows the kernel to service other i/o interrupts, afaicu.
-a64 - set sector count for filesystem read-ahead to 64 sectors. A cache-mechanism.
http://gentoo-wiki.com/HOWTO_Use_hdparm_to_improve_IDE_device_performance
Best regards
Peter K
-- [email protected] mailing list

