From: Albert Lee <albertcc@tw.ibm.com>
To: John Williams <john@pond-weed.com>
Cc: linux-ide@vger.kernel.org
Subject: Re: Failed to set xfermode on LITE-ON LTR-40125S
Date: Fri, 26 Jan 2007 11:50:11 +0800 [thread overview]
Message-ID: <45B97A73.6050703@tw.ibm.com> (raw)
In-Reply-To: <20070125201750.2adbd57c@buffy.scoobygang>
John Williams wrote:
> Hello,
>
> I just tried the libata support for PATA in kernel 2.6.20-rc5 and I got
> this:
>
> scsi1 : pata_sis
> ata2.00: ATAPI, max UDMA/66
> ata2.01: ATAPI, max UDMA/33
> ata2.00: configured for UDMA/33
> ata2.01: qc timeout (cmd 0xef)
> ata2.01: failed to set xfermode (err_mask=0x4)
> ata2.01: limiting speed to UDMA/25
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: configured for UDMA/33
> ata2.01: qc timeout (cmd 0xef)
> ata2.01: failed to set xfermode (err_mask=0x4)
> ata2.01: limiting speed to PIO0
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: configured for UDMA/33
> ata2.01: qc timeout (cmd 0xef)
> ata2.01: failed to set xfermode (err_mask=0x4)
> ata2.01: disabled
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: failed to set xfermode (err_mask=0x40)
> ata2.00: limiting speed to UDMA/25
> ata2: failed to recover some devices, retrying in 5 secs
> ata2.00: configured for UDMA/25
>
> The offending device is a LITE-ON LTR-40125S CDRW attached to SIS 513
> IDE (rev d0)
>
> I found a patch here:
> http://readlist.com/lists/vger.kernel.org/linux-kernel/45/228948.html
> which cures the problem for me. Is this the recommended patch for this
> problem? If not, I would be happy to test alternative solutions.
>
Tejun fixed the problem by ATA_FLAG_SETXFER_POLLING for pata_via.
Maybe the same fix works for pata_sis.
Could you please try the attached patch, thanks.
--
albert
--- linux-2.6.20-rc5-mod/drivers/ata/pata_sis.c~ 2007-01-23 11:47:40.000000000 +0800
+++ linux-2.6.20-rc5-mod/drivers/ata/pata_sis.c 2007-01-26 11:43:54.000000000 +0800
@@ -718,7 +718,7 @@ static const struct ata_port_operations
static struct ata_port_info sis_info = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.mwdma_mask = 0x07,
.udma_mask = 0,
@@ -726,7 +726,7 @@ static struct ata_port_info sis_info = {
};
static struct ata_port_info sis_info33 = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.mwdma_mask = 0x07,
.udma_mask = ATA_UDMA2, /* UDMA 33 */
@@ -734,35 +734,35 @@ static struct ata_port_info sis_info33 =
};
static struct ata_port_info sis_info66 = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.udma_mask = ATA_UDMA4, /* UDMA 66 */
.port_ops = &sis_66_ops,
};
static struct ata_port_info sis_info100 = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.udma_mask = ATA_UDMA5,
.port_ops = &sis_100_ops,
};
static struct ata_port_info sis_info100_early = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.udma_mask = ATA_UDMA5,
.pio_mask = 0x1f, /* pio0-4 */
.port_ops = &sis_66_ops,
};
static struct ata_port_info sis_info133 = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.udma_mask = ATA_UDMA6,
.port_ops = &sis_133_ops,
};
static struct ata_port_info sis_info133_early = {
.sht = &sis_sht,
- .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST,
+ .flags = ATA_FLAG_SLAVE_POSS | ATA_FLAG_SRST | ATA_FLAG_SETXFER_POLLING,
.pio_mask = 0x1f, /* pio0-4 */
.udma_mask = ATA_UDMA6,
.port_ops = &sis_133_early_ops,
next prev parent reply other threads:[~2007-01-26 3:50 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-25 20:17 Failed to set xfermode on LITE-ON LTR-40125S John Williams
2007-01-26 3:50 ` Albert Lee [this message]
2007-01-26 8:15 ` John Williams
2007-01-26 11:33 ` Alan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=45B97A73.6050703@tw.ibm.com \
--to=albertcc@tw.ibm.com \
--cc=albertl@mail.com \
--cc=john@pond-weed.com \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).