Find the answer to your Linux question:
Results 1 to 2 of 2
Hi. I've got an ASUS P4P800 Deluxe Mainboard with Intel ICH5R South Bridge and am unable to enable DMA-modes on my storage-devices: IDE: 1st - master, /dev/hda Harddrive 2nd - ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Mar 2005
    Location
    Nuremberg/Germany
    Posts
    22

    [solved] cannot enable HD DMA-modes


    Hi.

    I've got an ASUS P4P800 Deluxe Mainboard with Intel ICH5R South Bridge
    and am unable to enable DMA-modes on my storage-devices:
    IDE:
    1st - master, /dev/hda Harddrive
    2nd - master, /dev/hdc DVD-Rewriter
    2nd - slave, /dev/hdd DVD-ROM

    S-ATA: /dev/sda Harddrive

    hdparm informations are a little bit confusing for me.
    hdparm -i DEVICE shows DMA as enabled
    hdparm DEVICE says that DMA is deactivated.

    primary IDE-Master
    Code:
    speedy:/home/stephan# hdparm -i /dev/hda
    
    /dev/hda:
    
     Model=Maxtor 6Y080L0, FwRev=YAR41BW0, SerialNo=Y2NN3DCE
     Config={ Fixed }
     RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
     BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=off
     CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=160086528
     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
    
    speedy:/home/stephan# hdparm /dev/hda
    
    /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 = 160086528, start = 0
    SATA-Harddrive (160 GB Samsung)
    Code:
    speedy:/home/stephan# hdparm -i /dev/sda
    
    /dev/sda:
     HDIO_GET_IDENTITY failed: Invalid argument
    speedy:/home/stephan# hdparm /dev/sda
    
    /dev/sda:
     readonly     =  0 (off)
     readahead    = 256 (on)
     geometry     = 19457/255/63, sectors = 312581808, start = 0
    DVD-Writer (sec. IDE-Master)
    Code:
    speedy:/home/stephan# hdparm -i /dev/hdc
    
    /dev/hdc:
    
     Model=HL-DT-ST DVDRAM GSA-4163B, FwRev=A102, SerialNo=K0551KK4452
     Config=&#123; Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic &#125;
     RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
     BuffType=unknown, BuffSize=0kB, MaxMultSect=0
     &#40;maybe&#41;&#58; CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
     IORDY=on/off, tPIO=&#123;min&#58;120,w/IORDY&#58;120&#125;, tDMA=&#123;min&#58;120,rec&#58;120&#125;
     PIO modes&#58;  pio0 pio3 pio4
     DMA modes&#58;  mdma0 mdma1 mdma2
     UDMA modes&#58; udma0 udma1 *udma2
     AdvancedPM=no
     Drive conforms to&#58; device does not report version&#58;
    
     * signifies the current active mode
    
    speedy&#58;/home/stephan# hdparm /dev/hdc
    
    /dev/hdc&#58;
     IO_support   =  0 &#40;default 16-bit&#41;
     unmaskirq    =  0 &#40;off&#41;
     using_dma    =  0 &#40;off&#41;
     keepsettings =  0 &#40;off&#41;
     readonly     =  0 &#40;off&#41;
    DVD-ROM (sec. IDE-Slave)
    Code:
    speedy&#58;/home/stephan# hdparm -i /dev/hdd
    
    /dev/hdd&#58;
    
     Model=_NEC DV-5800C, FwRev=D9S2, SerialNo=
     Config=&#123; Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic &#125;
     RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
     BuffType=unknown, BuffSize=0kB, MaxMultSect=0
     &#40;maybe&#41;&#58; CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
     IORDY=yes, tPIO=&#123;min&#58;227,w/IORDY&#58;120&#125;, tDMA=&#123;min&#58;120,rec&#58;120&#125;
     PIO modes&#58;  pio0 pio1 pio2 pio3 pio4
     DMA modes&#58;  mdma0 mdma1 mdma2
     UDMA modes&#58; udma0 udma1 *udma2
     AdvancedPM=no
     Drive conforms to&#58; device does not report version&#58;
    
     * signifies the current active mode
    
    speedy&#58;/home/stephan# hdparm /dev/hdd
    
    /dev/hdd&#58;
     IO_support   =  0 &#40;default 16-bit&#41;
     unmaskirq    =  0 &#40;off&#41;
     using_dma    =  0 &#40;off&#41;
     keepsettings =  0 &#40;off&#41;
     readonly     =  0 &#40;off&#41;
     readahead    = 256 &#40;on&#41;
     HDIO_GETGEO failed&#58; Invalid argument

    Some Speed tests here:
    Code:
    speedy&#58;/home/stephan# hdparm -tT /dev/hda
    
    /dev/hda&#58;
     Timing cached reads&#58;   4008 MB in  2.00 seconds = 2003.30 MB/sec
     Timing buffered disk reads&#58;   12 MB in  3.44 seconds =   3.48 MB/sec
    
    speedy&#58;/home/stephan# hdparm -tT /dev/sda
    
    /dev/sda&#58;
     Timing cached reads&#58;   4068 MB in  2.00 seconds = 2034.31 MB/sec
     Timing buffered disk reads&#58;  176 MB in  3.02 seconds =  58.19 MB/sec
    
    speedy&#58;/home/stephan# hdparm -tT /dev/hdc
    
    /dev/hdc&#58;
     Timing cached reads&#58;   3988 MB in  2.00 seconds = 1993.31 MB/sec
     Timing buffered disk reads&#58;    6 MB in  3.20 seconds =   1.88 MB/sec
    
    speedy&#58;/home/stephan# hdparm -tT /dev/hdd
    
    /dev/hdd&#58;
     Timing cached reads&#58;   4004 MB in  2.00 seconds = 2001.30 MB/sec
     Timing buffered disk reads&#58;   12 MB in  3.34 seconds =   3.59 MB/sec
    I don't know if the S-ATA drive speed is correct but all the others are far too slow.

    If I try to enable DMA on the cd DVD-Rewriter for example it results in the following error message:
    Code:
    speedy&#58;/usr/src/linux# hdparm -d1 -X udma2 /dev/hdc
    
    /dev/hdc&#58;
     setting using_dma to 1 &#40;on&#41;
     HDIO_SET_DMA failed&#58; Operation not permitted
     setting xfermode to 66 &#40;UltraDMA mode2&#41;
     using_dma    =  0 &#40;off&#41;
    I suppose there's something wrong with the south bridges chipset driver module piix and ata_piix:
    Code:
    speedy&#58;/usr/src/linux# lsmod | grep -E "pii"
    piix                   13824  1
    ide_core              142556  4 piix,ide_generic,ide_disk,ide_cd
    ata_piix                8388  4
    libata                 42116  1 ata_piix
    Thank you very much for any advice,
    Stephan

    P.S.:
    I am running debian sarge with kernel 2.6.8-2 in SMP-mode.

  2. #2
    Just Joined!
    Join Date
    Mar 2005
    Location
    Nuremberg/Germany
    Posts
    22
    Problem is solved by inserting the IDE+SATA chipset drivers first in
    /etc/modules.
    In my case this is
    Code:
    ata_piix
    piix
    ide_.....
    ....
    These modules where loaded anyways but too late.
    By inserting the into /etc/modules kernel will merge them at the right time
    (before loading module ide_generic - that's important).

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •