From: Jeff Garzik <jgarzik@pobox.com>
To: Andy Warner <andyw@pobox.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>,
linux-ide@vger.kernel.org
Subject: Re: libata oops 2.6.11-rc4 yesterdays BK
Date: Thu, 17 Feb 2005 17:36:53 -0500 [thread overview]
Message-ID: <42151C85.4000304@pobox.com> (raw)
In-Reply-To: <20050217132500.N10699@florence.linkmargin.com>
Andy Warner wrote:
> Jeff Garzik wrote:
>
>>[...]
>>AHCI is the first scenario where PIO-via-DMA could be utilized in an
>>efficient manner. The upcoming SiI 3124 is another. A few others
>>(ADMA, Marvell) are PIO-via-DMA controllers as well. I agree this is a
>>good thing.
>
>
> I _think_ the SATA-II stuff from Promise (20579) does this too.
I don't see it in the docs. The only possibility is that the "none
data" bit in the Packet format now implies that ATA (rather than just
ATAPI) PIO packets are accepted.
It's probably a side effect of Promise having avoided doing a strictly
FIS-based engine like AHCI.
More likely you're still stuck with the error-prone method of submitting
an outrageously long packet containing 256 writes to the Data register,
followed by a microcoded check for BSY and DRQ.
>>Anyway, getting back to the thread of "problems with PIO polling", I am
>>wondering if -- due to SATA's nature -- PIO polling should be avoided,
>>and interrupt-driven methodology used instead.
>>
>>One reason why PIO polling was chosen (for controllers that support it;
>>AHCI does not) is that the entire command submission/processing code can
>>be written inline: just submit-command, wait-for-busy-clear, etc.
>>Makes the code less complex.
>
>
> I think going interrupt driven would be a good idea. Of course
> when I tried it one chip didn't serve up the interrupt as expected
> (can't remember is it was the 3114 or the 20319 - would have to
> check my notes.) I don't think it is massively more complex than
> what we currently have, and quite possibly might be simpler.
Yeah, I'm leaning towards ditching polling in favor of interrupts. If
we did that, it would probably be easier to do PIO-Mult.
But... no time right now. Anyone reading this message is welcome to
take up the challenge. libata API supports this change seamlessly, it's
just a matter of changing the internals.
Jeff
next prev parent reply other threads:[~2005-02-17 22:37 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-16 4:28 libata oops 2.6.11-rc4 yesterdays BK Brad Campbell
2005-02-16 11:01 ` Brad Campbell
2005-02-16 17:25 ` Jeff Garzik
2005-02-16 20:54 ` Brad Campbell
2005-02-16 21:40 ` Andy Warner
2005-02-16 22:47 ` Jeff Garzik
2005-02-16 23:49 ` Andy Warner
2005-02-16 23:58 ` Jeff Garzik
2005-02-17 0:20 ` Andy Warner
2005-02-17 5:08 ` Jeff Garzik
2005-02-17 14:59 ` Andy Warner
2005-02-17 19:13 ` Jeff Garzik
2005-02-17 19:25 ` Andy Warner
2005-02-17 22:36 ` Jeff Garzik [this message]
2005-02-17 19:42 ` Which SATA Combos To Consider? Danny Cox
2005-02-17 20:55 ` Jeff Garzik
2005-02-18 0:25 ` Ryan Bourgeois
2005-02-18 0:44 ` Johny Ågotnes
2005-02-18 0:52 ` Jeff Garzik
2005-02-21 23:50 ` Johny Ågotnes
2005-02-21 23:50 ` Johny Ågotnes
2005-02-22 1:55 ` Johny Ågotnes
2005-02-18 6:13 ` libata oops 2.6.11-rc4 yesterdays BK Brad Campbell
2005-02-19 4:14 ` Brad Campbell
2005-02-21 4:27 ` Brad Campbell
2005-02-22 10:09 ` Brad Campbell
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=42151C85.4000304@pobox.com \
--to=jgarzik@pobox.com \
--cc=B.Zolnierkiewicz@elka.pw.edu.pl \
--cc=andyw@pobox.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).