From: "Zhang, Yanmin" <yanmin_zhang@linux.intel.com>
To: linux-hotplug@vger.kernel.org
Subject: Re: Questions on PCI express AER support in HBA driver
Date: Tue, 23 Jan 2007 01:40:45 +0000 [thread overview]
Message-ID: <1169516445.15989.294.camel@ymzhang> (raw)
In-Reply-To: <a02278b00701220559r76baa6d5o3e25db5c601ea9d5@mail.gmail.com>
On Mon, 2007-01-22 at 05:59 -0800, Allexio Ju wrote:
> On 1/21/07, Zhang, Yanmin <yanmin_zhang@linux.intel.com> wrote:
> > > >From the document "The PCI Express AER Driver Guide" that you wrote,
> > > I've got an impression that SCSI LLD driver needs to have
> > > (*link_reset). Isn't this callback also required if the driver
> > > supports PCIe AER?
> > link_reset was deleted in my final AER patch. My objective is
> > to keep the callbacks simple, so driver developers are willing to
> > add AER support.
> >
> > Linas said he would remove it from the definition of pci_error_handlers
> > only after a long time that noboday really uses it.
> So, instead of having (*reset_link) in pcie_port_service_driver
> structure, I just need (*link_reset) in pci_error_handler structure to
> support PCIe AER. Is this correct understanding?
Sorry, the definition names are confusing which I tried to avoid.
1) pcie_port_service_driver is service driver of port, not end-point devices.
SCSI LLD driver should be end-point devices, so you needn't use reset_link
in pcie_port_service_driver.
2) (*link_reset) in pci_error_handler structure was obsolete. Pls. don't use it
at all. Originally, this callback was to tell driver that a pci express link was
reset. Its problem is error_detected might return PCI_ERS_RESULT_NEED_RESET also
which means next recovery step is slot_reset. In addition, I want to keep the
error recovery steps simple, so driver developers are happy to add callbacks in
drivers. Another reason is the specific driver should be compatible for pci and
pci-express together. If we use link_reset in pci_error_handler, the codes might
be not compatible.
Typically, the callbacks in pci-e (or just pci) drivers could be:
1) pci_ers_result_t (*error_detected)(struct pci_dev *dev,
enum pci_channel_state error);
2) pci_ers_result_t (*slot_reset)(struct pci_dev *dev);
3) void (*resume)(struct pci_dev *dev);
Thanks,
Yanmin
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CIDÞVDEV
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2007-01-23 1:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-22 13:59 Questions on PCI express AER support in HBA driver Allexio Ju
2007-01-23 1:40 ` Zhang, Yanmin [this message]
2007-01-23 3:27 ` Allexio Ju
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=1169516445.15989.294.camel@ymzhang \
--to=yanmin_zhang@linux.intel.com \
--cc=linux-hotplug@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).