NOTE: if you do this you are screwing with the kernel innards..... you have been warned... text below stolen and compiled from other places Ok, did a search on the net, since couldn't get my nice shiny new Plextor PX-716SA SATA DVD burner working in linux, but I found a small little modification to a file in the kernel, then had to re-compile it. I just did an 'apt-get install linux-source-2.6.10-8' and had to change the file /usr/src/linux-source-2.6.10-8/include/linux/libata.h and change from #undef ATA_ENABLE_ATAPI to #define ATA_ENABLE_ATAPI And now it works just great. Update for Linux 2.6.14: The enabling of ATAPI support in libata has been moved since 2.6.13. There's no symbol ATA_ENABLE_ATAPI, but there's a module parameter, atapi_enabled (default value 0, optional value 1). Here's an extract from ChangeLog-2.6.14: ATAPI is getting close to being ready. To increase exposure, we enable the code in the upstream kernel, but default it to off (present behavior). Users must pass atapi_enabled=1 as a module option (if module) or on the kernel command line (if built in) to turn on discovery of their ATAPI devices. So far as I can tell, however, the mechanism of setting atapi_enabled=1 on the kernel command line is broken or non-existent. My CD-ROM was not detected: I had to edit drivers/scsi/libata-core.c in the Linux source tree and change int atapi_enabled = 0 to int atapi_enabled = 1.