[PATCH 2/4] PCI: PCIE AER: export aer_irq

From: Huang Ying
Date: Thu Apr 23 2009 - 22:45:51 EST


This is used by PCIE AER error injection to fake an PCI AER interrupt.

Signed-off-by: Huang Ying <ying.huang@xxxxxxxxx>

---
drivers/pci/pcie/aer/aerdrv.c | 3 ++-
drivers/pci/pcie/aer/aerdrv.h | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)

--- a/drivers/pci/pcie/aer/aerdrv.h
+++ b/drivers/pci/pcie/aer/aerdrv.h
@@ -11,6 +11,7 @@
#include <linux/workqueue.h>
#include <linux/pcieport_if.h>
#include <linux/aer.h>
+#include <linux/interrupt.h>

#define AER_NONFATAL 0
#define AER_FATAL 1
@@ -117,6 +118,7 @@ extern void aer_delete_rootport(struct a
extern int aer_init(struct pcie_device *dev);
extern void aer_isr(struct work_struct *work);
extern void aer_print_error(struct pci_dev *dev, struct aer_err_info *info);
+extern irqreturn_t aer_irq(int irq, void *context);

#ifdef CONFIG_ACPI
extern int aer_osc_setup(struct pcie_device *pciedev);
--- a/drivers/pci/pcie/aer/aerdrv.c
+++ b/drivers/pci/pcie/aer/aerdrv.c
@@ -77,7 +77,7 @@ void pci_no_aer(void)
*
* Invoked when Root Port detects AER messages.
**/
-static irqreturn_t aer_irq(int irq, void *context)
+irqreturn_t aer_irq(int irq, void *context)
{
unsigned int status, id;
struct pcie_device *pdev = (struct pcie_device *)context;
@@ -126,6 +126,7 @@ static irqreturn_t aer_irq(int irq, void

return IRQ_HANDLED;
}
+EXPORT_SYMBOL_GPL(aer_irq);

/**
* aer_alloc_rpc - allocate Root Port data structure

Attachment: signature.asc
Description: This is a digitally signed message part