From: Tejun Heo <tj@kernel.org>
To: "Cengiz Günay" <cgunay@emory.edu>
Cc: Robert Hancock <hancockrwd@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>
Subject: Re: sata_nv times out for BD-ROM iHOS104-08
Date: Tue, 25 May 2010 21:34:26 +0200 [thread overview]
Message-ID: <4BFC2642.1050600@kernel.org> (raw)
In-Reply-To: <d2d378041003082118x50a2c1b4t700e5a8ebfabbd9c@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 672 bytes --]
Hello,
Alright, I don't have access to mcp51 but tested with mcp55 and could
reproduce similar problem. It seems nIEN on mcp55 is stuck once set
and iHOS104 doesn't set I on D2H FIS if nIEN is set on command H2D
FIS, which the SATA standard specifically mandates not to do. So, the
combination of buggy mcp55 ctl handling + buggy iHOS104 nIEN handling
leads to nobody raising interrupt.
The problem is that the problem I'm seeing is not completely identical
to the one you're seeing. The difference could be coming from
different firmware version on the drives or different controllers.
Anyways, can you please give a shot at the attached patch?
Thanks.
--
tejun
[-- Attachment #2: dont-diddle-with-nIEN.patch --]
[-- Type: text/x-patch, Size: 717 bytes --]
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c
index baa8f0d..69d23c2 100644
--- a/drivers/ata/sata_nv.c
+++ b/drivers/ata/sata_nv.c
@@ -1669,7 +1669,6 @@ static void nv_mcp55_freeze(struct ata_port *ap)
mask = readl(mmio_base + NV_INT_ENABLE_MCP55);
mask &= ~(NV_INT_ALL_MCP55 << shift);
writel(mask, mmio_base + NV_INT_ENABLE_MCP55);
- ata_sff_freeze(ap);
}
static void nv_mcp55_thaw(struct ata_port *ap)
@@ -1683,7 +1682,6 @@ static void nv_mcp55_thaw(struct ata_port *ap)
mask = readl(mmio_base + NV_INT_ENABLE_MCP55);
mask |= (NV_INT_MASK_MCP55 << shift);
writel(mask, mmio_base + NV_INT_ENABLE_MCP55);
- ata_sff_thaw(ap);
}
static void nv_adma_error_handler(struct ata_port *ap)
next prev parent reply other threads:[~2010-05-25 19:34 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-22 16:07 sata_nv times out for BD-ROM iHOS104-08 Cengiz Gunay
2009-12-23 7:38 ` Tejun Heo
[not found] ` <d2d378040912232302u4b550dap687fcadced237935@mail.gmail.com>
2009-12-24 7:25 ` Tejun Heo
2010-01-16 21:34 ` Cengiz Günay
2010-01-17 15:28 ` Ozan Çağlayan
2010-01-19 9:05 ` Tejun Heo
2010-01-19 9:34 ` Ozan Çağlayan
2010-01-20 2:13 ` Tejun Heo
2010-01-20 2:59 ` Robert Hancock
2010-01-22 14:11 ` Cengiz Günay
2010-01-23 3:45 ` Tejun Heo
2010-01-23 21:39 ` Cengiz Günay
[not found] ` <4B67A149.10406@kernel.org>
2010-02-17 16:14 ` Cengiz Günay
2010-02-18 1:50 ` Tejun Heo
2010-02-20 19:11 ` Cengiz Günay
2010-02-21 1:01 ` Tejun Heo
2010-02-21 21:28 ` Cengiz Günay
2010-02-23 2:38 ` Tejun Heo
2010-02-28 17:24 ` Cengiz Günay
2010-03-02 11:48 ` Tejun Heo
2010-03-08 19:17 ` Cengiz Günay
2010-03-08 23:46 ` Robert Hancock
2010-03-09 1:21 ` Tejun Heo
2010-03-09 5:18 ` Cengiz Günay
2010-05-25 19:34 ` Tejun Heo [this message]
-- strict thread matches above, loose matches on Subject: below --
2010-01-17 4:54 Gregory Moyer
2010-01-21 3:15 Gregory Moyer
2010-06-03 17:40 Gregory Moyer
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=4BFC2642.1050600@kernel.org \
--to=tj@kernel.org \
--cc=cgunay@emory.edu \
--cc=hancockrwd@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@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).