2000-11-30 15:54:04

by Guennadi Liakhovetski

[permalink] [raw]
Subject: DMA for triton again...

Hello everybody

I know this subject has been discussed multiple times already, I've read a lot of posts about it, but still haven't been able to fix my particular case. So, here we go:

computer: Chipset 430FX / Triton / PIIX, disk Western Digital Caviar AC21600H Firmware code F6 (no UDMA, some WD docs show DMA mw2, some PIO4...), kernel 2.2.17 with ide patch and PIIX enabled, DMA by default, generic DMA, and couple others. Did not try 'bad DMA-firmware (EXPERIMENTAL)'. dmesg (relevant - in my view - lines):

Linux version 2.2.17 (root@risky) (gcc version 2.7.2.3) #22 Wed Nov 29 23:04:12
GMT 2000
Detected 74540 kHz processor.
...
Memory: 47168k/49152k available (828k kernel code, 412k reserved, 700k data,
44k init)
...
CPU: Intel Pentium 75 - 200 stepping 05
...
PCI: PCI BIOS revision 2.10 entry at 0xfcb81
PCI: Using configuration type 1
PCI: Probing PCI hardware
...
Uniform Multi-Platform E-IDE driver Revision: 6.30
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX: IDE controller on PCI bus 00 dev 38
PIIX: chipset revision 2
PIIX: not 100% native mode: will probe irqs later
PIIX: neither IDE port enabled (BIOS)
hda: WDC AC21600H, ATA DISK drive
hdc: BCD-16X 1997-03-25, ATAPI CDROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: WDC AC21600H, 1549MB w/128kB Cache, CHS=787/64/63
...
Partition check:
hda: hda1 hda2 hda3
VFS: Mounted root (ext2 filesystem) readonly.
...

BIOS DOES identify the hard disk and the CD-ROM correctly, although it is pretty old and no newer version is available. hdparm -d1 returns:
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma = 0 (off)
hdparm -I:
/dev/hda:

Model=DW CCA1206H0 , FwRev=420.P980,
SerialNo=DWW-3M63
Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
RawCHS=3148/16/63, TrkSize=57600, SectSize=600, ECCbytes=22
BuffType=3(DualPortCache), BuffSize=128kB, MaxMultSect=16, MultSect=16
DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=0(slow)
CurCHS=3148/16/63, CurSects=3173184, LBA=yes, LBAsects=3173184
DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=0(slow)
CurCHS=3148/16/63, CurSects=3173184, LBA=yes, LBAsects=3173184
tDMA={min:120,rec:120}, DMA modes: mword0 mword1 *mword2
IORDY=on/off, tPIO={min:160,w/IORDY:120}, PIO modes: mode3 mode4

(yesterday I installed hdparm-3.9, now output is in slightly different format, but the same contents). hdparm -v reports dma off. lspci looks fine... hdparm -tT gives 4.8MB/s. I just downloaded a patch by Andre Hedrick for hdparm-3.9a (why 'a', BTW? is it the patch to hdparm-3.9 actually?). Will try it tonight - would that help? I'll rather stop trying to foresee what information is needed here, it is already TOO long, sorry.

Thanks in advance
Guennadi


2000-11-30 16:12:59

by Mike Dresser

[permalink] [raw]
Subject: Re: DMA for triton again...

> computer: Chipset 430FX / Triton / PIIX, disk Western Digital Caviar AC21600H Firmware code F6 (no UDMA, some WD docs show DMA mw2, some PIO4...), kernel 2.2.17 with ide patch and PIIX enabled, DMA by default, generic DMA, and couple others. Did not try 'bad DMA-firmware (EXPERIMENTAL)'. dmesg (relevant - in my view - lines):
> BIOS DOES identify the hard disk and the CD-ROM correctly, although it is pretty old and no newer version is available.

Running a basically similar system here, DataExpert 8551, with a modified Award (was originally an ami) bios from http://exp8551.mypage.org.
Chipset is a 430FX, Same hard drive as what you have. Pentium 133, 48 meg ram. Kernel 2.2.17 with raid patch, and ide patch. Shares the ide cable with a WDC 850 meg drive as slave.

monitor:~# hdparm -d1 /dev/hda

/dev/hda:
setting using_dma to 1 (on)
using_dma = 1 (on)

> hdparm -d1 returns:
> /dev/hda:
> setting using_dma to 1 (on)
> HDIO_SET_DMA failed: Operation not permitted
> using_dma = 0 (off)
>

/dev/hda:

