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");