Re: PROBLEM: (libata) cdrom drive not detected in -mm series

From: Tejun Heo
Date: Tue Sep 12 2006 - 03:39:14 EST


Nelson A. de Oliveira wrote:
Hi!

My USB CD-ROM drive (that is detected as a SCSI drive) is not being
detected on the -mm series of the Kernel.

s/USB/SATA/, I presume.

[--snip--]
-ata2.00: ATAPI, max UDMA/33
-ata2.00: configured for UDMA/33
- Vendor: HL-DT-ST Model: CDRW/DVD GCC4244 Rev: B101
- Type: CD-ROM ANSI SCSI revision: 05

Argh... yet another PCS problem. With whole -mm applied, does adding kernel parameter 'ata_piix.force_pcs=1' make any difference?

Please provide the following info.

* the result of 'lspci -nvvv'

* dmesg output with the attached patch applied (on top of -mm).

Thanks.

--
tejun
diff --git a/drivers/ata/ata_piix.c b/drivers/ata/ata_piix.c
index 22b2dba..53a19fd 100644
--- a/drivers/ata/ata_piix.c
+++ b/drivers/ata/ata_piix.c
@@ -560,7 +560,7 @@ static unsigned int piix_sata_present_ma
u16 pcs;

pci_read_config_word(pdev, ICH5_PCS, &pcs);
- DPRINTK("ata%u: ENTER, pcs=0x%x base=%d\n", ap->id, pcs, base);
+ printk(KERN_INFO "ata%u: ENTER, pcs=0x%x base=%d\n", ap->id, pcs, base);

for (i = 0; i < 2; i++) {
port = map[base + i];
@@ -571,7 +571,7 @@ static unsigned int piix_sata_present_ma
present_mask |= 1 << i;
}

- DPRINTK("ata%u: LEAVE, pcs=0x%x present_mask=0x%x\n",
+ printk(KERN_INFO "ata%u: LEAVE, pcs=0x%x present_mask=0x%x\n",
ap->id, pcs, present_mask);

return present_mask;