Model=WDC AC21600H, FwRev=24.09P07, SerialNo=WD-WM3362938634
Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
RawCHS=3148/16/63, TrkSize=57600, SectSize=600, ECCbytes=22
BuffType=DualPortCache, BuffSize=128kB, MaxMultSect=16, MultSect=off
CurCHS=3148/16/63, CurSects=3173184, LBA=yes, LBAsects=3173184
IORDY=on/off, tPIO={min:160,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 *mdma2

so my firmware is actually one version older than yours, and allows me to set DMA. And has the associated speed increase/lower cpu

> Model=DW CCA1206H0 , FwRev=420.P980,
> SerialNo=DWW-3M63

What brand is your motherboard?

Mike Dresser

2000-11-30 16:30:06

by Guennadi Liakhovetski

[permalink] [raw]
Subject: Re[2]: DMA for triton again...

Thanks!

> Chipset is a 430FX, Same hard drive as what you have. Pentium > 133, 48 meg ram. Kernel 2.2.17 with raid patch, and ide patch.

I don't think I need tha raid patch, do I?

> Shares the ide cable with a WDC 850 meg drive as slave.

No slaves on mine.

> What brand is your motherboard?

Intel Morrison64 (not Morrison32!) aka Advanced/MN (in some sources Advanced/AL). BIOS AMI 1.00.03.CA0 (upgraded to 1.00.04.CA0).

What version of hdparm are you using? By the output it looks like 3.9, patched? Did DMA work from the very beginning? Can you send me a copy of your .config file?

Regards
Guennadi

2000-11-30 16:45:06

by Mike Dresser

[permalink] [raw]
Subject: Re: DMA for triton again...

Guennadi Liakhovetski wrote:

> Thanks!
>
> > Chipset is a 430FX, Same hard drive as what you have. Pentium > 133, 48 meg ram. Kernel 2.2.17 with raid patch, and ide patch.
>
> I don't think I need tha raid patch, do I?

No, its just left overs from my playing with a Promise Ultra/66 card. Even without the raid and ide patches, i can use DMA

> Intel Morrison64 (not Morrison32!) aka Advanced/MN (in some sources Advanced/AL). BIOS AMI 1.00.03.CA0 (upgraded to 1.00.04.CA0).
>

Opposite side of the spectrum from the utter crap this DataExpert is. =) Had to get a modified bios, to get a 13.6 gig to exist in the machine without locking it up
on the POST. Yes, you can tell it no bios, but without the ide patches, it's _very_ slow.

> What version of hdparm are you using? By the output it looks like 3.9, patched? Did DMA work from the very beginning? Can you send me a copy of your .config file?

standard hdparm 3.9, from debian woody. The difference is i used -i, instead of -I, i think. I'll see how mangled my .config is.
Looks somewhat clean, a few modules i don't use. I'll send it in a seperate email.

I've got maybe 3 or 4 of these machines in service as backup servers for small lans. Small 1.6 gig boot drive, 13.6 gig data drive, a cdrom, and a IDE 7/14 gig HP
tape drive. Speeds aren't too bad, and DMA seems to work on the parts that support it.


2000-11-30 17:18:28

by Guennadi Liakhovetski

[permalink] [raw]
Subject: Re[2]: DMA for triton again...

> I'll see how mangled my .config is.
> Looks somewhat clean, a few modules i don't use. I'll send it in a > seperate email.

Thanks a lot, Mike! I can see couple of differences already, will try tonight... and will let you know tomorrow...

Cheers
Guennadi

2000-12-01 14:58:30

by Mike Dresser

[permalink] [raw]
Subject: Re: DMA for triton again...

You're going to get a chuckle out of this one, i think. I was using my main fileserver at home(different box from
the ones we're talking about)last night, and figured i'd poke around, do some speed benchmarks for the hell of it. At
one point months, i had everything running in DMA mode, drives are doing 20ish meg a second transfers. Had to replace
my EDO 128 meg dimm with a 32 meg SDRAM stick, because quite frankly, EDO dimms suck at 100fsb. :P So anyways, i
check, and lo and behold, my system is running all the drives in non-DMA mode. THE HORROR! I was wondering why the
network sucked :) So i do some poking around.. Dumped the IDE patches, didn't make a difference. Put the ide patches
back in, started playing in the bios. Finally fixed it. I was getting the same operation not permitted, that you
were,until i got that bios setting. My mission tonight will be to find which one it was =) The weird part is that
this is a 591 Apollo Pro chipset, not the FX. But it's making me wonder if it's something similar in your bios!
I know it wasn't the actual UDMA setting in the bios, i'm wondering what it was though. I'll put a keyboard on it,
and poke around tonight or this weekend.


Guennadi Liakhovetski wrote:

> > I'll see how mangled my .config is.
> > Looks somewhat clean, a few modules i don't use. I'll send it in a > seperate email.
>
> Thanks a lot, Mike! I can see couple of differences already, will try tonight... and will let you know tomorrow...
>
> Cheers
> Guennadi
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> Please read the FAQ at http://www.tux.org/lkml/