[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

DMA problems with TOSHIBA DVD-ROM SD-M1202 (kernel 2.6.10)



Hi,

I have a problem with DMA failing and _automatically_ switching off for my old Toshiba DVD-ROM. I was having problems with choppy DVD playback, so i tried enabling DMA for the drive, which seemed to succeed, but actually it does not work.

So, after a boot:

$ uname -r
2.6.10-1-k7
$ cat /proc/ide/hdd/model
TOSHIBA DVD-ROM SD-M1202
# hdparm /dev/hdd

/dev/hdd:
 IO_support   =  1 (32-bit)
 unmaskirq    =  1 (on)
 using_dma    =  1 (on)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 HDIO_GETGEO failed: Invalid argument

  Here I run oKle and load the disk, after which
  disk activity LED stays on for a couple of minutes
  during which system sticks three  times for
  a couple of seconds (music, mouse stops) and I get
  the following from dmesg:

hdd: status error: status=0x58 { DriveReady SeekComplete DataRequest }
hdd: status error: error=0x00
hdd: drive not ready for command
ide-cd: cmd 0x28 timed out
hdd: DMA timeout retry
hdd: timeout waiting for DMA
hdd: status timeout: status=0xd0 { Busy }
hdd: status timeout: error=0x04Aborted Command
hdd: drive not ready for command
hdd: ATAPI reset complete
hdd: command error: status=0x51 { DriveReady SeekComplete Error }
hdd: command error: error=0x52
ide: failed opcode was 100
end_request: I/O error, dev hdd, sector 18446744073707947640
Buffer I/O error on device hdd, logical block 0
hdd: command error: status=0x51 { DriveReady SeekComplete Error }
hdd: command error: error=0x52
ide: failed opcode was 100
end_request: I/O error, dev hdd, sector 18446744073707947648
Buffer I/O error on device hdd, logical block 1
hdd: command error: status=0x51 { DriveReady SeekComplete Error }
hdd: command error: error=0x52
ide: failed opcode was 100
end_request: I/O error, dev hdd, sector 18446744073707947656
Buffer I/O error on device hdd, logical block 2


With the last 5 lines repeated quite many times for different sectors/blocks.

The funny thing is that now

# hdparm /dev/hdd

/dev/hdd:
 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

And if I try to enable DMA again, I succeed, but when I try to use the device, I get the temporary lockup, after which it reverts DMA to off, and starts working (but too slow for me).

Apparently the DVD reads OK (I was able to rip my DVD and watch it from my hard drive), but is quite useless for playback without DMA.

Any hints?

Regards,

Andro



Reply to: