From: Jeff Garzik <jgarzik@pobox.com>
To: Miquel van Smoorenburg <miquels@cistron.nl>
Cc: linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org,
Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Subject: Re: ata_piix and combined mode
Date: Mon, 22 Mar 2004 13:15:40 -0500 [thread overview]
Message-ID: <405F2D4C.9010506@pobox.com> (raw)
In-Reply-To: <405F2B2E.6080001@pobox.com>
Jeff Garzik wrote:
> c) hardware pretends that SATA0/1 are master/slave.
> This last introduces nastiness into most drivers, since sata
> is _really_ point-to-point. Faking non-PTP this way leads
> to a disconnect, because you must now map master to
> port 0 or 1, and slave to the other port (yes ordering
> is dynamic too).
Just to be more clear, the assignment (routing) of PATA and SATA ports
on the ICH5 too dynamic for its own good. You must deal with
* PATA and SATA on separate PCI devices (as it should be)
* PATA and SATA on the same PCI device, where
c0 == pata0 master (master), pata1 master (slave)
c1 == sata0 (master), sata1 (master)
or
c0 == pata0 master (master), pata1 master (slave)
c1 == sata1 (master), sata0 (master)
the ICH6 follows the horror of combined mode, where c0 or c1 might be
sata ports 0/2 or 1/3 (it has 4 sata ports rather than ICH5's 2). and
PATA might be c0 or c1.
(c0 == ata channel zero, c1 == ata channel one)
Sigh.
Although not with libata, with other drivers I belive that combined mode
is fundamentally flawed. Pretending a SATA device is a PATA device
eliminates SATA-specific knowledge, such as avoiding soft-reset (SRST)
on certain SATA devices, since they will lock up on probe.
I always recommend that users avoid combined mode when their
configuration permits.
Jeff
prev parent reply other threads:[~2004-03-22 18:15 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20040322132336.GA12460@cistron.nl>
2004-03-22 18:06 ` ata_piix and combined mode Jeff Garzik
2004-03-22 18:15 ` 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=405F2D4C.9010506@pobox.com \
--to=jgarzik@pobox.com \
--cc=B.Zolnierkiewicz@elka.pw.edu.pl \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=miquels@cistron.nl \
/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).