From: Harald W. <la...@gn...> - 2003-11-25 11:11:58
|
Hi! I was always annoyed that cdrtools/cdrecord can use the shiny new direct ATAPI DMA with linux-2.6, but cdrecord cannot. This evening I was annoyed enough to dig a bit into the code and make it work. In case you want to use the code, I've put a modified cdrdao-1.1.7 tarball to ftp://ftp.gnumonks.org/pub/patches/cdrdao-1.1.7atapi.tar.bz2 Support for DMA on ATAPI drives with Linux 2.5.x/2.6.x =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D I've done a very quick (and dirty) hack to make cdrdao support DMA cd writi= ng with ATAPI drives and the new 2.5.x / 2.6.x kernels. Please don't tell me = how ugly this hack is, I know it ;) I hope that 'official' direct ATAPI suppor= t=20 will be added to cdrdao soon. What I actually did, was: - untar a clean cdrdao-1.1.7 tarball - rm -rf scslib/* - untar cdrtools-2.01a19.tat.bz2 inside scslib/ - remove everything not needed - copy the 'export/' directory from the original cdrdao-1.1.7/scsilib/export - write a scslib/TARGETS/55export file for the makefile magic - hard-code "ATAPI" to the scg_open() call in ScsiIf-lib.cc It's working now, although some weird features occur from time to time. The system I'm running/testing this is an Apple Powerbook Titanium IV with = a=20 MATSHITA DVD-R UJ-815A drive (flashed with OEM firmware to increase speed). It also works on my dual G4 500 with a plextor PX-W4824A. Both systems running debian testing. Commands to be used: cdrdao write --device ATAPI:0,0 /your/cuefile cdrdao scanbus=20 SCREENSHOT: # ./cdrdao scanbus Cdrdao version 1.1.7 - (C) Andreas Mueller <an...@da...> SCSI interface library - (C) Joerg Schilling Paranoia DAE library - (C) Monty Check http://cdrdao.sourceforge.net/drives.html#dt for current driver table= s. Using libscg version 'schily-0.7' 0,0,0: MATSHITA, DVD-R UJ-815A, D101 -- - Harald Welte <la...@gn...> http://www.gnumonks.org/ =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D Programming is like sex: One mistake and you have to support it your lifeti= me |