From: Jeff Garzik <jgarzik@pobox.com>
To: Robert Hancock <hancockrwd@gmail.com>
Cc: Marc C <marc.ceeeee@gmail.com>,
jeff@garzik.org, linux-ide@vger.kernel.org
Subject: Re: [RFC PATCH] AHCI: Workaround for ATAPI on buggy AHCI controller
Date: Sat, 13 Apr 2013 21:21:40 -0400 [thread overview]
Message-ID: <516A04A4.7050709@pobox.com> (raw)
In-Reply-To: <5168E78D.90805@gmail.com>
On 04/13/2013 01:05 AM, Robert Hancock wrote:
> On 04/12/2013 01:34 PM, Marc C wrote:
>> Hello Jeff,
>>
>> I'm working with a proprietary but AHCI-compatible SATA controller
>> that uses
>> the libata driver. Early versions of this controller have issues with
>> processing
>> non-data ATAPI commands. A workaround was identified which requires some
>> register pokes in the command completion path of the driver. I don't
>> expect to
>> push this patch upstream (yet). However, I would like to get some
>> feedback
>> regarding the workaround, and check if the placement of the code is
>> "acceptable"
>> or if there would be a better place to put it.
>>
>> The workaround itself is rather simple: toggle the START bit
>> immediately after a
>> non-data ATAPI command completes. The ST bit toggle would be performed
>> within
>> atomic context in the AHCI port interrupt ISR.
>>
>> Signed-off-by: Marc C <marc.ceeeee@gmail.com>
>
> This should likely be triggered off a host flag like some of the ones
> already in the driver so it can be done just for the affected
> controllers, not unconditionally.
Indeed -- you don't want to punish the non-buggy 99% case for one weird
buggy hardware rev.
See AHCI_HFLAG_xxx
Jeff
prev parent reply other threads:[~2013-04-14 1:21 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-12 19:34 [RFC PATCH] AHCI: Workaround for ATAPI on buggy AHCI controller Marc C
2013-04-12 20:58 ` Robin H. Johnson
2013-04-13 5:05 ` Robert Hancock
2013-04-14 1:21 ` Jeff Garzik [this message]
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=516A04A4.7050709@pobox.com \
--to=jgarzik@pobox.com \
--cc=hancockrwd@gmail.com \
--cc=jeff@garzik.org \
--cc=linux-ide@vger.kernel.org \
--cc=marc.ceeeee@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.