Re: [PATCH] ata_piix: fix pio/mwdma programming (for testing, don't apply)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



(cc'ing Albert, Mark and Sergei.  Hi!)

Art Haas wrote:
> Hi. Sorry to say the CD-ROM is still not found. Full 'dmesg' output
> listed below in hopes it provides clues.

Erggghh.. I'm sorry too.  I thought I found it this time.

> ata_piix 0000:00:07.1: version 2.00ac7
> ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0xF008 irq 15

You have UDMA/33 PATA port.

> ata2.00: ATAPI, max MWDMA1

The initial reset and PACKET_IDENTIFY went well.

> ata2.00: revalidation failed (errno=-2)

Then, PACKET_IDENTIFY after configuring transfer mode fails with
-ENOENT.  Meaning it saw (status & (ATA_BUSY|ATA_DRQ|ATA_ERR|ATA_DF)) ==
0 in HSM_ST.

libata resets silently and tries to revalidate the device.

> ata2.00: limiting speed to PIO4
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: revalidation failed (errno=-2)
> ata2.00: limiting speed to PIO0
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: revalidation failed (errno=-2)
> ata2.00: disabled

All of those tries fail and libata gives up the device.

* Something went wrong with mode programming.  It seems pretty old
(reporting max UDMA/33).  Art, can you post the result of 'lspci -nn'?

* After mode programming, it might need some delay between clearing
ATA_BUSY and setting ATA_DRQ.  Dunno if this is possible.  Just throwing
out thoughts here.

So, PATA gurus, can you bless us with enlightenment?  :-)

-- 
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux