linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Luo Dislo <dislo_b_j@yahoo.com.tw>
Cc: jgarzik@pobox.com, linux-ide@vger.kernel.org
Subject: Re: AHCI support Port Multiplier problem.
Date: Tue, 11 Jan 2011 15:37:26 +0100	[thread overview]
Message-ID: <20110111143726.GE30607@htj.dyndns.org> (raw)
In-Reply-To: <55871.3142.qm@web74203.mail.tp2.yahoo.com>

Hi,

On Mon, Jan 10, 2011 at 09:46:45AM +0800, Luo Dislo wrote:
> This is my company(Faraday) implemented AHCI SATA controller. Our 
> controller is not located at PCI bus, but AHB bus(ARM based platform).
> 
> However, I modify Linux kernel builtin AHCI driver(ahci.c) to replace
> the PCI related code by using platform bus. Just pretty similar way 
> with drivers/ata/ahci_platform.c (Kernel 2.6.35).
> 
> I think the problem happens because libata does not give up, keep on 
> expecting the Port Multiplier Signature when we set CONFIG_SATA_PMP 
> to 1. 
> 
> I know how to fix this problem, just add AHCI_HFLAG_NO_PMP to
> AHCI_HFLAGS when I connect hard drive to the controller. Meanwhile,
> when I want to connect the Port Muliplier to my controller, I need
> to remove AHCI_HFLAG_NO_PMP from AHCI_HFLAGS.
> 
> I don't think this is a good solution because I have to compile two
> version of my code. It does not make sense. We set CONFIG_SATA_PMP
> to 1 and inside the driver code DOES NOT have AHCI_HFLAG_NO_PMP just
> means that controller support Port Multiplier but the device
> connecting to the port might be others type.

Please take a look at ahci_sb600_softreset() in ahci.c.  The
controller had the same problem.  Preferably, please fix your
controller but as there are more than one controller with this
problem, we probably should implement it as a quirk in libahci.c.

Thanks.

-- 
tejun

  parent reply	other threads:[~2011-01-11 14:37 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-07  2:55 AHCI support Port Multiplier problem Luo Dislo
2011-01-07 21:25 ` Tejun Heo
2011-01-10  1:46   ` Luo Dislo
2011-01-10 15:42     ` Mac Lin
2011-01-11  1:54     ` Robert Hancock
2011-01-11 14:39       ` Tejun Heo
2011-01-11 14:37     ` Tejun Heo [this message]
2011-01-12  1:26       ` Luo Dislo
2011-01-13  8:16       ` Luo Dislo
2011-02-15  7:48       ` Question regarding PORT_IRQ_BAD_PMP (Re: AHCI support Port Multiplier problem.) Mac Lin
2011-02-15  8:55         ` Tejun Heo
2011-02-15  9:50           ` Lin Mac
2011-02-15 10:03             ` Tejun Heo
2011-02-15 10:26               ` Lin Mac
2011-02-15 10:31                 ` Tejun Heo
2011-02-15 13:00                   ` Lin Mac

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=20110111143726.GE30607@htj.dyndns.org \
    --to=tj@kernel.org \
    --cc=dislo_b_j@yahoo.com.tw \
    --cc=jgarzik@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).