Find the answer to your Linux question:
Results 1 to 3 of 3
I went to burn a dvd today to test out burning in linux and I set it to burn at 8x and was only getting about a .6 average burn ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Dec 2005
    Posts
    54

    DMA for DVD/CD drive not working.


    I went to burn a dvd today to test out burning in linux and I set it to burn at 8x and was only getting about a .6 average burn speed... After 1 hour it was only 50% done. I checked hdparm and saw that dma was off. I tried turning it on but it wont allow it.

    Defualt settings when booted up:
    Code:
    GenLap ~ # hdparm /dev/hdc
    
    /dev/hdc:
     IO_support   =  0 (default 16-bit)
     unmaskirq    =  0 (off)
     using_dma    =  0 (off)
     keepsettings =  0 (off)
     readonly     =  0 (off)
     readahead    = 256 (on)
     HDIO_GETGEO failed: Invalid argument
    Tried to turn on but gave error. Also tried hdparm -d1 –X udma2 /dev/hdc with same results.
    Code:
    GenLap ~ # hdparm -d1 /dev/hdc
    
    /dev/hdc:
     setting using_dma to 1 (on)
     HDIO_SET_DMA failed: Operation not permitted
     using_dma    =  0 (off)
    Output of dmesg. There was another error dmesg gave but I cleared that up by commenting out all_args="-d1" in /etc/conf.d/hdparm. I have a SATA drive and dma setting with hdparm is not needed.
    Code:
    GenLap ~ # dmesg | grep hdc
    hdc: DV-W28EADT, ATAPI CD/DVD-ROM drive
    hdc: ATAPI 24X DVD-ROM DVD-R-RAM CD-R/RW drive, 1419kB Cache
    hdc: drive_cmd: status=0x51 { DriveReady SeekComplete Error }
    hdc: drive_cmd: error=0x04 { AbortedCommand }
    hdc: drive_cmd: status=0x51 { DriveReady SeekComplete Error }
    hdc: drive_cmd: error=0x04 { AbortedCommand }
    The drive itself is fine under windows. It burns at about 6x or so.. mostly due to the crappy program it came with. I can mount CD/DVDs in linux without any problems what so ever, and they read slow but fine.

    Timed readings from a CD:
    Code:
    GenLap mnt # hdparm -tT /dev/hdc
    
    /dev/hdc:
     Timing cached reads:   3788 MB in  2.00 seconds = 1893.34 MB/sec
     Timing buffered disk reads:    6 MB in  4.03 seconds =   1.49 MB/sec
    GenLap mnt # hdparm -tT /dev/hdc
    
    /dev/hdc:
     Timing cached reads:   3824 MB in  2.00 seconds = 1910.38 MB/sec
     Timing buffered disk reads:    6 MB in  4.04 seconds =   1.49 MB/sec
    Detailed Specs on the Drive:http://www.teac.com/DSPD/slim_dvd-rw_drivespecs.html

    Any ideas?

  2. #2
    Just Joined!
    Join Date
    Dec 2005
    Posts
    54
    Ive done a few things that I thought would fix it but so far no such luck. Thus far I have taken off the noapic option I had during bootup which is needed for my 10/100 nic drivers to work. I have recompiled my kernel without
    Device Drivers -> ATA/ATAPI/MFM/RLL -> Generic PCI IDE Chipset Support

    I also tried turning off Generic/default IDE Chipset support but when I do that I lose my dvd drive altogether. Obviously this is needed or I dont have the correct driver loaded for my laptop. In all cases the hdparm still shows dma off and will now allow me to turn it on. Error is the same as first post. Here is the lspci output:
    Code:
    GenLap linux # lspci
    00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03)
    00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
    00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
    00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)
    00:1c.1 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04)
    00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)
    00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)
    00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)
    00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)
    00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)
    00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4)
    00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 04)
    00:1e.3 Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 04)
    00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 04)
    00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 04)
    01:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8036 PCI-E Fast Ethernet Controller (rev 10)
    05:04.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
    05:06.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller
    05:06.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller
    05:06.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller
    05:06.4 Class 0805: Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD) Controller
    GenLap linux #
    There is no other IDE chipset listed other than the SATA controller. I know DVD/CD drives can use the SATA controller but wasnt aware of any models that did make use of that just yet. I am also unable to find any documentation on the laptop that is in any way detailed, nor could I find what interface that DVD drive actually uses.

    Windows XP has the SATA Controller as IDE in its device manager, not suprising really, and has the secondary controller with the dvdrw attached as IDE. The BIOS is well almost noexistant as far as settings go. The laptop is a Toshiba Satellite M45-S359. I am completly out of ideas at this point and welcome any suggestions.

  3. #3
    Just Joined!
    Join Date
    Dec 2005
    Posts
    54
    Well.. I thought I just update this as I seem to have found a answer to my problems although now another issuse has come up.

    I update to 2.6.15 kernel, although i dont think this is entirely neccessary I just wanted to make sure I have the lastest drivers. It also solved another issue of mine with acpi and my NIC. I removed ATA/ATAPI/MFM/RLL support all together then added the standard stuff for my SATA harddrive. After recompiling the kernel I added libata.atapi_enabled=1 to the kernel options during bootup. This allowed my DVD drive which turns out to be in fact a SATA drive to be recognized as such and listed as /dev/sr0. It has a double entry in /dev as /dev/sg1 which xcdroast finds as well. The /dev/sg1 entry shows dma disabled but sg1 isnt even a real block device but the first entry is the real on and it shows dma active. Apparently there is also another work around for dvd drives that are IDE to SATA converted or have this similiar problem which the SATA drive fixes and that is to manually edit /usr/src/linux/include/linux/libata.h and change #undef ATA_ENABLE_PATA to #define ATA_ENABLE_PATA.
    More info can be found at: http://www.thinkwiki.org/wiki/Proble...A_on_DVD_drive
    Although this wiki is geared towards a specific laptop model the steps described worked for me on my toshiba satellite.
    Now I have a new issue with xcdroast and cannot at the moment verify that dvd's burn correctly because I keep getting a error about the cdrecord-prodvd key being wrong, even though its correct. I guess the sata driver is causing this, however cd's burn ok. They start out slow and eventually worked there way up to 13x with a average of 10x speed out of a max of 24x.

    I hope that this thread proves usefull to others.

Posting Permissions

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