Scharf Yuval wrote:

On Mon, 9 Feb 2004, Kevin Hanson wrote:



Scharf Yuval wrote:



Hello,

In a computer with a disk capable of DMA.

hdparm -i /dev/hda returns:
/dev/hda:

Model=Maxtor 6E040L0, FwRev=NAR61590, SerialNo=E13CFB3E
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=17475/15/63, CurSects=16513875, LBA=yes, LBAsects=80293248
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes:pio0 pio1 pio2 pio3 pio4
DMA modes:mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5 udma6
AdvancedPM=yes: disabled (255) WriteCache=enabled
Drive conforms to: (null):

* signifies the current active mode


but hdparm /dev/hda returns:


/dev/hda:
multcount  =  0 (off)
IO_support =  0 (default 16-bit)
unmaskirq  =  0 (off)
using_dma  =  0 (off)
keepsettings =0 (off)
readonly   =  0 (off)
readahead  = 256 (on)
geometry   = 65535/16/63, sectors = 80293248, start = 0


When I try turning the DMA on using hdparm -d1 /dev/hda I get:


/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma  =  0 (off)

I'm using Linux 2.6 and as much as I can see all the DMA options in the
kernel are turned on. Can someone tell me what is the problem?


Thanks, Yuval Scharf



--
[EMAIL PROTECTED] mailing list






You probably didn't compile in the pci bus master dma support for the
chipset your motherboard has into the kernel.If you just use generic
pci bus-master dma support you usually get this problem.

For example, I have an nforce2 chipset, so I compile in "AMD and NVIDIA
IDE Support".Check for you chipset under the generic DMA bus-master
support tree.

Cheers,
Kevin

--
[EMAIL PROTECTED] mailing list





Thanks kevin, it worked. But I still have two problems.

my /etc/conf.d/hdparm file includes the line:
all_args="-d1"

After rebooting my machine dmesg showed the following lines:
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x84 { DriveStatusError BadCRC }
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x84 { DriveStatusError BadCRC }
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x84 { DriveStatusError BadCRC }
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x84 { DriveStatusError BadCRC }
hdb: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdb: dma_intr: error=0x84 { DriveStatusError BadCRC }
hda: DMA disabled


hdb had the DMA on and hda had DMA off but I had no problem turning it on manually.

Do I have a problem in hdb? what should I do about it?

Why didn't hda start with DMA automatically?

Thanks,
Yuval Scharf









--
[EMAIL PROTECTED] mailing list




I don't think I'm going to be able to help you on that one. What drives do you have? What is hda? What is hdb? Are they older drives?



--
[EMAIL PROTECTED] mailing list



Reply via email to