ICH6M SATA and poor optical drive performance
Øyvind Stegard
oyvinst at ifi.uio.no
Sat Dec 10 00:03:32 UTC 2005
On Friday 09 December 2005 23:41, Christopher J. Bottaro wrote:
> I have a Dell Inspiron 6000d which has a SATA hard disk and PATA optical
> drive. The performance for the hard disk is good, but the optical drive's
> performance is very poor, I can't turn on DMA.
>
> I used a kernel patch that got both drives working well, but it caused my
> kernel to be unstable (random lock ups). Here is a discussion of the
> patch:
> http://www.math.ucla.edu/~jimc/insp6000/p-disc.html#cd
>
> I searched the web more and found a discussion on the kernel parameter
> atapi_enabled=1, but that didn't work for me either.
> http://comments.gmane.org/gmane.linux.kernel/351063
>
> This is the kernel I'm using:
> kernel-2.6.12-1.1381_FC3
>
> Any advice, tips or hints? Thank you.
Yeah, use a newer kernel. I've got the same setup in my laptop (ICH6M SATA controller)
and I've got my optical drive recognized as a SCSI device, with full performance.
I use 2.6.14.3-vanilla w/a couple of patches applied. Here's the patch
I use to enable ATAPI in the libata-driver:
diff -uNr linux-2.6.14-rc5/drivers/scsi/libata-core.c linux-2.6.14-rc5.libata_pata/drivers/scsi/libata-core.c
--- linux-2.6.14-rc5/drivers/scsi/libata-core.c 2005-10-20 14:39:45.000000000 +0200
+++ linux-2.6.14-rc5.libata_pata/drivers/scsi/libata-core.c 2005-10-20 14:41:52.000000000 +0200
@@ -75,7 +75,7 @@
static unsigned int ata_unique_id = 1;
static struct workqueue_struct *ata_wq;
-int atapi_enabled = 0;
+int atapi_enabled = 1;
module_param(atapi_enabled, int, 0444);
MODULE_PARM_DESC(atapi_enabled, "Enable discovery of ATAPI devices (0=off, 1=on)");
diff -uNr linux-2.6.14-rc5/include/linux/libata.h linux-2.6.14-rc5.libata_pata/include/linux/libata.h
--- linux-2.6.14-rc5/include/linux/libata.h 2005-10-20 14:39:49.000000000 +0200
+++ linux-2.6.14-rc5.libata_pata/include/linux/libata.h 2005-10-20 14:41:38.000000000 +0200
@@ -40,7 +40,7 @@
#undef ATA_VERBOSE_DEBUG /* yet more debugging output */
#undef ATA_IRQ_TRAP /* define to ack screaming irqs */
#undef ATA_NDEBUG /* define to disable quick runtime checks */
-#undef ATA_ENABLE_PATA /* define to enable PATA support in some
+#define ATA_ENABLE_PATA /* define to enable PATA support in some
* low-level drivers */
#undef ATAPI_ENABLE_DMADIR /* enables ATAPI DMADIR bridge support */
It applies nicely to 2.6.14.3. I've _never_ had any lock ups with this, but,
of course, I cannot guarantee any thing. I'd backup my data before playing
with these things.
Øyvind
--
< Øyvind Stegard < oyvinst at ifi uio no >
< http://www.oyvind.nu/
< `Lottery: A tax on people who are bad at math.'
More information about the fedora-list
mailing list