David Madsen wrote:
> Yes, I patched the 2.6.22.1 vanilla kernel with the libata patch from here.
>
> http://home-tj.org/files/libata-tj-stable/libata-tj-2.6.22.1-20070803.tar.bz2
Hmmm... Can you please apply the attached patch on top of libata-tj and
report the kernel boot log?
--
tejun
---
drivers/ata/ahci.c | 5 ++++-
drivers/ata/libata-core.c | 6 +++---
2 files changed, 7 insertions(+), 4 deletions(-)
Index: work/drivers/ata/libata-core.c
===================================================================
--- work.orig/drivers/ata/libata-core.c
+++ work/drivers/ata/libata-core.c
@@ -691,17 +691,17 @@ unsigned int ata_dev_classify(const stru
* identifies a port multiplier and 0x3c/0xc3 a SEMB device.
*/
if ((tf->lbam == 0) && (tf->lbah == 0)) {
- DPRINTK("found ATA device by sig\n");
+ printk("found ATA device by sig\n");
return ATA_DEV_ATA;
}
if ((tf->lbam == 0x14) && (tf->lbah == 0xeb)) {
- DPRINTK("found ATAPI device by sig\n");
+ printk("found ATAPI device by sig\n");
return ATA_DEV_ATAPI;
}
if ((tf->lbam == 0x69) && (tf->lbah == 0x96)) {
- DPRINTK("found PMP device by sig\n");
+ printk("found PMP device by sig\n");
return ATA_DEV_PMP;
}
Index: work/drivers/ata/ahci.c
===================================================================
--- work.orig/drivers/ata/ahci.c
+++ work/drivers/ata/ahci.c
@@ -972,6 +972,9 @@ static unsigned int ahci_dev_classify(st
tf.lbal = (tmp >> 8) & 0xff;
tf.nsect = (tmp) & 0xff;
+ ata_port_printk(ap, KERN_INFO, "XXX sig %02x:%02x:%02x %02x\n",
+ tf.lbal, tf.lbam, tf.lbah, tf.nsect);
+
return ata_dev_classify(&tf);
}
@@ -1072,7 +1075,7 @@ static int ahci_do_softreset(struct ata_
struct ata_taskfile tf;
int rc;
- DPRINTK("ENTER\n");
+ ata_link_printk(link, KERN_INFO, "XXX softresetting pmp=%d\n", pmp);
if (ata_link_offline(link)) {
DPRINTK("PHY reports no device\n");